2021-06-04 17:31:19 +00:00
|
|
|
[package]
|
|
|
|
name = "query_tests"
|
|
|
|
version = "0.1.0"
|
|
|
|
authors = ["Andrew Lamb <andrew@nerdnetworks.org>"]
|
|
|
|
edition = "2018"
|
|
|
|
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-06-29 16:09:51 +00:00
|
|
|
once_cell = { version = "1.4.0", features = ["parking_lot"] }
|
|
|
|
query = { path = "../query" }
|
|
|
|
server = { path = "../server" }
|
|
|
|
|
|
|
|
[dev-dependencies]
|
2021-07-19 12:49:51 +00:00
|
|
|
arrow = { version = "5.0", features = ["prettyprint"] }
|
2021-06-04 17:31:19 +00:00
|
|
|
arrow_util = { path = "../arrow_util" }
|
|
|
|
datafusion = { path = "../datafusion" }
|
|
|
|
data_types = { path = "../data_types" }
|
|
|
|
internal_types = { path = "../internal_types" }
|
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-09-14 15:12:56 +00:00
|
|
|
predicate = { path = "../predicate" }
|
2021-06-29 16:09:51 +00:00
|
|
|
snafu = "0.6.3"
|
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-09-06 09:11:38 +00:00
|
|
|
tokio = { version = "1.11", features = ["macros", "time"] }
|