[INFO] fetching crate graphlite 0.0.1...
[INFO] checking graphlite-0.0.1 against master#2aabf3ce0569dd7c8c2d2a27944850056dcf2566 for pr-156508
[INFO] extracting crate graphlite 0.0.1 into /workspace/builds/worker-1-tc1/source
[INFO] started tweaking crates.io crate graphlite 0.0.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate graphlite 0.0.1
[INFO] tweaked toml for crates.io crate graphlite 0.0.1 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate graphlite 0.0.1 on toolchain 2aabf3ce0569dd7c8c2d2a27944850056dcf2566
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate graphlite 0.0.1 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" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cc v1.2.46
[INFO] [stderr]   Downloaded chrono-tz-build v0.2.1
[INFO] [stderr]   Downloaded sled v0.34.7
[INFO] [stderr]   Downloaded chrono-tz v0.8.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5a74f2d2b72d21ca79be3968f4df5ef9af728f2509dea4453e878242e96ce1d2
[INFO] running `Command { std: "docker" "start" "-a" "5a74f2d2b72d21ca79be3968f4df5ef9af728f2509dea4453e878242e96ce1d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5a74f2d2b72d21ca79be3968f4df5ef9af728f2509dea4453e878242e96ce1d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5a74f2d2b72d21ca79be3968f4df5ef9af728f2509dea4453e878242e96ce1d2", kill_on_drop: false }`
[INFO] [stdout] 5a74f2d2b72d21ca79be3968f4df5ef9af728f2509dea4453e878242e96ce1d2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 67e38c02f9af2c2786a887ad64036790b41fa9e4e29ed80d389621a051130cf1
[INFO] running `Command { std: "docker" "start" "-a" "67e38c02f9af2c2786a887ad64036790b41fa9e4e29ed80d389621a051130cf1", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking siphasher v1.0.1
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking rustix v1.1.2
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]     Checking serde_json v1.0.145
[INFO] [stderr]    Compiling phf v0.11.3
[INFO] [stderr]     Checking rayon-core v1.13.0
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking mio v1.1.0
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking sled v0.34.7
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]    Compiling parse-zoneinfo v0.3.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]    Compiling chrono-tz-build v0.2.1
[INFO] [stderr]    Compiling chrono-tz v0.8.6
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking uuid v1.18.1
[INFO] [stderr]     Checking graphlite v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/storage/indexes/metrics.rs:569:12
[INFO] [stdout]     |
[INFO] [stdout] 568 | impl Timer {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] 569 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `min_val`
[INFO] [stdout]    --> tests/function_tests.rs:319:9
[INFO] [stdout]     |
[INFO] [stdout] 319 |     let min_val = fixture.assert_numeric_range(
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_min_val`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `max_val`
[INFO] [stdout]    --> tests/function_tests.rs:348:9
[INFO] [stdout]     |
[INFO] [stdout] 348 |     let max_val = fixture.assert_numeric_range(
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_val`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total`
[INFO] [stdout]    --> tests/function_tests.rs:462:9
[INFO] [stdout]     |
[INFO] [stdout] 462 |     let total = results.passed + results.failed;
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_total`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total`
[INFO] [stdout]    --> tests/function_tests.rs:609:9
[INFO] [stdout]     |
[INFO] [stdout] 609 |     let total = results.passed + results.failed;
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_total`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Empty` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:348:5
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 348 |     Empty,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FixtureType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `expected_values` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 354 |     pub name: String,
[INFO] [stdout] 355 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 358 |     pub expected_values: Option<HashMap<String, Value>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `test_results` is never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:368:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub test_results: Vec<TestCaseResult>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestSuiteResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `success`, `error`, and `duration` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 374 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 375 |     pub success: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 376 |     pub error: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 377 |     pub duration: std::time::Duration,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCaseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name` and `graph_name` are never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     schema_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Simple` and `Empty` are never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 346 |     Simple,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 347 |     Fraud,
[INFO] [stdout] 348 |     Empty,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FixtureType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `expected_values` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 354 |     pub name: String,
[INFO] [stdout] 355 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 358 |     pub expected_values: Option<HashMap<String, Value>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `test_results` is never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:368:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub test_results: Vec<TestCaseResult>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestSuiteResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `success`, `error`, and `duration` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 374 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 375 |     pub success: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 376 |     pub error: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 377 |     pub duration: std::time::Duration,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCaseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name` and `graph_name` are never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     schema_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result1`
[INFO] [stdout]   --> tests/utility_functions_test.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let result1 = fixture.query(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result2`
[INFO] [stdout]   --> tests/utility_functions_test.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let result2 = fixture.query(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result3`
[INFO] [stdout]   --> tests/utility_functions_test.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let result3 = fixture.query(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result4`
[INFO] [stdout]   --> tests/utility_functions_test.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let result4 = fixture.query(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result5`
[INFO] [stdout]   --> tests/utility_functions_test.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     let result5 = fixture.query(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result5`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result1`
[INFO] [stdout]    --> tests/utility_functions_test.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout] 103 |     let result1 = fixture.query(
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result2`
[INFO] [stdout]    --> tests/utility_functions_test.rs:112:9
[INFO] [stdout]     |
[INFO] [stdout] 112 |     let result2 = fixture.query(
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result3`
[INFO] [stdout]    --> tests/utility_functions_test.rs:121:9
[INFO] [stdout]     |
[INFO] [stdout] 121 |     let result3 = fixture.query(
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result4`
[INFO] [stdout]    --> tests/utility_functions_test.rs:130:9
[INFO] [stdout]     |
[INFO] [stdout] 130 |     let result4 = fixture.query(
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]    --> tests/utility_functions_test.rs:177:41
[INFO] [stdout]     |
[INFO] [stdout] 177 |         Ok(query_result) => if let Some(row) = query_result.rows.first() {},
[INFO] [stdout]     |                                         ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> tests/utility_functions_test.rs:178:13
[INFO] [stdout]     |
[INFO] [stdout] 178 |         Err(e) => {}
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result1`
[INFO] [stdout]    --> tests/utility_functions_test.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 206 |     let result1 = fixture.query(
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result2`
[INFO] [stdout]    --> tests/utility_functions_test.rs:214:9
[INFO] [stdout]     |
[INFO] [stdout] 214 |     let result2 = fixture.query(
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result3`
[INFO] [stdout]    --> tests/utility_functions_test.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |     let result3 = fixture.query(
[INFO] [stdout]     |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `simple_result`
[INFO] [stdout]    --> tests/aggregation_tests.rs:759:9
[INFO] [stdout]     |
[INFO] [stdout] 759 |     let simple_result = fixture.assert_query_succeeds(simple_query);
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_simple_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/aggregation_tests.rs:773:10
[INFO] [stdout]     |
[INFO] [stdout] 773 |     for (i, row) in result.rows.iter().enumerate() {}
[INFO] [stdout]     |          ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]    --> tests/aggregation_tests.rs:773:13
[INFO] [stdout]     |
[INFO] [stdout] 773 |     for (i, row) in result.rows.iter().enumerate() {}
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/aggregation_tests.rs:862:10
[INFO] [stdout]     |
[INFO] [stdout] 862 |     for (i, row) in result.rows.iter().enumerate() {
[INFO] [stdout]     |          ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_labels_value`
[INFO] [stdout]    --> tests/aggregation_tests.rs:863:21
[INFO] [stdout]     |
[INFO] [stdout] 863 |         if let Some(node_labels_value) = row
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_labels_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count_value`
[INFO] [stdout]    --> tests/aggregation_tests.rs:867:25
[INFO] [stdout]     |
[INFO] [stdout] 867 |             if let Some(count_value) = row.get_value("count") {}
[INFO] [stdout]     |                         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count_value`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `previous_labels` is assigned to, but never used
[INFO] [stdout]    --> tests/aggregation_tests.rs:887:9
[INFO] [stdout]     |
[INFO] [stdout] 887 |     let mut previous_labels: Option<String> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_previous_labels` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `labels`
[INFO] [stdout]     --> tests/aggregation_tests.rs:1001:22
[INFO] [stdout]      |
[INFO] [stdout] 1001 |         if let (Some(labels), Some(count)) = (
[INFO] [stdout]      |                      ^^^^^^ help: if this is intentional, prefix it with an underscore: `_labels`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `previous_labels` is never read
[INFO] [stdout]    --> tests/aggregation_tests.rs:896:13
[INFO] [stdout]     |
[INFO] [stdout] 896 |             previous_labels = Some(current_labels);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Simple` and `Empty` are never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 346 |     Simple,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 347 |     Fraud,
[INFO] [stdout] 348 |     Empty,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FixtureType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `expected_values` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 354 |     pub name: String,
[INFO] [stdout] 355 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 358 |     pub expected_values: Option<HashMap<String, Value>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `test_results` is never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:368:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub test_results: Vec<TestCaseResult>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestSuiteResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `success`, `error`, and `duration` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 374 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 375 |     pub success: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 376 |     pub error: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 377 |     pub duration: std::time::Duration,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCaseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result1`
[INFO] [stdout]   --> tests/with_clause_property_access_bug.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 35 |     let result1 = fixture.assert_query_succeeds(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result2`
[INFO] [stdout]   --> tests/with_clause_property_access_bug.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     let result2 = fixture.assert_query_succeeds(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result3`
[INFO] [stdout]   --> tests/with_clause_property_access_bug.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let result3 = fixture.assert_query_succeeds(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result4`
[INFO] [stdout]   --> tests/with_clause_property_access_bug.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     let result4 = fixture.assert_query_succeeds(
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_result4`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name` and `graph_name` are never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     schema_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> tests/dql_tests.rs:559:9
[INFO] [stdout]     |
[INFO] [stdout] 559 |     let result = fixture.assert_query_succeeds(
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Simple` and `Empty` are never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 346 |     Simple,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 347 |     Fraud,
[INFO] [stdout] 348 |     Empty,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FixtureType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `expected_values` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 354 |     pub name: String,
[INFO] [stdout] 355 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 358 |     pub expected_values: Option<HashMap<String, Value>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `test_results` is never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:368:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub test_results: Vec<TestCaseResult>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestSuiteResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `success`, `error`, and `duration` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 374 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 375 |     pub success: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 376 |     pub error: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 377 |     pub duration: std::time::Duration,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCaseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name` and `graph_name` are never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     schema_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]    --> tests/match_with_tests.rs:538:36
[INFO] [stdout]     |
[INFO] [stdout] 538 |         if let (Some(Value::String(name)), Some(tier)) =
[INFO] [stdout]     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tier`
[INFO] [stdout]    --> tests/match_with_tests.rs:538:49
[INFO] [stdout]     |
[INFO] [stdout] 538 |           if let (Some(Value::String(name)), Some(tier)) =
[INFO] [stdout]     |                                                   ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 546 | /             "MATCH (c:Customer {tier: 'platinum'})
[INFO] [stdout] 547 | |          RETURN count(c) as count",
[INFO] [stdout]     | |__________________________________- you might have meant to use string interpolation in this string literal
[INFO] [stdout]     |
[INFO] [stdout] help: string interpolation only works in `format!` invocations
[INFO] [stdout]     |
[INFO] [stdout] 546 ~             format!("MATCH (c:Customer {tier: 'platinum'})
[INFO] [stdout] 547 ~          RETURN count(c) as count"),
[INFO] [stdout]     |
[INFO] [stdout] help: if this is intentional, prefix it with an underscore
[INFO] [stdout]     |
[INFO] [stdout] 538 |         if let (Some(Value::String(name)), Some(_tier)) =
[INFO] [stdout]     |                                                 +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_result`
[INFO] [stdout]     --> tests/match_with_tests.rs:1324:13
[INFO] [stdout]      |
[INFO] [stdout] 1324 |         let debug_result = fixture
[INFO] [stdout]      |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `match_only`
[INFO] [stdout]     --> tests/match_with_tests.rs:1572:9
[INFO] [stdout]      |
[INFO] [stdout] 1572 |     let match_only = fixture
[INFO] [stdout]      |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_match_only`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]     --> tests/match_with_tests.rs:1579:12
[INFO] [stdout]      |
[INFO] [stdout] 1579 |         Ok(result) => {}
[INFO] [stdout]      |            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> tests/match_with_tests.rs:1580:13
[INFO] [stdout]      |
[INFO] [stdout] 1580 |         Err(e) => {}
[INFO] [stdout]      |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `debug_result`
[INFO] [stdout]     --> tests/match_with_tests.rs:1660:9
[INFO] [stdout]      |
[INFO] [stdout] 1660 |     let debug_result = fixture.assert_query_succeeds(
[INFO] [stdout]      |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_debug_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> tests/match_with_tests.rs:1914:25
[INFO] [stdout]      |
[INFO] [stdout] 1914 |                     Err(e) => {}
[INFO] [stdout]      |                         ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `user_id_in_with`
[INFO] [stdout]     --> tests/match_with_tests.rs:1917:21
[INFO] [stdout]      |
[INFO] [stdout] 1917 |                 let user_id_in_with = query_result.rows[0].values.get("user_id").unwrap();
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_user_id_in_with`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]     --> tests/match_with_tests.rs:1920:13
[INFO] [stdout]      |
[INFO] [stdout] 1920 |         Err(e) => {}
[INFO] [stdout]      |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row_count`
[INFO] [stdout]    --> tests/call_where_clause_test.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 169 |     let row_count = result.rows.len();
[INFO] [stdout]     |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_row_count`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name` and `graph_name` are never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     schema_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> tests/match_with_tests.rs:967:5
[INFO] [stdout]     |
[INFO] [stdout] 967 | /     fixture.query(
[INFO] [stdout] 968 | |         "MATCH (u:User)-[e:ENGAGED]->(c:Content)
[INFO] [stdout] 969 | |          WITH c, sum(e.value) as total_engagement, count(e) as engagement_count
[INFO] [stdout] 970 | |          WHERE total_engagement > 3
[INFO] [stdout] 971 | |          SET c.quality_score = total_engagement, c.last_updated = '2024-01-10'",
[INFO] [stdout] 972 | |     );
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 967 |     let _ = fixture.query(
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> tests/match_with_tests.rs:1243:5
[INFO] [stdout]      |
[INFO] [stdout] 1243 | /     fixture.query(
[INFO] [stdout] 1244 | |         "MATCH (u:User)-[c:CREATED]->(p:Post)
[INFO] [stdout] 1245 | |          WITH u, count(c) as creation_count
[INFO] [stdout] 1246 | |          SET u.has_created_content = true, u.creation_count = creation_count",
[INFO] [stdout] 1247 | |     );
[INFO] [stdout]      | |_____^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1243 |     let _ = fixture.query(
[INFO] [stdout]      |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]     --> tests/match_with_tests.rs:1297:5
[INFO] [stdout]      |
[INFO] [stdout] 1297 | /     fixture.query(
[INFO] [stdout] 1298 | |         "MATCH (u:User)-[c:CREATED]->(p:Post)
[INFO] [stdout] 1299 | |          WITH u, avg(c.rating) as avg_rating
[INFO] [stdout] 1300 | |          WHERE avg_rating >= 17.0
[INFO] [stdout] 1301 | |          SET u.high_performer = true",
[INFO] [stdout] 1302 | |     );
[INFO] [stdout]      | |_____^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1297 |     let _ = fixture.query(
[INFO] [stdout]      |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name` and `graph_name` are never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     schema_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name` and `graph_name` are never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     schema_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]   --> tests/list_graphs_bug_test_simple.rs:45:37
[INFO] [stdout]    |
[INFO] [stdout] 45 |     if let graphlite::Value::String(name) = graph_name {}
[INFO] [stdout]    |                                     ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `schema`
[INFO] [stdout]   --> tests/list_graphs_bug_test_simple.rs:46:37
[INFO] [stdout]    |
[INFO] [stdout] 46 |     if let graphlite::Value::String(schema) = schema_name {}
[INFO] [stdout]    |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_schema`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `schema_name` and `graph_name` are never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     schema_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/dml_tests.rs:221:10
[INFO] [stdout]     |
[INFO] [stdout] 221 |     for (i, row) in working_result.rows.iter().enumerate() {}
[INFO] [stdout]     |          ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]    --> tests/dml_tests.rs:221:13
[INFO] [stdout]     |
[INFO] [stdout] 221 |     for (i, row) in working_result.rows.iter().enumerate() {}
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> tests/dml_tests.rs:231:10
[INFO] [stdout]     |
[INFO] [stdout] 231 |     for (i, row) in result.rows.iter().enumerate() {}
[INFO] [stdout]     |          ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `row`
[INFO] [stdout]    --> tests/dml_tests.rs:231:13
[INFO] [stdout]     |
[INFO] [stdout] 231 |     for (i, row) in result.rows.iter().enumerate() {}
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_row`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `count`
[INFO] [stdout]    --> tests/dml_tests.rs:676:17
[INFO] [stdout]     |
[INFO] [stdout] 676 |             let count = result.rows[0]
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `graph_name`, `with_simple_data`, `with_fraud_data`, `assert_aggregates`, and `with_large_data` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestFixture` is never constructed
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  37 |     pub fn new() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn query(&self, query_text: &str) -> Result<QueryResult, String> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Fraud` and `Empty` are never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:347:5
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 346 |     Simple,
[INFO] [stdout] 347 |     Fraud,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 348 |     Empty,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FixtureType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `expected_values` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 354 |     pub name: String,
[INFO] [stdout] 355 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 358 |     pub expected_values: Option<HashMap<String, Value>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `test_results` is never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:368:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub test_results: Vec<TestCaseResult>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestSuiteResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `success`, `error`, and `duration` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 374 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 375 |     pub success: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 376 |     pub error: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 377 |     pub duration: std::time::Duration,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCaseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/storage/indexes/metrics.rs:569:12
[INFO] [stdout]     |
[INFO] [stdout] 568 | impl Timer {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] 569 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:32:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `schema_name`, `graph_name`, `with_simple_data`, and `with_fraud_data` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:27:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Simple` and `Empty` are never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ----------- variants in this enum
[INFO] [stdout] 346 |     Simple,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 347 |     Fraud,
[INFO] [stdout] 348 |     Empty,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `FixtureType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `description` and `expected_values` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:355:9
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] 354 |     pub name: String,
[INFO] [stdout] 355 |     pub description: String,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 358 |     pub expected_values: Option<HashMap<String, Value>>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCase` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `test_results` is never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:368:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ---------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 368 |     pub test_results: Vec<TestCaseResult>,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestSuiteResults` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `success`, `error`, and `duration` are never read
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:374:9
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            -------------- fields in this struct
[INFO] [stdout] 374 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 375 |     pub success: bool,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] 376 |     pub error: Option<String>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 377 |     pub duration: std::time::Duration,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TestCaseResult` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  27 |     pub fn schema_name(&self) -> &str {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `assert_query_fails` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:110:12
[INFO] [stdout]     |
[INFO] [stdout]  22 | impl CliFixture {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn assert_query_fails(&self, query: &str) -> String {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `len` is never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:193:12
[INFO] [stdout]     |
[INFO] [stdout] 161 | impl CliQueryResult {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 193 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `values` is never read
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:206:9
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub struct Row {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 206 |     pub values: HashMap<String, Value>,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Row` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get`, `get_string`, `get_number`, and `get_bool` are never used
[INFO] [stdout]    --> tests/testutils/cli_fixture.rs:211:12
[INFO] [stdout]     |
[INFO] [stdout] 209 | impl Row {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] 210 |     /// Get a value by column name
[INFO] [stdout] 211 |     pub fn get(&self, key: &str) -> Option<&Value> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 216 |     pub fn get_string(&self, key: &str) -> Option<String> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn get_number(&self, key: &str) -> Option<f64> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     pub fn get_bool(&self, key: &str) -> Option<bool> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `graph_name` is never read
[INFO] [stdout]   --> tests/testutils/test_fixture.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct TestFixture {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     graph_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  20 | impl TestFixture {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  21 |     /// Create empty test fixture
[INFO] [stdout]  22 |     pub fn empty() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  32 |     pub fn graph_name(&self) -> Option<&str> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn with_simple_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  93 |     pub fn insert_simple_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn with_fraud_data() -> Result<Self, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |     pub fn insert_fraud_data(&self) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn setup_graph(&self, graph_name: &str) -> Result<(), String> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |     pub fn assert_query_succeeds(&self, query: &str) -> QueryResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn assert_query_fails(&self, query: &str, expected_error: &str) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 243 |     pub fn assert_first_value(&self, query: &str, column: &str, expected: Value) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     pub fn assert_aggregates(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn with_large_data(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AggregateStats` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | pub struct AggregateStats {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FixtureType` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:345:10
[INFO] [stdout]     |
[INFO] [stdout] 345 | pub enum FixtureType {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCase` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:353:12
[INFO] [stdout]     |
[INFO] [stdout] 353 | pub struct TestCase {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuiteResults` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:364:12
[INFO] [stdout]     |
[INFO] [stdout] 364 | pub struct TestSuiteResults {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestCaseResult` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 373 | pub struct TestCaseResult {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_summary` is never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:381:12
[INFO] [stdout]     |
[INFO] [stdout] 380 | impl TestSuiteResults {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] 381 |     pub fn print_summary(&self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TestSuite` is never constructed
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:394:12
[INFO] [stdout]     |
[INFO] [stdout] 394 | pub struct TestSuite {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> tests/testutils/test_fixture.rs:402:12
[INFO] [stdout]     |
[INFO] [stdout] 400 | impl TestSuite {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 401 |     /// Create a new test suite
[INFO] [stdout] 402 |     pub fn new(name: String, fixture_type: FixtureType, test_cases: Vec<TestCase>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn run(&self) -> Result<TestSuiteResults, Box<dyn std::error::Error>> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 51.85s
[INFO] running `Command { std: "docker" "inspect" "67e38c02f9af2c2786a887ad64036790b41fa9e4e29ed80d389621a051130cf1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "67e38c02f9af2c2786a887ad64036790b41fa9e4e29ed80d389621a051130cf1", kill_on_drop: false }`
[INFO] [stdout] 67e38c02f9af2c2786a887ad64036790b41fa9e4e29ed80d389621a051130cf1
