2021-06-04 17:31:19 +00:00
|
|
|
[package]
|
|
|
|
name = "query_tests"
|
|
|
|
version = "0.1.0"
|
|
|
|
authors = ["Andrew Lamb <andrew@nerdnetworks.org>"]
|
2021-10-25 08:45:44 +00:00
|
|
|
edition = "2021"
|
2021-06-04 17:31:19 +00:00
|
|
|
description = "Tests of the query engine against different database configurations"
|
|
|
|
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
|
|
|
|
[dependencies]
|
2021-06-29 16:09:51 +00:00
|
|
|
async-trait = "0.1"
|
2021-07-16 10:07:58 +00:00
|
|
|
data_types = { path = "../data_types" }
|
2021-09-16 19:02:18 +00:00
|
|
|
datafusion = { path = "../datafusion" }
|
2021-12-23 22:01:17 +00:00
|
|
|
db = { path = "../db" }
|
2021-06-29 16:09:51 +00:00
|
|
|
once_cell = { version = "1.4.0", features = ["parking_lot"] }
|
2021-09-16 19:02:18 +00:00
|
|
|
predicate = { path = "../predicate" }
|
2021-06-29 16:09:51 +00:00
|
|
|
query = { path = "../query" }
|
2021-11-19 14:21:57 +00:00
|
|
|
workspace-hack = { path = "../workspace-hack"}
|
2021-06-29 16:09:51 +00:00
|
|
|
|
|
|
|
[dev-dependencies]
|
2022-02-15 12:10:24 +00:00
|
|
|
arrow = { version = "9.0", features = ["prettyprint"] }
|
2021-06-04 17:31:19 +00:00
|
|
|
arrow_util = { path = "../arrow_util" }
|
2021-09-13 13:13:47 +00:00
|
|
|
metric = { path = "../metric" }
|
2021-06-04 17:31:19 +00:00
|
|
|
object_store = { path = "../object_store" }
|
2021-10-11 09:45:08 +00:00
|
|
|
schema = { path = "../schema" }
|
2022-01-11 19:22:36 +00:00
|
|
|
snafu = "0.7"
|
test: ensure that query tests don't rebuild all the time
Beforehand:
```text
❯ env CARGO_LOG=cargo::core::compiler::fingerprint=info cargo test -p query_tests
[2021-07-05T08:52:13Z INFO cargo::core::compiler::fingerprint] stale: changed "/home/mneumann/src/influxdb_iox/query_tests/cases"
[2021-07-05T08:52:13Z INFO cargo::core::compiler::fingerprint] (vs) "/home/mneumann/src/influxdb_iox/target/debug/build/query_tests-0e8f741dfb84437f/output"
[2021-07-05T08:52:13Z INFO cargo::core::compiler::fingerprint] FileTime { seconds: 1625474716, nanos: 436081357 } != FileTime { seconds: 1625474752, nanos: 52625167 }
[2021-07-05T08:52:13Z INFO cargo::core::compiler::fingerprint] fingerprint error for query_tests v0.1.0 (/home/mneumann/src/influxdb_iox/query_tests)/Test/TargetInner { ..: lib_target("query_tests", ["lib"], "/home/mneumann/src/influxdb_iox/query_tests/src/lib.rs", Edition2018) }
[2021-07-05T08:52:13Z INFO cargo::core::compiler::fingerprint] err: current filesystem status shows we're outdated
[2021-07-05T08:52:13Z INFO cargo::core::compiler::fingerprint] fingerprint error for query_tests v0.1.0 (/home/mneumann/src/influxdb_iox/query_tests)/RunCustomBuild/TargetInner { ..: custom_build_target("build-script-build", "/home/mneumann/src/influxdb_iox/query_tests/build.rs", Edition2018) }
[2021-07-05T08:52:13Z INFO cargo::core::compiler::fingerprint] err: current filesystem status shows we're outdated
[2021-07-05T08:52:13Z INFO cargo::core::compiler::fingerprint] fingerprint error for query_tests v0.1.0 (/home/mneumann/src/influxdb_iox/query_tests)/Build/TargetInner { ..: lib_target("query_tests", ["lib"], "/home/mneumann/src/influxdb_iox/query_tests/src/lib.rs", Edition2018) }
[2021-07-05T08:52:13Z INFO cargo::core::compiler::fingerprint] err: current filesystem status shows we're outdated
Compiling query_tests v0.1.0 (/home/mneumann/src/influxdb_iox/query_tests)
```
The issue is that both the input and the test output files are located
under `cases/`. `build.rs` used `cargo:rerun-if-changed=cases` which per
Cargo doc will scan ALL files in that directory. Note that the normal
`exclude` directive in `Cargo.toml` does NOT work, see
https://github.com/rust-lang/cargo/issues/4587 .
So we need to split input and output files into separate directories
(`cases/{in,out}`).
2021-07-05 09:48:50 +00:00
|
|
|
tempfile = "3.1.0"
|
2021-06-04 17:31:19 +00:00
|
|
|
test_helpers = { path = "../test_helpers" }
|
2021-12-02 19:46:26 +00:00
|
|
|
tokio = { version = "1.13", features = ["macros", "parking_lot", "rt-multi-thread", "time"] }
|