[package]
name = "embeddenator-testkit"
version = "0.21.0"
edition = "2021"
authors = ["Tyler Zervas <tz-dev@vectorweight.com>"]
description = "Comprehensive testing utilities and performance benchmarking for embeddenator VSA operations"
license = "MIT"
repository = "https://github.com/tzervas/embeddenator-testkit"
documentation = "https://docs.rs/embeddenator-testkit"
keywords = ["vsa", "testing", "benchmarking", "performance", "embeddenator"]
categories = ["development-tools::testing"]
[features]
default = []
metrics = []
tracing = []
gpu = []
distributed = []
large-scale = ["embeddenator-fs"]
integration = ["embeddenator-fs", "embeddenator-retrieval", "embeddenator-io", "embeddenator-obs", "embeddenator-interop", "metrics", "tracing"]
realworld-datasets = ["reqwest", "tokio", "flate2", "tar", "zip", "walkdir", "futures-util"]
media-formats = ["image", "symphonia"]
[dependencies]
embeddenator-vsa = { path = "../embeddenator-vsa", version = ">=0.21.0, <1.0.0", features = ["simd"] }
embeddenator-fs = { path = "../embeddenator-fs", version = ">=0.23.0, <1.0.0", optional = true }
embeddenator-retrieval = { path = "../embeddenator-retrieval", version = ">=0.21.0, <1.0.0", optional = true }
embeddenator-io = { path = "../embeddenator-io", version = ">=0.21.0, <1.0.0", optional = true, features = ["compression-zstd"] }
embeddenator-obs = { path = "../embeddenator-obs", version = ">=0.21.0, <1.0.0", optional = true, features = ["metrics", "tracing"] }
embeddenator-interop = { path = "../embeddenator-interop", version = ">=0.22.0, <1.0.0", optional = true }
rand = ">=0.9, <1.0"
tempfile = ">=3.13, <4.0"
criterion = { version = ">=0.5, <1.0", features = ["html_reports"] }
proptest = ">=1.4, <2.0"
serde = { version = ">=1.0, <2.0", features = ["derive"] }
serde_json = ">=1.0, <2.0"
bincode = ">=1.3, <2.0"
rayon = ">=1.8, <2.0"
indicatif = ">=0.17, <1.0"
humansize = ">=2.1, <3.0"
anyhow = ">=1.0, <2.0"
sha2 = ">=0.10, <1.0"
chrono = { version = ">=0.4, <1.0", features = ["serde"] }
hex = ">=0.4, <1.0"
dirs = ">=5.0, <6.0"
tracing = ">=0.1, <1.0"
reqwest = { version = ">=0.12, <1.0", features = ["stream", "rustls-tls"], optional = true }
futures-util = { version = ">=0.3, <1.0", optional = true }
tokio = { version = ">=1.35, <2.0", features = ["rt-multi-thread", "fs", "io-util"], optional = true }
flate2 = { version = ">=1.0, <2.0", optional = true }
tar = { version = ">=0.4, <1.0", optional = true }
zip = { version = ">=2.0, <3.0", optional = true }
walkdir = { version = ">=2.4, <3.0", optional = true }
image = { version = ">=0.25, <1.0", optional = true }
symphonia = { version = ">=0.5, <1.0", features = ["all"], optional = true }
[[bench]]
name = "performance_validation"
harness = false
[[bench]]
name = "large_scale_operations"
harness = false
required-features = ["large-scale"]
[[bench]]
name = "optimization_validation"
harness = false
[[bench]]
name = "integrated_workflows"
harness = false
required-features = ["integration"]
[[bench]]
name = "realworld_datasets"
harness = false
[[test]]
name = "cross_component_integration"
path = "tests/cross_component_integration.rs"
required-features = ["integration"]
[[test]]
name = "e2e_workflows"
path = "tests/e2e_workflows.rs"
required-features = ["integration"]
[[test]]
name = "format_conversion"
path = "tests/format_conversion.rs"
required-features = ["integration"]
[[test]]
name = "observability_integration"
path = "tests/observability_integration.rs"
required-features = ["integration"]
[[test]]
name = "performance_integration"
path = "tests/performance_integration.rs"
required-features = ["integration"]