[INFO] fetching crate oxirs-wasm 0.2.4...
[INFO] testing oxirs-wasm-0.2.4 against 1.95.0 for beta-1.96-2
[INFO] extracting crate oxirs-wasm 0.2.4 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate oxirs-wasm 0.2.4
[INFO] finished tweaking crates.io crate oxirs-wasm 0.2.4
[INFO] tweaked toml for crates.io crate oxirs-wasm 0.2.4 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate oxirs-wasm 0.2.4 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate oxirs-wasm 0.2.4 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.65
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.115
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.115
[INFO] [stderr]   Downloaded wasm-bindgen-test v0.3.65
[INFO] [stderr]   Downloaded js-sys v0.3.92
[INFO] [stderr]   Downloaded wasm-bindgen-test-macro v0.3.65
[INFO] [stderr]   Downloaded wasm-bindgen-test-shared v0.2.115
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.115
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.115
[INFO] [stderr]   Downloaded web-sys v0.3.92
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b778836cb06febebbf63f03b0271659efe272d5689fc42f961445c4da6d05eb5
[INFO] running `Command { std: "docker" "start" "-a" "b778836cb06febebbf63f03b0271659efe272d5689fc42f961445c4da6d05eb5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b778836cb06febebbf63f03b0271659efe272d5689fc42f961445c4da6d05eb5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b778836cb06febebbf63f03b0271659efe272d5689fc42f961445c4da6d05eb5", kill_on_drop: false }`
[INFO] [stdout] b778836cb06febebbf63f03b0271659efe272d5689fc42f961445c4da6d05eb5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ac59e930ed4babb21103abbf724f6d61bfa6612cf5cfd81c51383980b913cbb1
[INFO] running `Command { std: "docker" "start" "-a" "ac59e930ed4babb21103abbf724f6d61bfa6612cf5cfd81c51383980b913cbb1", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.115
[INFO] [stderr]    Compiling bumpalo v3.20.2
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling wasm-bindgen v0.2.115
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling uuid v1.23.0
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.115
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.115
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling js-sys v0.3.92
[INFO] [stderr]    Compiling console_error_panic_hook v0.1.7
[INFO] [stderr]    Compiling tracing-wasm v0.2.1
[INFO] [stderr]    Compiling wasm-bindgen-futures v0.4.65
[INFO] [stderr]    Compiling web-sys v0.3.92
[INFO] [stderr]    Compiling oxirs-wasm v0.2.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 40.90s
[INFO] running `Command { std: "docker" "inspect" "ac59e930ed4babb21103abbf724f6d61bfa6612cf5cfd81c51383980b913cbb1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ac59e930ed4babb21103abbf724f6d61bfa6612cf5cfd81c51383980b913cbb1", kill_on_drop: false }`
[INFO] [stdout] ac59e930ed4babb21103abbf724f6d61bfa6612cf5cfd81c51383980b913cbb1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 184fb2eab0584f0e21afa28035fc0150021a24b5a25bc219909bd9b7f6e35fc0
[INFO] running `Command { std: "docker" "start" "-a" "184fb2eab0584f0e21afa28035fc0150021a24b5a25bc219909bd9b7f6e35fc0", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling wasm-bindgen-test-shared v0.2.115
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.65
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling uuid v1.23.0
[INFO] [stderr]    Compiling wasm-bindgen-test v0.3.65
[INFO] [stderr]    Compiling oxirs-wasm v0.2.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 23.70s
[INFO] running `Command { std: "docker" "inspect" "184fb2eab0584f0e21afa28035fc0150021a24b5a25bc219909bd9b7f6e35fc0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "184fb2eab0584f0e21afa28035fc0150021a24b5a25bc219909bd9b7f6e35fc0", kill_on_drop: false }`
[INFO] [stdout] 184fb2eab0584f0e21afa28035fc0150021a24b5a25bc219909bd9b7f6e35fc0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ec38097f2b2d6f65827ddb17376ee350ec9390b4a66eef0311e1834fd919ca74
[INFO] running `Command { std: "docker" "start" "-a" "ec38097f2b2d6f65827ddb17376ee350ec9390b4a66eef0311e1834fd919ca74", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s
[INFO] [stdout] 
[INFO] [stdout] running 858 tests
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/oxirs_wasm-5b17e78ed8757992)
[INFO] [stdout] test api::wasm_api::tests::test_load_turtle_with_semicolon ... ok
[INFO] [stdout] test api::wasm_api::tests::test_find_subjects_by_predicate_object ... ok
[INFO] [stdout] test api::wasm_api::tests::test_insert_and_delete ... ok
[INFO] [stdout] test api::wasm_api::tests::test_load_ntriples ... ok
[INFO] [stdout] test api::wasm_api::tests::test_find_by_predicate ... ok
[INFO] [stdout] test api::wasm_api::tests::test_query_pattern_no_match ... ok
[INFO] [stdout] test api::wasm_api::tests::test_query_pattern_all_wildcards ... ok
[INFO] [stdout] test api::wasm_api::tests::test_query_pattern_predicate_bound ... ok
[INFO] [stdout] test api::wasm_api::tests::test_load_turtle ... ok
[INFO] [stdout] test api::wasm_api::tests::test_query_pattern_predicate_object_bound ... ok
[INFO] [stdout] test api::wasm_api::tests::test_str_to_rdf_term_blank ... ok
[INFO] [stdout] test event_dispatcher::tests::test_clear_all_then_resubscribe_works ... ok
[INFO] [stdout] test api::wasm_api::tests::test_str_to_rdf_term_iri ... ok
[INFO] [stdout] test api::wasm_api::tests::test_query_pattern_subject_bound ... ok
[INFO] [stdout] test api::wasm_api::tests::test_find_by_subject ... ok
[INFO] [stdout] test api::wasm_api::tests::test_str_to_rdf_term_literal ... ok
[INFO] [stdout] test event_dispatcher::tests::test_connection_lost_event ... ok
[INFO] [stdout] test api::wasm_api::tests::test_streaming_multiple_chunks ... ok
[INFO] [stdout] test api::wasm_api::tests::test_str_to_rdf_term_typed_literal ... ok
[INFO] [stdout] test api::wasm_api::tests::test_streaming_ntriples ... ok
[INFO] [stdout] test api::wasm_api::tests::test_to_ntriples ... ok
[INFO] [stdout] test api::wasm_api::tests::test_triple_count_and_term_count ... ok
[INFO] [stdout] test event_dispatcher::tests::test_clear_all_removes_all_subscriptions ... ok
[INFO] [stdout] test api::wasm_api::tests::test_streaming_without_begin_fails ... ok
[INFO] [stdout] test event_dispatcher::tests::test_clear_all_then_dispatch_returns_zero ... ok
[INFO] [stdout] test event_dispatcher::tests::test_custom_event_subscribe_and_dispatch ... ok
[INFO] [stdout] test event_dispatcher::tests::test_custom_event_label ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_accumulates_call_count ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_calls_matching_handler ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_does_not_call_mismatched_handler ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_last_called_updated_on_each_call ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_mixed_types_only_calls_matching ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_to_all_returns_zero_when_empty ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_returns_zero_with_no_subscribers ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_to_all_updates_timestamp_for_all ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_updates_last_called_ms ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatcher_default_is_empty ... ok
[INFO] [stdout] test event_dispatcher::tests::test_event_source_field ... ok
[INFO] [stdout] test event_dispatcher::tests::test_handler_stats_returns_none_for_unknown_id ... ok
[INFO] [stdout] test event_dispatcher::tests::test_initial_stats_are_zero ... ok
[INFO] [stdout] test event_dispatcher::tests::test_standard_event_labels ... ok
[INFO] [stdout] test event_dispatcher::tests::test_subscribe_returns_unique_ids ... ok
[INFO] [stdout] test event_dispatcher::tests::test_subscribe_stores_handler_name ... ok
[INFO] [stdout] test event_dispatcher::tests::test_subscription_count_increments ... ok
[INFO] [stdout] test event_dispatcher::tests::test_subscriptions_for_type_zero_initially ... ok
[INFO] [stdout] test event_dispatcher::tests::test_unsubscribe_decrements_count ... ok
[INFO] [stdout] test event_dispatcher::tests::test_unsubscribe_removes_handler_from_type_count ... ok
[INFO] [stdout] test event_dispatcher::tests::test_subscriptions_for_type_counts_correctly ... ok
[INFO] [stdout] test geojson_support::tests::test_bounding_box_empty_collection ... ok
[INFO] [stdout] test event_dispatcher::tests::test_unsubscribe_then_no_dispatch ... ok
[INFO] [stdout] test geojson_support::tests::test_bounding_box_feature_with_null_geometry ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_to_all_calls_every_handler ... ok
[INFO] [stdout] test event_dispatcher::tests::test_multiple_dispatch_cycles_accumulate ... ok
[INFO] [stdout] test event_dispatcher::tests::test_unsubscribe_unknown_id_returns_false ... ok
[INFO] [stdout] test geojson_support::tests::test_bounding_box_linestring ... ok
[INFO] [stdout] test geojson_support::tests::test_bounding_box_multiple_points ... ok
[INFO] [stdout] test geojson_support::tests::test_feature_properties_included ... ok
[INFO] [stdout] test geojson_support::tests::test_geometry_collection_type_field ... ok
[INFO] [stdout] test geojson_support::tests::test_feature_type_field ... ok
[INFO] [stdout] test geojson_support::tests::test_bounding_box_single_point ... ok
[INFO] [stdout] test geojson_support::tests::test_feature_null_geometry ... ok
[INFO] [stdout] test geojson_support::tests::test_multilinestring_type_field ... ok
[INFO] [stdout] test geojson_support::tests::test_multipolygon_type_field ... ok
[INFO] [stdout] test geojson_support::tests::test_multipoint_type_field ... ok
[INFO] [stdout] test geojson_support::tests::test_parse_wkt_linestring_basic ... ok
[INFO] [stdout] test geojson_support::tests::test_linestring_type_field ... ok
[INFO] [stdout] test geojson_support::tests::test_parse_wkt_linestring_insufficient_points ... ok
[INFO] [stdout] test geojson_support::tests::test_parse_wkt_point_basic ... ok
[INFO] [stdout] test geojson_support::tests::test_parse_wkt_linestring_wrong_prefix ... ok
[INFO] [stdout] test geojson_support::tests::test_parse_wkt_point_invalid_returns_error ... ok
[INFO] [stdout] test geojson_support::tests::test_parse_wkt_point_negative_coords ... ok
[INFO] [stdout] test geojson_support::tests::test_parse_wkt_polygon_basic ... ok
[INFO] [stdout] test geojson_support::tests::test_parse_wkt_point_with_space ... ok
[INFO] [stdout] test event_dispatcher::tests::test_handler_stats_after_unsubscribe_returns_none ... ok
[INFO] [stdout] test geojson_support::tests::test_parse_wkt_polygon_wrong_prefix ... ok
[INFO] [stdout] test event_dispatcher::tests::test_unsubscribe_known_id_returns_true ... ok
[INFO] [stdout] test geojson_support::tests::test_point_type_field ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_multiple_handlers_same_type ... ok
[INFO] [stdout] test geojson_support::tests::test_polygon_type_field ... ok
[INFO] [stdout] test geojson_support::tests::test_point_coordinates ... ok
[INFO] [stdout] test event_dispatcher::tests::test_handler_stats_default ... ok
[INFO] [stdout] test geojson_support::tests::test_serialize_collection_produces_valid_json ... ok
[INFO] [stdout] test geojson_support::tests::test_sparql_results_multiple_rows ... ok
[INFO] [stdout] test geojson_support::tests::test_sparql_results_adds_other_bindings_as_properties ... ok
[INFO] [stdout] test geojson_support::tests::test_serializer_default ... ok
[INFO] [stdout] test geojson_support::tests::test_sparql_results_skips_invalid_coords ... ok
[INFO] [stdout] test geojson_support::tests::test_sparql_results_skips_missing_lon ... ok
[INFO] [stdout] test event_dispatcher::tests::test_custom_event_different_names_do_not_match ... ok
[INFO] [stdout] test graph_visualizer::tests::test_classify_node_blank ... ok
[INFO] [stdout] test geojson_support::tests::test_sparql_results_to_geojson_basic ... ok
[INFO] [stdout] test geojson_support::tests::test_sparql_results_to_geojson_with_label ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_to_all_accumulates_with_normal_dispatch ... ok
[INFO] [stdout] test geojson_support::tests::test_serialize_collection_with_features ... ok
[INFO] [stdout] test graph_visualizer::tests::test_cluster_by_namespace ... ok
[INFO] [stdout] test geojson_support::tests::test_sparql_results_skips_missing_lat ... ok
[INFO] [stdout] test graph_visualizer::tests::test_cluster_by_namespace_hash_fragment ... ok
[INFO] [stdout] test graph_visualizer::tests::test_classify_node_literal ... ok
[INFO] [stdout] test graph_visualizer::tests::test_classify_node_iri ... ok
[INFO] [stdout] test graph_visualizer::tests::test_cluster_by_type_no_types ... ok
[INFO] [stdout] test graph_visualizer::tests::test_cluster_by_type_with_types ... ok
[INFO] [stdout] test graph_visualizer::tests::test_color_for_type_values ... ok
[INFO] [stdout] test graph_visualizer::tests::test_edge_curvature_parallel_edges ... ok
[INFO] [stdout] test graph_visualizer::tests::test_extract_local_name ... ok
[INFO] [stdout] test graph_visualizer::tests::test_edge_data_labels ... ok
[INFO] [stdout] test graph_visualizer::tests::test_extract_namespace_hash ... ok
[INFO] [stdout] test graph_visualizer::tests::test_extract_namespace_blank ... ok
[INFO] [stdout] test graph_visualizer::tests::test_extract_namespace_slash ... ok
[INFO] [stdout] test graph_visualizer::tests::test_edge_curvature_single_edge ... ok
[INFO] [stdout] test graph_visualizer::tests::test_edge_data_from ... ok
[INFO] [stdout] test graph_visualizer::tests::test_graph_data_contains_node ... ok
[INFO] [stdout] test graph_visualizer::tests::test_graph_data_empty ... ok
[INFO] [stdout] test graph_visualizer::tests::test_graph_data_node_dedup ... ok
[INFO] [stdout] test graph_visualizer::tests::test_graph_data_add_triple ... ok
[INFO] [stdout] test graph_visualizer::tests::test_extract_namespace_literal ... ok
[INFO] [stdout] test graph_visualizer::tests::test_layout_config_defaults ... ok
[INFO] [stdout] test graph_visualizer::tests::test_layout_empty_graph ... ok
[INFO] [stdout] test graph_visualizer::tests::test_layout_single_edge ... ok
[INFO] [stdout] test graph_visualizer::tests::test_layout_all_nodes_positioned ... ok
[INFO] [stdout] test graph_visualizer::tests::test_stats_connected_components ... ok
[INFO] [stdout] test graph_visualizer::tests::test_layout_nodes_within_bounds ... ok
[INFO] [stdout] test graph_visualizer::tests::test_layout_different_iterations ... ok
[INFO] [stdout] test graph_visualizer::tests::test_stats_avg_degree ... ok
[INFO] [stdout] test graph_visualizer::tests::test_node_data_sorted ... ok
[INFO] [stdout] test graph_visualizer::tests::test_node_data_blank ... ok
[INFO] [stdout] test graph_visualizer::tests::test_node_data_literal ... ok
[INFO] [stdout] test graph_visualizer::tests::test_node_data_iri ... ok
[INFO] [stdout] test event_dispatcher::tests::test_dispatch_with_payload ... ok
[INFO] [stdout] test graph_visualizer::tests::test_graph_data_triples_accessor ... ok
[INFO] [stdout] test graph_visualizer::tests::test_stats_empty ... ok
[INFO] [stdout] test graph_visualizer::tests::test_stats_single_triple ... ok
[INFO] [stdout] test graph_visualizer::tests::test_subgraph_bfs_depth1 ... ok
[INFO] [stdout] test graph_visualizer::tests::test_subgraph_depth0 ... ok
[INFO] [stdout] test graph_visualizer::tests::test_viewport_default ... ok
[INFO] [stdout] test graph_visualizer::tests::test_stats_degree_distribution ... ok
[INFO] [stdout] test graph_visualizer::tests::test_viewport_to_screen ... ok
[INFO] [stdout] test graph_visualizer::tests::test_viewport_pan ... ok
[INFO] [stdout] test graph_visualizer::tests::test_viewport_zoom_clamp_max ... ok
[INFO] [stdout] test graph_visualizer::tests::test_viewport_reset ... ok
[INFO] [stdout] test graph_visualizer::tests::test_subgraph_full_depth ... ok
[INFO] [stdout] test graph_visualizer::tests::test_subgraph_dfs_depth1 ... ok
[INFO] [stdout] test graph_visualizer::tests::test_viewport_zoom_clamp_min ... ok
[INFO] [stdout] test graph_visualizer::tests::test_subgraph_nonexistent_focal ... ok
[INFO] [stdout] test inference::tests::test_idempotent ... ok
[INFO] [stdout] test inference::tests::test_sub_class_of_transitivity ... ok
[INFO] [stdout] test inference::tests::test_range_inference ... ok
[INFO] [stdout] test inference::tests::test_sub_class_of_chain_of_three ... ok
[INFO] [stdout] test inference::tests::test_sub_property_of_propagation ... ok
[INFO] [stdout] test inference::tests::test_no_self_loops_from_transitivity ... ok
[INFO] [stdout] test graph_visualizer::tests::test_viewport_zoom_in ... ok
[INFO] [stdout] test inference::tests::test_max_depth_config ... ok
[INFO] [stdout] test named_graph::tests::test_add_and_remove_named_graph ... ok
[INFO] [stdout] test inference::tests::test_type_propagation_chain ... ok
[INFO] [stdout] test inference::tests::test_type_propagation_through_sub_class ... ok
[INFO] [stdout] test inference::tests::test_sub_property_of_transitivity ... ok
[INFO] [stdout] test api::wasm_api::tests::test_memory_bytes ... ok
[INFO] [stdout] test inference::tests::test_domain_inference ... ok
[INFO] [stdout] test api::wasm_api::tests::test_str_to_rdf_term_lang_literal ... ok
[INFO] [stdout] test named_graph::tests::test_graph_pattern_named ... ok
[INFO] [stdout] test named_graph::tests::test_insert_and_query_named_graph ... ok
[INFO] [stdout] test named_graph::tests::test_to_nquads ... ok
[INFO] [stdout] test named_graph::tests::test_total_size ... ok
[INFO] [stdout] test namespace_manager::tests::test_add_prefix_empty_prefix_error ... ok
[INFO] [stdout] test namespace_manager::tests::test_add_prefix_update_existing ... ok
[INFO] [stdout] test named_graph::tests::test_isolation_between_graphs ... ok
[INFO] [stdout] test named_graph::tests::test_default_graph_cannot_be_removed ... ok
[INFO] [stdout] test named_graph::tests::test_query_all_graphs ... ok
[INFO] [stdout] test named_graph::tests::test_graph_pattern_all_graphs ... ok
[INFO] [stdout] test namespace_manager::tests::test_add_multiple_prefixes ... ok
[INFO] [stdout] test namespace_manager::tests::test_add_prefix_empty_namespace_error ... ok
[INFO] [stdout] test namespace_manager::tests::test_add_prefix_valid ... ok
[INFO] [stdout] test namespace_manager::tests::test_all_prefixes_empty ... ok
[INFO] [stdout] test namespace_manager::tests::test_all_prefixes_returns_all ... ok
[INFO] [stdout] test namespace_manager::tests::test_compact_known_iri ... ok
[INFO] [stdout] test namespace_manager::tests::test_compact_longest_prefix_wins ... ok
[INFO] [stdout] test namespace_manager::tests::test_compact_rdfs_iri ... ok
[INFO] [stdout] test namespace_manager::tests::test_expand_empty_local_name ... ok
[INFO] [stdout] test namespace_manager::tests::test_compact_unknown_namespace ... ok
[INFO] [stdout] test namespace_manager::tests::test_default_is_empty ... ok
[INFO] [stdout] test namespace_manager::tests::test_expand_no_colon_returns_none ... ok
[INFO] [stdout] test namespace_manager::tests::test_expand_unknown_prefix ... ok
[INFO] [stdout] test namespace_manager::tests::test_prefix_binding_equality ... ok
[INFO] [stdout] test namespace_manager::tests::test_prefix_binding_inequality ... ok
[INFO] [stdout] test namespace_manager::tests::test_expand_valid_curie ... ok
[INFO] [stdout] test namespace_manager::tests::test_prefix_count_after_add ... ok
[INFO] [stdout] test namespace_manager::tests::test_remove_prefix_decrements_count ... ok
[INFO] [stdout] test namespace_manager::tests::test_remove_prefix_nonexistent ... ok
[INFO] [stdout] test namespace_manager::tests::test_resolve_prefix_known ... ok
[INFO] [stdout] test namespace_manager::tests::test_resolve_prefix_unknown ... ok
[INFO] [stdout] test namespace_manager::tests::test_prefix_count_zero_initially ... ok
[INFO] [stdout] test namespace_manager::tests::test_standard_prefixes_count ... ok
[INFO] [stdout] test namespace_manager::tests::test_standard_prefixes_has_owl ... ok
[INFO] [stdout] test namespace_manager::tests::test_standard_prefixes_has_foaf ... ok
[INFO] [stdout] test namespace_manager::tests::test_standard_prefixes_has_rdf ... ok
[INFO] [stdout] test namespace_manager::tests::test_standard_prefixes_has_xsd ... ok
[INFO] [stdout] test namespace_manager::tests::test_to_turtle_prefixes_empty ... ok
[INFO] [stdout] test namespace_manager::tests::test_remove_prefix_existing ... ok
[INFO] [stdout] test namespace_manager::tests::test_standard_prefixes_has_rdfs ... ok
[INFO] [stdout] test namespace_manager::tests::test_standard_prefixes_has_schema ... ok
[INFO] [stdout] test namespace_manager::tests::test_to_turtle_prefixes_contains_at_prefix ... ok
[INFO] [stdout] test namespace_manager::tests::test_all_prefixes_correct_namespaces ... ok
[INFO] [stdout] test namespace_manager::tests::test_expand_rdf_type ... ok
[INFO] [stdout] test namespace_manager::tests::test_to_turtle_prefixes_format ... ok
[INFO] [stdout] test namespace_manager::tests::test_to_turtle_prefixes_sorted_alphabetically ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_ntriples_basic ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_nquads_with_graph ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_ntriples_blank_node ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_ntriples_lang_literal ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_ntriples_skip_comments ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_resolve_iri_absolute ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_turtle_finish_flush ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_turtle_prefix ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_resolve_iri_relative ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_ntriples_streaming_chunks ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_unescape_string ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_turtle_rdf_type ... ok
[INFO] [stdout] test parser::tests::test_parse_ntriples_compatibility ... ok
[INFO] [stdout] test namespace_manager::tests::test_to_turtle_prefixes_standard_contains_rdf ... ok
[INFO] [stdout] test parser::tests::test_parse_turtle_compatibility ... ok
[INFO] [stdout] test prefix_manager::tests::test_abbrev_result_to_str_full_iri ... ok
[INFO] [stdout] test prefix_manager::tests::test_abbrev_result_to_str_invalid ... ok
[INFO] [stdout] test prefix_manager::tests::test_abbrev_result_to_str_prefixed ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_turtle_comma ... ok
[INFO] [stdout] test prefix_manager::tests::test_abbreviate_empty_returns_invalid ... ok
[INFO] [stdout] test prefix_manager::tests::test_abbreviate_longest_prefix_match ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_ntriples_literal ... ok
[INFO] [stdout] test prefix_manager::tests::test_abbreviate_no_match_returns_full_iri ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_parsed_term_ntriples_format ... ok
[INFO] [stdout] test prefix_manager::tests::test_abbreviate_schema_class ... ok
[INFO] [stdout] test prefix_manager::tests::test_add_invalid_iri_error ... ok
[INFO] [stdout] test prefix_manager::tests::test_abbreviate_rdf_type ... ok
[INFO] [stdout] test prefix_manager::tests::test_add_duplicate_prefix_error ... ok
[INFO] [stdout] test prefix_manager::tests::test_add_prefix_ok ... ok
[INFO] [stdout] test prefix_manager::tests::test_clear_empties_manager ... ok
[INFO] [stdout] test prefix_manager::tests::test_add_or_update_replaces_existing ... ok
[INFO] [stdout] test prefix_manager::tests::test_contains_prefix ... ok
[INFO] [stdout] test prefix_manager::tests::test_contains_iri ... ok
[INFO] [stdout] test prefix_manager::tests::test_add_invalid_prefix_whitespace_error ... ok
[INFO] [stdout] test prefix_manager::tests::test_all_namespaces_insertion_order ... ok
[INFO] [stdout] test prefix_manager::tests::test_add_or_update_new_entry ... ok
[INFO] [stdout] test prefix_manager::tests::test_expand_rdf_type ... ok
[INFO] [stdout] test prefix_manager::tests::test_expand_rdfs_label ... ok
[INFO] [stdout] test prefix_manager::tests::test_get_iri_not_found ... ok
[INFO] [stdout] test prefix_manager::tests::test_get_prefix_not_found ... ok
[INFO] [stdout] test prefix_manager::tests::test_new_is_empty ... ok
[INFO] [stdout] test prefix_manager::tests::test_expand_unknown_prefix_error ... ok
[INFO] [stdout] test prefix_manager::tests::test_prefix_count_default ... ok
[INFO] [stdout] test prefix_manager::tests::test_prefix_error_display ... ok
[INFO] [stdout] test prefix_manager::tests::test_remove_non_existing_returns_none ... ok
[INFO] [stdout] test prefix_manager::tests::test_remove_existing ... ok
[INFO] [stdout] test prefix_manager::tests::test_sparql_declarations_all_defaults ... ok
[INFO] [stdout] test prefix_manager::tests::test_round_trip_abbreviate_expand ... ok
[INFO] [stdout] test prefix_manager::tests::test_get_iri_found ... ok
[INFO] [stdout] test prefix_manager::tests::test_sparql_declarations_format ... ok
[INFO] [stdout] test parser::streaming_parser::tests::test_turtle_semicolon ... ok
[INFO] [stdout] test prefix_manager::tests::test_get_prefix_found ... ok
[INFO] [stdout] test prefix_manager::tests::test_with_defaults_has_standard_prefixes ... ok
[INFO] [stdout] test prefix_manager::tests::test_expand_no_colon_error ... ok
[INFO] [stdout] test prefix_manager::tests::test_turtle_declarations_format ... ok
[INFO] [stdout] test query::aggregates::tests::test_avg_aggregate ... ok
[INFO] [stdout] test prefix_manager::tests::test_turtle_declarations_all_defaults ... ok
[INFO] [stdout] test query::aggregates::tests::test_count_by_subject ... ok
[INFO] [stdout] test prefix_manager::tests::test_with_defaults_correct_iris ... ok
[INFO] [stdout] test query::aggregates::tests::test_count_star_no_group_by ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_aggregate_with_limit ... ok
[INFO] [stdout] test query::aggregates::tests::test_count_distinct_var ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_having_count_gt_1 ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_multiple_aggregates_in_select ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_sample_returns_value ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_aggregate_with_order_by ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_sum_by_group ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_sum_no_group_by_single_value ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_avg_by_group ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_count_by_group ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_count_distinct_predicates ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_count_with_filter ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_group_concat_names_by_group ... ok
[INFO] [stdout] test query::aggregates::tests::test_extract_separator_double_quote ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_max_age ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_min_age ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_count_var ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_group_by_basic ... ok
[INFO] [stdout] test query::aggregates::tests::test_having_filter ... ok
[INFO] [stdout] test query::aggregates::tests::test_group_concat_aggregate ... ok
[INFO] [stdout] test query::aggregates::tests::test_max_aggregate_string ... ok
[INFO] [stdout] test query::aggregates::tests::test_format_number_integer ... ok
[INFO] [stdout] test query::aggregates::tests::test_min_aggregate_string ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_group_concat ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_count_empty_group_returns_zero_rows ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_max ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_avg ... ok
[INFO] [stdout] test query::aggregates::tests::test_extract_separator_single_quote ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_count_star ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_group_by_with_having ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_count_star_no_group_by ... ok
[INFO] [stdout] test query::aggregates::tests::test_max_aggregate_numeric ... ok
[INFO] [stdout] test query::aggregates::tests::test_min_aggregate_numeric ... ok
[INFO] [stdout] test query::aggregates::tests::test_e2e_group_by_two_variables ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_count_distinct ... ok
[INFO] [stdout] test query::aggregates::tests::test_sample_aggregate ... ok
[INFO] [stdout] test query::aggregates::tests::test_sum_aggregate ... ok
[INFO] [stdout] test query::aggregates::tests::test_format_number_float ... ok
[INFO] [stdout] test query::construct::tests::test_abbreviate_term_no_match ... ok
[INFO] [stdout] test query::construct::tests::test_config_custom ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_sample ... ok
[INFO] [stdout] test query::construct::tests::test_config_serialization_roundtrip ... ok
[INFO] [stdout] test query::construct::tests::test_construct_deduplication ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_min ... ok
[INFO] [stdout] test query::construct::tests::test_construct_empty_result ... ok
[INFO] [stdout] test query::aggregates::tests::test_parse_sum ... ok
[INFO] [stdout] test query::construct::tests::test_abbreviate_blank_node ... ok
[INFO] [stdout] test query::construct::tests::test_construct_blank_node_scoping ... ok
[INFO] [stdout] test query::construct::tests::test_construct_max_triples_limit ... ok
[INFO] [stdout] test query::construct::tests::test_construct_basic_execution ... ok
[INFO] [stdout] test query::construct::tests::test_construct_multi_template ... ok
[INFO] [stdout] test query::construct::tests::test_extract_literal_content_plain ... ok
[INFO] [stdout] test query::construct::tests::test_construct_with_offset ... ok
[INFO] [stdout] test query::construct::tests::test_extract_literal_content_typed ... ok
[INFO] [stdout] test query::construct::tests::test_extract_literal_content_lang ... ok
[INFO] [stdout] test query::construct::tests::test_parse_a_keyword ... ok
[INFO] [stdout] test query::construct::tests::test_config_default ... ok
[INFO] [stdout] test query::construct::tests::test_construct_no_deduplication ... ok
[INFO] [stdout] test query::construct::tests::test_construct_unbound_variable_skipped ... ok
[INFO] [stdout] test query::construct::tests::test_abbreviate_term_with_prefix ... ok
[INFO] [stdout] test query::construct::tests::test_parse_blank_node_term ... ok
[INFO] [stdout] test query::construct::tests::test_construct_where_shorthand_execution ... ok
[INFO] [stdout] test query::construct::tests::test_parse_construct_basic ... ok
[INFO] [stdout] test query::construct::tests::test_parse_construct_where_shorthand ... ok
[INFO] [stdout] test query::construct::tests::test_engine_default ... ok
[INFO] [stdout] test query::construct::tests::test_construct_stats_tracking ... ok
[INFO] [stdout] test query::construct::tests::test_construct_with_limit ... ok
[INFO] [stdout] test query::construct::tests::test_parse_construct_with_limit ... ok
[INFO] [stdout] test query::construct::tests::test_parse_plain_literal ... ok
[INFO] [stdout] test query::construct::tests::test_parse_dollar_variable_term ... ok
[INFO] [stdout] test query::construct::tests::test_parse_iri_term ... ok
[INFO] [stdout] test query::construct::tests::test_parse_construct_with_prefix ... ok
[INFO] [stdout] test query::construct::tests::test_parse_prefixes_empty ... ok
[INFO] [stdout] test query::construct::tests::test_parse_construct_with_offset ... ok
[INFO] [stdout] test query::construct::tests::test_parse_prefixes_single ... ok
[INFO] [stdout] test query::construct::tests::test_parse_prefixes_multiple ... ok
[INFO] [stdout] test query::construct::tests::test_parse_template_multiple_triples ... ok
[INFO] [stdout] test query::construct::tests::test_parse_lang_literal ... ok
[INFO] [stdout] test query::construct::tests::test_parse_template_with_blank_nodes ... ok
[INFO] [stdout] test query::construct::tests::test_parse_template_empty_body ... ok
[INFO] [stdout] test query::construct::tests::test_parse_template_single_triple ... ok
[INFO] [stdout] test query::construct::tests::test_parse_typed_literal ... ok
[INFO] [stdout] test query::construct::tests::test_parse_variable_term ... ok
[INFO] [stdout] test query::construct::tests::test_serialize_turtle_rdf_type_abbreviation ... ok
[INFO] [stdout] test query::construct::tests::test_serialize_construct_all_formats ... ok
[INFO] [stdout] test query::construct::tests::test_serialize_turtle_with_prefixes ... ok
[INFO] [stdout] test query::construct::tests::test_split_template_multiple ... ok
[INFO] [stdout] test query::construct::tests::test_serialize_jsonld ... ok
[INFO] [stdout] test query::construct::tests::test_serialize_turtle_subject_grouping ... ok
[INFO] [stdout] test query::construct::tests::test_split_template_quoted_dot ... ok
[INFO] [stdout] test query::construct::tests::test_serialize_ntriples ... ok
[INFO] [stdout] test query::construct::tests::test_split_template_single ... ok
[INFO] [stdout] test query::construct::tests::test_stats_serialization_roundtrip ... ok
[INFO] [stdout] test query::filter::tests::test_extract_datatype ... ok
[INFO] [stdout] test query::construct::tests::test_tokenize_template_basic ... ok
[INFO] [stdout] test query::filter::tests::test_filter_and ... ok
[INFO] [stdout] test query::filter::tests::test_filter_bound_true ... ok
[INFO] [stdout] test query::construct::tests::test_serialize_ntriples_blank_nodes ... ok
[INFO] [stdout] test query::filter::tests::test_filter_is_blank ... ok
[INFO] [stdout] test query::filter::tests::test_filter_contains ... ok
[INFO] [stdout] test query::filter::tests::test_filter_is_iri ... ok
[INFO] [stdout] test query::construct::tests::test_tokenize_template_with_semicolon ... ok
[INFO] [stdout] test query::filter::tests::test_filter_not ... ok
[INFO] [stdout] test query::filter::tests::test_filter_or ... ok
[INFO] [stdout] test query::filter::tests::test_filter_strstarts ... ok
[INFO] [stdout] test query::filter::tests::test_filter_strends ... ok
[INFO] [stdout] test query::filter::tests::test_parse_filter_bound ... ok
[INFO] [stdout] test query::filter::tests::test_parse_filter_contains ... ok
[INFO] [stdout] test query::filter::tests::test_filter_datatype ... ok
[INFO] [stdout] test query::filter::tests::test_filter_is_literal ... ok
[INFO] [stdout] test query::filter::tests::test_filter_lang_equals ... ok
[INFO] [stdout] test query::filter::tests::test_parse_filter_logical_and ... ok
[INFO] [stdout] test query::filter::tests::test_parse_filter_logical_or ... ok
[INFO] [stdout] test query::filter::tests::test_parse_filter_regex_flags ... ok
[INFO] [stdout] test query::filter::tests::test_parse_filter_strstarts ... ok
[INFO] [stdout] test query::filter::tests::test_regex_match_digit ... ok
[INFO] [stdout] test query::filter::tests::test_regex_match_dot_star ... ok
[INFO] [stdout] test query::jsonld::tests::test_compact_iri_no_match ... ok
[INFO] [stdout] test query::jsonld::tests::test_compact_iri_standard_prefix ... ok
[INFO] [stdout] test query::filter::tests::test_parse_filter_not ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_blank_node ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_contains_subject_ids ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_lang_literal ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_iri_object ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_literal_value ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_empty_store ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_multiple_objects_same_predicate ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_contains_graph ... ok
[INFO] [stdout] test query::filter::tests::test_exists_not_exists_eval_with_closure ... ok
[INFO] [stdout] test query::filter::tests::test_regex_match_simple ... ok
[INFO] [stdout] test query::jsonld::tests::test_escape_json_string ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_typed_literal ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_contains_context ... ok
[INFO] [stdout] test query::property_path::tests::test_cycle_detection_zero_or_more ... ok
[INFO] [stdout] test query::property_path::tests::test_cycle_detection_one_or_more ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_valid_json_structure ... ok
[INFO] [stdout] test query::property_path::tests::test_evaluate_reverse ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_with_rdf_type ... ok
[INFO] [stdout] test query::property_path::tests::test_inverse_path ... ok
[INFO] [stdout] test query::property_path::tests::test_parse_zero_or_more ... ok
[INFO] [stdout] test query::property_path::tests::test_one_or_more_path ... ok
[INFO] [stdout] test query::jsonld::tests::test_jsonld_with_custom_prefixes ... ok
[INFO] [stdout] test query::property_path::tests::test_negated_set ... ok
[INFO] [stdout] test query::property_path::tests::test_parse_alternative ... ok
[INFO] [stdout] test query::property_path::tests::test_alternative_path ... ok
[INFO] [stdout] test query::property_path::tests::test_parse_simple_iri ... ok
[INFO] [stdout] test query::property_path::tests::test_parse_inverse ... ok
[INFO] [stdout] test query::property_path::tests::test_sequence_three_hops ... ok
[INFO] [stdout] test query::property_path::tests::test_sequence_path ... ok
[INFO] [stdout] test query::property_path::tests::test_zero_or_more_path ... ok
[INFO] [stdout] test query::property_path::tests::test_simple_iri_path ... ok
[INFO] [stdout] test query::subquery::tests::test_join_compatible_bindings ... ok
[INFO] [stdout] test query::property_path::tests::test_zero_or_one_path ... ok
[INFO] [stdout] test query::subquery::tests::test_join_conflicting_bindings ... ok
[INFO] [stdout] test query::subquery::tests::test_join_disjoint_bindings ... ok
[INFO] [stdout] test query::subquery::tests::test_end_to_end_subquery_via_execute_select ... ok
[INFO] [stdout] test query::subquery::tests::test_inline_subquery_with_limit ... ok
[INFO] [stdout] test query::subquery::tests::test_join_empty_outer ... ok
[INFO] [stdout] test query::subquery::tests::test_join_empty_subquery ... ok
[INFO] [stdout] test query::subquery::tests::test_non_subquery_empty ... ok
[INFO] [stdout] test query::subquery::tests::test_inline_subquery_empty_inner_results_in_empty_outer ... ok
[INFO] [stdout] test query::subquery::tests::test_join_multiple_outer_multiple_sub ... ok
[INFO] [stdout] test query::property_path::tests::test_parse_one_or_more ... ok
[INFO] [stdout] test query::property_path::tests::test_parse_zero_or_one ... ok
[INFO] [stdout] test query::property_path::tests::test_parse_sequence ... ok
[INFO] [stdout] test query::subquery::tests::test_inline_subquery_filter_in_inner ... ok
[INFO] [stdout] test query::subquery::tests::test_detect_subquery ... ok
[INFO] [stdout] test query::subquery::tests::test_non_subquery_triple ... ok
[INFO] [stdout] test query::subquery::tests::test_subquery_evaluator_empty_result ... ok
[INFO] [stdout] test query::subquery::tests::test_subquery_evaluator_basic ... ok
[INFO] [stdout] test query::subquery::tests::test_try_merge_no_shared_vars ... ok
[INFO] [stdout] test query::subquery::tests::test_subquery_evaluator_order_by ... ok
[INFO] [stdout] test query::subquery::tests::test_try_merge_shared_different_value_returns_none ... ok
[INFO] [stdout] test query::tests::test_evaluate_ask ... ok
[INFO] [stdout] test query::tests::test_evaluate_select ... ok
[INFO] [stdout] test query::subquery::tests::test_inline_subquery_in_where_clause ... ok
[INFO] [stdout] test query::subquery::tests::test_detect_subquery_case_insensitive ... ok
[INFO] [stdout] test query::subquery::tests::test_try_merge_shared_same_value ... ok
[INFO] [stdout] test query::tests::test_filter_bound ... ok
[INFO] [stdout] test query::subquery::tests::test_subquery_evaluator_with_filter ... ok
[INFO] [stdout] test query::subquery::tests::test_subquery_evaluator_with_distinct ... ok
[INFO] [stdout] test query::tests::test_filter_contains ... ok
[INFO] [stdout] test query::tests::test_filter_exists_basic ... ok
[INFO] [stdout] test query::tests::test_aggregate_select_clause_parsing ... ok
[INFO] [stdout] test query::tests::test_filter_greater_than ... ok
[INFO] [stdout] test query::tests::test_construct ... ok
[INFO] [stdout] test query::tests::test_distinct ... ok
[INFO] [stdout] test query::tests::test_filter_logical_and ... ok
[INFO] [stdout] test query::tests::test_filter_not_exists_basic ... ok
[INFO] [stdout] test query::tests::test_filter_isliteral ... ok
[INFO] [stdout] test query::tests::test_filter_regex ... ok
[INFO] [stdout] test query::tests::test_filter_regex_case_insensitive ... ok
[INFO] [stdout] test query::tests::test_limit ... ok
[INFO] [stdout] test query::tests::test_jsonld_serialize_basic ... ok
[INFO] [stdout] test query::tests::test_offset ... ok
[INFO] [stdout] test query::tests::test_filter_strstarts ... ok
[INFO] [stdout] test query::tests::test_jsonld_typed_literal ... ok
[INFO] [stdout] test query::tests::test_jsonld_lang_tagged_literal ... ok
[INFO] [stdout] test query::tests::test_filter_lang ... ok
[INFO] [stdout] test query::tests::test_optional_multiple_subjects ... ok
[INFO] [stdout] test query::tests::test_filter_isiri ... ok
[INFO] [stdout] test query::tests::test_optional_nested ... ok
[INFO] [stdout] test query::tests::test_parse_select ... ok
[INFO] [stdout] test query::tests::test_select_distinct_not_stripped_from_aggregate ... ok
[INFO] [stdout] test query::tests::test_parse_select_clause_wildcard ... ok
[INFO] [stdout] test query::tests::test_union_basic ... ok
[INFO] [stdout] test query::tests::test_property_path_alternative ... ok
[INFO] [stdout] test query::tests::test_optional_with_match ... ok
[INFO] [stdout] test query::tests::test_union_disjoint_sets ... ok
[INFO] [stdout] test query::tests::test_parse_select_clause_plain_vars ... ok
[INFO] [stdout] test query::tests::test_property_path_sequence_query ... ok
[INFO] [stdout] test query::tests::test_order_by_asc ... ok
[INFO] [stdout] test query::tests::test_property_path_transitive_closure ... ok
[INFO] [stdout] test query::tests::test_property_path_zero_or_more_includes_self ... ok
[INFO] [stdout] test query_validator::tests::test_balanced_braces_empty ... ok
[INFO] [stdout] test query::tests::test_values_single_var ... ok
[INFO] [stdout] test query_validator::tests::test_balanced_braces_simple ... ok
[INFO] [stdout] test query_validator::tests::test_check_prefixes_no_prefixes_used ... ok
[INFO] [stdout] test query_validator::tests::test_check_prefixes_declared_used ... ok
[INFO] [stdout] test query_validator::tests::test_braces_in_string_ignored ... ok
[INFO] [stdout] test query_validator::tests::test_check_variables_unbound_in_where ... ok
[INFO] [stdout] test query_validator::tests::test_detect_ask ... ok
[INFO] [stdout] test query::tests::test_optional_without_match ... ok
[INFO] [stdout] test query_validator::tests::test_detect_case_insensitive ... ok
[INFO] [stdout] test query_validator::tests::test_detect_construct ... ok
[INFO] [stdout] test query_validator::tests::test_detect_delete_as_update ... ok
[INFO] [stdout] test query_validator::tests::test_check_variables_non_select_no_issues ... ok
[INFO] [stdout] test query_validator::tests::test_detect_describe ... ok
[INFO] [stdout] test query::tests::test_union_empty_branch ... ok
[INFO] [stdout] test query_validator::tests::test_detect_insert_as_update ... ok
[INFO] [stdout] test query_validator::tests::test_check_variables_wildcard ... ok
[INFO] [stdout] test query::tests::test_union_no_duplicate_suppression ... ok
[INFO] [stdout] test query_validator::tests::test_balanced_braces_nested ... ok
[INFO] [stdout] test query_validator::tests::test_check_prefixes_undeclared_prefix ... ok
[INFO] [stdout] test query_validator::tests::test_is_valid_iri_ftp ... ok
[INFO] [stdout] test query_validator::tests::test_check_variables_bound ... ok
[INFO] [stdout] test query_validator::tests::test_is_valid_iri_invalid ... ok
[INFO] [stdout] test query_validator::tests::test_query_issue_info_severity ... ok
[INFO] [stdout] test query_validator::tests::test_is_valid_iri_urn ... ok
[INFO] [stdout] test query_validator::tests::test_query_issue_with_location ... ok
[INFO] [stdout] test query_validator::tests::test_query_type_as_str ... ok
[INFO] [stdout] test query_validator::tests::test_detect_select ... ok
[INFO] [stdout] test query_validator::tests::test_strip_comments_full_line ... ok
[INFO] [stdout] test query_validator::tests::test_strip_comments_no_comments ... ok
[INFO] [stdout] test query_validator::tests::test_detect_unknown_type ... ok
[INFO] [stdout] test query_validator::tests::test_strip_comments_basic ... ok
[INFO] [stdout] test query_validator::tests::test_extract_prefixes_multiple ... ok
[INFO] [stdout] test query_validator::tests::test_strip_comments_preserves_hash_in_literal ... ok
[INFO] [stdout] test query_validator::tests::test_extract_prefixes_none ... ok
[INFO] [stdout] test query_validator::tests::test_extract_prefixes_single ... ok
[INFO] [stdout] test query_validator::tests::test_extract_variables_basic ... ok
[INFO] [stdout] test query_validator::tests::test_extract_variables_deduped ... ok
[INFO] [stdout] test query_validator::tests::test_unbalanced_braces_extra_close ... ok
[INFO] [stdout] test query_validator::tests::test_unbalanced_braces_extra_open ... ok
[INFO] [stdout] test query_validator::tests::test_validate_ask_query ... ok
[INFO] [stdout] test query_validator::tests::test_validate_construct_query ... ok
[INFO] [stdout] test query_validator::tests::test_validate_level_syntax_only ... ok
[INFO] [stdout] test query_validator::tests::test_validate_unbalanced_braces_error ... ok
[INFO] [stdout] test query_validator::tests::test_extract_variables_empty ... ok
[INFO] [stdout] test query_validator::tests::test_validate_level_semantic_catches_prefix ... ok
[INFO] [stdout] test query_validator::tests::test_is_valid_iri_http ... ok
[INFO] [stdout] test results_csv::tests::test_csv_blank_node ... ok
[INFO] [stdout] test results_csv::tests::test_csv_crlf_line_endings ... ok
[INFO] [stdout] test results_csv::tests::test_csv_escaping_comma ... ok
[INFO] [stdout] test results_csv::tests::test_csv_escaping_quote ... ok
[INFO] [stdout] test results_csv::tests::test_csv_header ... ok
[INFO] [stdout] test results_csv::tests::test_csv_no_header ... ok
[INFO] [stdout] test results_csv::tests::test_csv_unbound ... ok
[INFO] [stdout] test results_csv::tests::test_csv_iri_values ... ok
[INFO] [stdout] test query_validator::tests::test_validate_valid_select ... ok
[INFO] [stdout] test query_validator::tests::test_validation_report_no_errors_valid ... ok
[INFO] [stdout] test query_validator::tests::test_validation_report_error_invalid ... ok
[INFO] [stdout] test results_csv::tests::test_csv_basic ... ok
[INFO] [stdout] test results_csv::tests::test_csv_empty_results ... ok
[INFO] [stdout] test query_validator::tests::test_validation_report_warning_still_valid ... ok
[INFO] [stdout] test query_validator::tests::test_validate_unknown_type_warning ... ok
[INFO] [stdout] test results_csv::tests::test_default_config ... ok
[INFO] [stdout] test results_csv::tests::test_rdf_term_blank_node ... ok
[INFO] [stdout] test results_csv::tests::test_result_set_dimensions ... ok
[INFO] [stdout] test results_csv::tests::test_rdf_term_typed_literal ... ok
[INFO] [stdout] test results_csv::tests::test_rdf_term_literal ... ok
[INFO] [stdout] test results_csv::tests::test_result_set_empty ... ok
[INFO] [stdout] test results_csv::tests::test_serialize_row_tsv ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_basic ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_empty_results ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_blank_node ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_escaping_newline ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_typed_literal ... ok
[INFO] [stdout] test results_csv::tests::test_serialize_header_csv ... ok
[INFO] [stdout] test sparql_executor::tests::test_add_triple_increments_count ... ok
[INFO] [stdout] test results_csv::tests::test_serialize_header_tsv ... ok
[INFO] [stdout] test sparql_executor::tests::test_add_triples_batch ... ok
[INFO] [stdout] test sparql_executor::tests::test_ask_false_when_no_match ... ok
[INFO] [stdout] test results_csv::tests::test_rdf_term_lang_literal ... ok
[INFO] [stdout] test results_csv::tests::test_rdf_term_iri ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_escaping_tab ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_header_prefixed ... ok
[INFO] [stdout] test sparql_executor::tests::test_ask_true_when_match ... ok
[INFO] [stdout] test sparql_executor::tests::test_ask_with_variable ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_iri_bracketed ... ok
[INFO] [stdout] test results_csv::tests::test_serialize_row_csv ... ok
[INFO] [stdout] test sparql_executor::tests::test_clear_removes_all ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_lang_literal ... ok
[INFO] [stdout] test sparql_executor::tests::test_construct_with_template ... ok
[INFO] [stdout] test sparql_executor::tests::test_describe_target_returns_subject_triples ... ok
[INFO] [stdout] test sparql_executor::tests::test_describe_unknown_target_returns_empty ... ok
[INFO] [stdout] test sparql_executor::tests::test_construct_no_match_returns_empty_triples ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_no_bracket_iris ... ok
[INFO] [stdout] test sparql_executor::tests::test_detect_ask ... ok
[INFO] [stdout] test results_csv::tests::test_tsv_literal_quoted ... ok
[INFO] [stdout] test sparql_executor::tests::test_detect_describe ... ok
[INFO] [stdout] test sparql_executor::tests::test_detect_select ... ok
[INFO] [stdout] test sparql_executor::tests::test_format_json_describe ... ok
[INFO] [stdout] test sparql_executor::tests::test_format_table_empty_result ... ok
[INFO] [stdout] test sparql_executor::tests::test_format_json_select ... ok
[INFO] [stdout] test sparql_executor::tests::test_detect_unknown ... ok
[INFO] [stdout] test sparql_executor::tests::test_new_executor_is_empty ... ok
[INFO] [stdout] test sparql_executor::tests::test_format_table_select_result ... ok
[INFO] [stdout] test sparql_executor::tests::test_escape_json_quotes ... ok
[INFO] [stdout] test sparql_executor::tests::test_executor_error_display ... ok
[INFO] [stdout] test sparql_executor::tests::test_detect_construct ... ok
[INFO] [stdout] test sparql_executor::tests::test_executor_error_unbound_var ... ok
[INFO] [stdout] test sparql_executor::tests::test_filter_regex_stub_contains ... ok
[INFO] [stdout] test sparql_executor::tests::test_format_json_ask_false ... ok
[INFO] [stdout] test sparql_executor::tests::test_format_json_ask_true ... ok
[INFO] [stdout] test sparql_executor::tests::test_filter_string_equals_match ... ok
[INFO] [stdout] test sparql_executor::tests::test_select_all_subjects ... ok
[INFO] [stdout] test sparql_executor::tests::test_format_json_construct ... ok
[INFO] [stdout] test sparql_executor::tests::test_select_no_match_returns_empty ... ok
[INFO] [stdout] test sparql_executor::tests::test_select_returns_variables ... ok
[INFO] [stdout] test sparql_executor::tests::test_triple_literal_value ... ok
[INFO] [stdout] test sparql_executor::tests::test_strip_literal_simple ... ok
[INFO] [stdout] test sparql_executor::tests::test_select_with_concrete_predicate_and_object ... ok
[INFO] [stdout] test sparql_executor::tests::test_triple_literal_value_none_for_iri ... ok
[INFO] [stdout] test sparql_executor::tests::test_triple_object_is_blank ... ok
[INFO] [stdout] test sparql_executor::tests::test_triple_object_is_literal ... ok
[INFO] [stdout] test sparql_executor::tests::test_select_star_returns_all_bindings ... ok
[INFO] [stdout] test sparql_executor::tests::test_unknown_query_returns_error ... ok
[INFO] [stdout] test sparql_formatter::tests::test_count_triples_multiple ... ok
[INFO] [stdout] test sparql_executor::tests::test_triple_object_is_iri ... ok
[INFO] [stdout] test sparql_executor::tests::test_two_pattern_join ... ok
[INFO] [stdout] test sparql_formatter::tests::test_count_triples_none ... ok
[INFO] [stdout] test sparql_executor::tests::test_strip_literal_no_quotes ... ok
[INFO] [stdout] test sparql_formatter::tests::test_count_triples_single ... ok
[INFO] [stdout] test sparql_formatter::tests::test_extract_prefixes_empty ... ok
[INFO] [stdout] test sparql_formatter::tests::test_extract_prefixes_order ... ok
[INFO] [stdout] test sparql_formatter::tests::test_extract_prefixes_multiple ... ok
[INFO] [stdout] test sparql_formatter::tests::test_has_keyword_ask ... ok
[INFO] [stdout] test sparql_formatter::tests::test_extract_prefixes_single ... ok
[INFO] [stdout] test sparql_formatter::tests::test_extract_variables_basic ... ok
[INFO] [stdout] test sparql_formatter::tests::test_has_keyword_missing ... ok
[INFO] [stdout] test sparql_formatter::tests::test_extract_variables_empty ... ok
[INFO] [stdout] test sparql_formatter::tests::test_extract_variables_deduplicated ... ok
[INFO] [stdout] test sparql_formatter::tests::test_has_keyword_filter ... ok
[INFO] [stdout] test sparql_formatter::tests::test_extract_variables_sorted ... ok
[INFO] [stdout] test sparql_formatter::tests::test_format_uppercase_keywords ... ok
[INFO] [stdout] test sparql_formatter::tests::test_format_contains_variable ... ok
[INFO] [stdout] test sparql_formatter::tests::test_format_lowercase_keywords ... ok
[INFO] [stdout] test sparql_formatter::tests::test_format_indentation_increases_in_braces ... ok
[INFO] [stdout] test sparql_formatter::tests::test_format_prefix_emitted ... ok
[INFO] [stdout] test sparql_formatter::tests::test_has_keyword_optional ... ok
[INFO] [stdout] test sparql_formatter::tests::test_format_no_double_whitespace ... ok
[INFO] [stdout] test sparql_formatter::tests::test_format_default_options ... ok
[INFO] [stdout] test sparql_formatter::tests::test_minify_empty_string ... ok
[INFO] [stdout] test sparql_formatter::tests::test_has_keyword_select ... ok
[INFO] [stdout] test sparql_formatter::tests::test_minify_removes_comments ... ok
[INFO] [stdout] test sparql_formatter::tests::test_minify_collapses_whitespace ... ok
[INFO] [stdout] test sparql_formatter::tests::test_token_debug ... ok
[INFO] [stdout] test sparql_formatter::tests::test_minify_triple_quote_literal ... ok
[INFO] [stdout] test sparql_formatter::tests::test_tokenize_comment ... ok
[INFO] [stdout] test sparql_formatter::tests::test_tokenize_prefix ... ok
[INFO] [stdout] test sparql_formatter::tests::test_token_clone ... ok
[INFO] [stdout] test sparql_formatter::tests::test_minify_preserves_keywords ... ok
[INFO] [stdout] test sparql_formatter::tests::test_tokenize_iri ... ok
[INFO] [stdout] test sparql_formatter::tests::test_tokenize_punctuation ... ok
[INFO] [stdout] test sparql_formatter::tests::test_tokenize_variable ... ok
[INFO] [stdout] test sparql_formatter::tests::test_tokenize_keyword_select ... ok
[INFO] [stdout] test storage_adapter::tests::test_backend_accessor ... ok
[INFO] [stdout] test sparql_formatter::tests::test_tokenize_literal ... ok
[INFO] [stdout] test storage_adapter::tests::test_backend_local_storage_simulated ... ok
[INFO] [stdout] test storage_adapter::tests::test_backend_session_storage_simulated ... ok
[INFO] [stdout] test sparql_formatter::tests::test_tokenize_dollar_variable ... ok
[INFO] [stdout] test storage_adapter::tests::test_delete_removes_key_from_store ... ok
[INFO] [stdout] test storage_adapter::tests::test_clear_namespace_does_not_affect_other_adapter ... ok
[INFO] [stdout] test storage_adapter::tests::test_entry_clone ... ok
[INFO] [stdout] test storage_adapter::tests::test_entry_expires_at_correct_time ... ok
[INFO] [stdout] test storage_adapter::tests::test_entry_no_ttl_never_expires ... ok
[INFO] [stdout] test storage_adapter::tests::test_clear_namespace_idempotent_on_empty ... ok
[INFO] [stdout] test storage_adapter::tests::test_error_expired_display ... ok
[INFO] [stdout] test storage_adapter::tests::test_error_key_not_found_display ... ok
[INFO] [stdout] test storage_adapter::tests::test_error_quota_exceeded_display ... ok
[INFO] [stdout] test storage_adapter::tests::test_get_entry_returns_none_for_missing ... ok
[INFO] [stdout] test storage_adapter::tests::test_delete_existing_key_returns_true ... ok
[INFO] [stdout] test storage_adapter::tests::test_delete_missing_key_returns_false ... ok
[INFO] [stdout] test storage_adapter::tests::test_get_missing_key_returns_not_found ... ok
[INFO] [stdout] test storage_adapter::tests::test_key_count_after_operations ... ok
[INFO] [stdout] test storage_adapter::tests::test_key_count_empty ... ok
[INFO] [stdout] test storage_adapter::tests::test_list_keys_empty_prefix_returns_all ... ok
[INFO] [stdout] test storage_adapter::tests::test_list_keys_prefix_filter ... ok
[INFO] [stdout] test storage_adapter::tests::test_list_keys_no_match_returns_empty ... ok
[INFO] [stdout] test storage_adapter::tests::test_list_keys_sorted_alphabetically ... ok
[INFO] [stdout] test storage_adapter::tests::test_namespace_accessor ... ok
[INFO] [stdout] test storage_adapter::tests::test_namespace_isolation_same_key_different_adapters ... ok
[INFO] [stdout] test storage_adapter::tests::test_purge_expired_idempotent ... ok
[INFO] [stdout] test storage_adapter::tests::test_purge_expired_removes_all_when_all_stale ... ok
[INFO] [stdout] test storage_adapter::tests::test_clear_namespace_removes_all_keys ... ok
[INFO] [stdout] test storage_adapter::tests::test_error_serialize_display ... ok
[INFO] [stdout] test storage_adapter::tests::test_get_entry_returns_entry_with_ttl ... ok
[INFO] [stdout] test storage_adapter::tests::test_set_and_get ... ok
[INFO] [stdout] test storage_adapter::tests::test_set_multiple_keys ... ok
[INFO] [stdout] test storage_adapter::tests::test_purge_expired_removes_only_stale_entries ... ok
[INFO] [stdout] test storage_adapter::tests::test_set_overwrites_existing ... ok
[INFO] [stdout] test storage_adapter::tests::test_set_with_ttl_at_boundary_not_expired ... ok
[INFO] [stdout] test storage_adapter::tests::test_set_with_ttl_after_expiry ... ok
[INFO] [stdout] test storage_adapter::tests::test_purge_expired_returns_zero_when_none_expired ... ok
[INFO] [stdout] test storage_adapter::tests::test_storage_size_bytes_decreases_after_delete ... ok
[INFO] [stdout] test storage_adapter::tests::test_storage_size_bytes_empty ... ok
[INFO] [stdout] test storage_adapter::tests::test_set_with_ttl_before_expiry ... ok
[INFO] [stdout] test store::compact_store::tests::test_delete ... ok
[INFO] [stdout] test store::compact_store::tests::test_dictionary_intern ... ok
[INFO] [stdout] test store::compact_store::tests::test_find_by_predicate ... ok
[INFO] [stdout] test store::compact_store::tests::test_dictionary_lookup ... ok
[INFO] [stdout] test store::compact_store::tests::test_find_by_predicate_object ... ok
[INFO] [stdout] test store::compact_store::tests::test_find_by_subject ... ok
[INFO] [stdout] test store::compact_store::tests::test_insert_duplicate ... ok
[INFO] [stdout] test store::compact_store::tests::test_insert_and_count ... ok
[INFO] [stdout] test storage_adapter::tests::test_storage_size_bytes_accumulates ... ok
[INFO] [stdout] test store::compact_store::tests::test_memory_estimate ... ok
[INFO] [stdout] test store::compact_store::tests::test_bulk_insert ... ok
[INFO] [stdout] test store::compact_store::tests::test_contains ... ok
[INFO] [stdout] test storage_adapter::tests::test_set_with_ttl_zero_expires_immediately ... ok
[INFO] [stdout] test store::compact_store::tests::test_rdf_term_display ... ok
[INFO] [stdout] test store::compact_store::tests::test_rdf_term_kinds ... ok
[INFO] [stdout] test store::tests::test_export ... ok
[INFO] [stdout] test store::tests::test_store_operations ... ok
[INFO] [stdout] test streaming_parser::tests::test_bytes_processed_accumulates ... ok
[INFO] [stdout] test streaming_parser::tests::test_error_stat_increments ... ok
[INFO] [stdout] test streaming_parser::tests::test_feed_blank_lines_ignored ... ok
[INFO] [stdout] test streaming_parser::tests::test_feed_comment_lines_ignored ... ok
[INFO] [stdout] test streaming_parser::tests::test_feed_empty_chunk_no_events ... ok
[INFO] [stdout] test streaming_parser::tests::test_base_iri_config_bytes_counted ... ok
[INFO] [stdout] test streaming_parser::tests::test_feed_multiple_lines_in_one_chunk ... ok
[INFO] [stdout] test streaming_parser::tests::test_bytes_processed_tracks_correctly ... ok
[INFO] [stdout] test streaming_parser::tests::test_feed_ntriples_stats_triples ... ok
[INFO] [stdout] test streaming_parser::tests::test_format_nquads_enum ... ok
[INFO] [stdout] test streaming_parser::tests::test_flush_incomplete_line_is_error ... ok
[INFO] [stdout] test streaming_parser::tests::test_nquads_emits_quad_event ... ok
[INFO] [stdout] test streaming_parser::tests::test_feed_ntriples_single_line ... ok
[INFO] [stdout] test streaming_parser::tests::test_nquads_stats_quads ... ok
[INFO] [stdout] test streaming_parser::tests::test_format_ntriples_enum ... ok
[INFO] [stdout] test streaming_parser::tests::test_base_iri_config_emits_event_on_new ... ok
[INFO] [stdout] test streaming_parser::tests::test_ntriples_blank_node_subject ... ok
[INFO] [stdout] test streaming_parser::tests::test_flush_empty_parser_emits_end ... ok
[INFO] [stdout] test streaming_parser::tests::test_ntriples_comment_not_counted ... ok
[INFO] [stdout] test streaming_parser::tests::test_nquads_quad_fields ... ok
[INFO] [stdout] test streaming_parser::tests::test_flush_emits_end ... ok
[INFO] [stdout] test streaming_parser::tests::test_parse_event_error_message ... ok
[INFO] [stdout] test streaming_parser::tests::test_feed_ntriples_subject_predicate_object ... ok
[INFO] [stdout] test streaming_parser::tests::test_partial_line_across_chunks ... ok
[INFO] [stdout] test streaming_parser::tests::test_reset_clears_stats ... ok
[INFO] [stdout] test streaming_parser::tests::test_reset_clears_events ... ok
[INFO] [stdout] test streaming_parser::tests::test_flush_includes_remaining_triples ... ok
[INFO] [stdout] test streaming_parser::tests::test_stats_bytes_processed ... ok
[INFO] [stdout] test streaming_parser::tests::test_trig_prefix_event ... ok
[INFO] [stdout] test streaming_parser::tests::test_stats_triple_count_accumulated ... ok
[INFO] [stdout] test streaming_parser::tests::test_ntriples_literal_subject ... ok
[INFO] [stdout] test streaming_parser::tests::test_ntriples_multiple_triples_count ... ok
[INFO] [stdout] test streaming_parser::tests::test_trig_quad_event ... ok
[INFO] [stdout] test streaming_parser::tests::test_reset_clears_buffer ... ok
[INFO] [stdout] test streaming_parser::tests::test_reset_zeroes_bytes_processed ... ok
[INFO] [stdout] test streaming_parser::tests::test_stats_bytes_accumulate ... ok
[INFO] [stdout] test streaming_parser::tests::test_turtle_base_iri_event ... ok
[INFO] [stdout] test streaming_parser::tests::test_turtle_prefix_values ... ok
[INFO] [stdout] test streaming_parser::tests::test_turtle_triple_after_prefix ... ok
[INFO] [stdout] test streaming_parser::tests::test_validate_flag_enabled_error_on_bad_term ... ok
[INFO] [stdout] test tests::test_triple ... ok
[INFO] [stdout] test triple_store::tests::test_add_all_bulk ... ok
[INFO] [stdout] test triple_store::tests::test_add_all_with_duplicates ... ok
[INFO] [stdout] test triple_store::tests::test_add_duplicate_returns_false ... ok
[INFO] [stdout] test streaming_parser::tests::test_validate_flag_disabled_no_error_on_partial ... ok
[INFO] [stdout] test streaming_parser::tests::test_pending_events_count ... ok
[INFO] [stdout] test streaming_parser::tests::test_turtle_prefix_event ... ok
[INFO] [stdout] test triple_store::tests::test_contains_existing ... ok
[INFO] [stdout] test triple_store::tests::test_contains_nonexistent ... ok
[INFO] [stdout] test streaming_parser::tests::test_turtle_base_event_value ... ok
[INFO] [stdout] test triple_store::tests::test_add_single_triple ... ok
[INFO] [stdout] test triple_store::tests::test_import_ntriples_literal_with_lang ... ok
[INFO] [stdout] test triple_store::tests::test_difference_empty ... ok
[INFO] [stdout] test triple_store::tests::test_all_triples ... ok
[INFO] [stdout] test triple_store::tests::test_error_display ... ok
[INFO] [stdout] test triple_store::tests::test_clear ... ok
[INFO] [stdout] test triple_store::tests::test_import_ntriples_literal_with_datatype ... ok
[INFO] [stdout] test triple_store::tests::test_difference ... ok
[INFO] [stdout] test triple_store::tests::test_import_ntriples_blank_node ... ok
[INFO] [stdout] test triple_store::tests::test_import_ntriples_multiple_lines ... ok
[INFO] [stdout] test triple_store::tests::test_import_ntriples_error_missing_dot ... ok
[INFO] [stdout] test triple_store::tests::test_is_empty_true ... ok
[INFO] [stdout] test triple_store::tests::test_iter ... ok
[INFO] [stdout] test triple_store::tests::test_index_after_remove ... ok
[INFO] [stdout] test triple_store::tests::test_is_empty_false ... ok
[INFO] [stdout] test triple_store::tests::test_bulk_add_100_triples ... ok
[INFO] [stdout] test triple_store::tests::test_match_all_wildcard ... ok
[INFO] [stdout] test triple_store::tests::test_import_ntriples_skip_empty_lines ... ok
[INFO] [stdout] test triple_store::tests::test_import_ntriples_skip_comments ... ok
[INFO] [stdout] test triple_store::tests::test_match_by_object ... ok
[INFO] [stdout] test triple_store::tests::test_intersection ... ok
[INFO] [stdout] test triple_store::tests::test_match_by_subject ... ok
[INFO] [stdout] test triple_store::tests::test_import_ntriples_basic ... ok
[INFO] [stdout] test triple_store::tests::test_match_exact_triple ... ok
[INFO] [stdout] test triple_store::tests::test_match_by_subject_and_predicate ... ok
[INFO] [stdout] test triple_store::tests::test_match_no_results ... ok
[INFO] [stdout] test triple_store::tests::test_match_predicate_and_object ... ok
[INFO] [stdout] test triple_store::tests::test_ntriples_roundtrip ... ok
[INFO] [stdout] test triple_store::tests::test_remove_all_bulk ... ok
[INFO] [stdout] test triple_store::tests::test_remove_existing_triple ... ok
[INFO] [stdout] test triple_store::tests::test_remove_nonexistent_triple ... ok
[INFO] [stdout] test update::tests::test_delete_data_existing ... ok
[INFO] [stdout] test triple_store::tests::test_stats_empty ... ok
[INFO] [stdout] test update::tests::test_delete_data_nonexistent ... ok
[INFO] [stdout] test streaming_parser::tests::test_turtle_prefix_stats ... ok
[INFO] [stdout] test triple_store::tests::test_subject_with_multiple_predicates ... ok
[INFO] [stdout] test update::tests::test_drop ... ok
[INFO] [stdout] test update::tests::test_insert_data_single ... ok
[INFO] [stdout] test update::tests::test_insert_data_multiple ... ok
[INFO] [stdout] test update::tests::test_insert_data_type_shortcut ... ok
[INFO] [stdout] test triple_store::tests::test_to_ntriples_empty ... ok
[INFO] [stdout] test update::tests::test_delete_where ... ok
[INFO] [stdout] test update::tests::test_unknown_operation ... ok
[INFO] [stdout] test update::tests::test_insert_where ... ok
[INFO] [stdout] test triple_store::tests::test_match_by_predicate ... ok
[INFO] [stdout] test update::tests::test_insert_data_no_duplicates ... ok
[INFO] [stdout] test triple_store::tests::test_triple_to_ntriples_line ... ok
[INFO] [stdout] test triple_store::tests::test_union_empty ... ok
[INFO] [stdout] test triple_store::tests::test_stats_populated ... ok
[INFO] [stdout] test update::tests::test_clear ... ok
[INFO] [stdout] test triple_store::tests::test_intersection_empty ... ok
[INFO] [stdout] test triple_store::tests::test_to_ntriples ... ok
[INFO] [stdout] test triple_store::tests::test_union ... ok
[INFO] [stdout] test wasm_bridge::tests::test_as_array_absent ... ok
[INFO] [stdout] test wasm_bridge::tests::test_as_bool_false ... ok
[INFO] [stdout] test wasm_bridge::tests::test_as_bool_true ... ok
[INFO] [stdout] test wasm_bridge::tests::test_as_bool_non_bool ... ok
[INFO] [stdout] test wasm_bridge::tests::test_as_str_absent ... ok
[INFO] [stdout] test wasm_bridge::tests::test_as_str_present ... ok
[INFO] [stdout] test wasm_bridge::tests::test_bridge_error_index_out_of_bounds_display ... ok
[INFO] [stdout] test wasm_bridge::tests::test_bridge_error_is_std_error ... ok
[INFO] [stdout] test wasm_bridge::tests::test_as_f64_present ... ok
[INFO] [stdout] test wasm_bridge::tests::test_bridge_error_key_not_found_display ... ok
[INFO] [stdout] test wasm_bridge::tests::test_bridge_error_type_mismatch_display ... ok
[INFO] [stdout] test wasm_bridge::tests::test_get_existing_key ... ok
[INFO] [stdout] test wasm_bridge::tests::test_get_missing_key ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_array_to_strings_empty ... ok
[INFO] [stdout] test wasm_bridge::tests::test_as_array_present ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_array_to_strings_not_array ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_to_sparql_query_type_mismatch ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_to_sparql_query_object_missing_key ... ok
[INFO] [stdout] test wasm_bridge::tests::test_number_is_not_null_or_undefined ... ok
[INFO] [stdout] test wasm_bridge::tests::test_null_is_null_or_undefined ... ok
[INFO] [stdout] test wasm_bridge::tests::test_get_non_object ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_array_to_strings_ok ... ok
[INFO] [stdout] test wasm_bridge::tests::test_rdf_term_blank ... ok
[INFO] [stdout] test wasm_bridge::tests::test_as_f64_absent ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_object_to_map_non_string_value ... ok
[INFO] [stdout] test wasm_bridge::tests::test_rdf_term_iri ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_array_to_strings_non_string_element ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_object_to_map_not_object ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_object_to_map_ok ... ok
[INFO] [stdout] test wasm_bridge::tests::test_rdf_term_literal ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_to_sparql_query_object ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_array ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_boolean_false ... ok
[INFO] [stdout] test wasm_bridge::tests::test_js_to_sparql_query_string ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_null ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_empty_array ... ok
[INFO] [stdout] test wasm_bridge::tests::test_rdf_term_iri_strips_brackets ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_float_number ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_integer_number ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_string ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_empty_object ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_object_with_field ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_undefined ... ok
[INFO] [stdout] test wasm_bridge::tests::test_sparql_results_binding_row ... ok
[INFO] [stdout] test wasm_bridge::tests::test_sparql_results_has_head ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_string_with_quotes ... ok
[INFO] [stdout] test wasm_bridge::tests::test_sparql_results_vars_count ... ok
[INFO] [stdout] test wasm_bridge::tests::test_type_name_boolean ... ok
[INFO] [stdout] test wasm_bridge::tests::test_type_name_array ... ok
[INFO] [stdout] test wasm_bridge::tests::test_type_name_null ... ok
[INFO] [stdout] test wasm_bridge::tests::test_type_name_string ... ok
[INFO] [stdout] test wasm_bridge::tests::test_type_name_undefined ... ok
[INFO] [stdout] test wasm_bridge::tests::test_undefined_is_null_or_undefined ... ok
[INFO] [stdout] test wasm_bridge::tests::test_sparql_results_has_results ... ok
[INFO] [stdout] test wasm_bridge::tests::test_serialize_boolean_true ... ok
[INFO] [stdout] test wasm_bridge::tests::test_type_name_object ... ok
[INFO] [stdout] test wasm_bridge::tests::test_type_name_number ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 858 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests oxirs_wasm
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test src/named_graph/mod.rs - named_graph (line 9) - compile ... ok
[INFO] [stdout] test src/api/wasm_api.rs - api::wasm_api::WasmSparqlStore::query_pattern (line 306) - compile ... ok
[INFO] [stdout] test src/graph_visualizer.rs - graph_visualizer (line 21) ... ok
[INFO] [stdout] test src/api/wasm_api.rs - api::wasm_api::WasmSparqlStore (line 96) - compile ... ok
[INFO] [stdout] test src/event_dispatcher.rs - event_dispatcher (line 11) ... ok
[INFO] [stdout] test src/namespace_manager.rs - namespace_manager (line 15) ... ok
[INFO] [stdout] test src/sparql_formatter.rs - sparql_formatter (line 7) ... ok
[INFO] [stdout] test src/sparql_executor.rs - sparql_executor (line 9) ... ok
[INFO] [stdout] test src/geojson_support.rs - geojson_support (line 9) ... ok
[INFO] [stdout] test src/query_validator.rs - query_validator (line 18) ... ok
[INFO] [stdout] test src/storage_adapter.rs - storage_adapter (line 13) ... ok
[INFO] [stdout] test src/triple_store.rs - triple_store (line 10) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.50s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ec38097f2b2d6f65827ddb17376ee350ec9390b4a66eef0311e1834fd919ca74", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ec38097f2b2d6f65827ddb17376ee350ec9390b4a66eef0311e1834fd919ca74", kill_on_drop: false }`
[INFO] [stdout] ec38097f2b2d6f65827ddb17376ee350ec9390b4a66eef0311e1834fd919ca74
