[package]
edition = "2024"
rust-version = "1.94.0"
name = "reinhardt-testkit"
version = "0.1.1"
authors = ["kent8192 <51869472+kent8192@users.noreply.github.com>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Core testing infrastructure for Reinhardt framework (no functional crate dependencies)"
readme = "README.md"
license = "BSD-3-Clause"
repository = "https://github.com/kent8192/reinhardt-web"
[features]
admin = ["dep:reinhardt-conf"]
default = []
full = [
"testcontainers",
"static",
"websockets",
"graphql",
"property-based",
"viewsets",
"admin",
"messages",
]
graphql = [
"reinhardt-server/graphql",
"dep:async-graphql",
]
messages = ["reinhardt-core/messages"]
property-based = ["dep:proptest"]
static = ["reinhardt-utils/staticfiles"]
testcontainers = [
"dep:testcontainers",
"dep:testcontainers-modules",
"dep:sqlx",
"dep:memcache-async",
"dep:tokio-util",
"dep:redis",
"dep:fs2",
"dep:astral-tokio-tar",
]
viewsets = []
websockets = [
"dep:reinhardt-websockets",
"reinhardt-server/websocket",
]
[lib]
name = "reinhardt_testkit"
path = "src/lib.rs"
[dependencies.astral-tokio-tar]
version = "0.6.2"
optional = true
[dependencies.async-dropper]
version = "0.3"
features = [
"tokio",
"simple",
]
[dependencies.async-graphql]
version = "7.2.1"
optional = true
[dependencies.async-trait]
version = "0.1.89"
[dependencies.base64-simd]
version = "0.8"
[dependencies.bytes]
version = "1.11.1"
[dependencies.chrono]
version = "0.4.44"
features = ["serde"]
[dependencies.cookie]
version = "0.18"
[dependencies.env_logger]
version = "0.11"
[dependencies.fs2]
version = "0.4"
optional = true
[dependencies.futures]
version = "0.3.32"
[dependencies.http]
version = "1.0"
[dependencies.http-body-util]
version = "0.1.3"
[dependencies.hyper]
version = "1.9.0"
features = ["full"]
[dependencies.lapin]
version = "3.7.2"
[dependencies.memcache-async]
version = "0.9.0"
optional = true
[dependencies.mime]
version = "0.3"
[dependencies.mockall]
version = "0.14.0"
[dependencies.paste]
version = "1.0"
[dependencies.proptest]
version = "1.11.0"
optional = true
[dependencies.redis]
version = "1.2.0"
features = [
"tokio-comp",
"connection-manager",
"cluster",
"cluster-async",
]
optional = true
[dependencies.reinhardt-conf]
version = "0.1.1"
features = [
"settings",
"async",
]
optional = true
[dependencies.reinhardt-core]
version = "0.1.1"
features = [
"types",
"exception",
]
[dependencies.reinhardt-db]
version = "0.1.1"
features = [
"backends",
"migrations",
"mysql",
"orm",
"postgres",
"sqlite",
]
[dependencies.reinhardt-di]
version = "0.1.1"
features = ["testing"]
[dependencies.reinhardt-http]
version = "0.1.1"
[dependencies.reinhardt-query]
version = "0.1.1"
features = ["derive"]
[dependencies.reinhardt-server]
version = "0.1.1"
[dependencies.reinhardt-testkit-macros]
version = "0.1.0"
[dependencies.reinhardt-urls]
version = "0.1.1"
features = ["routers"]
[dependencies.reinhardt-utils]
version = "0.1.1"
features = [
"cache",
"staticfiles",
]
[dependencies.reinhardt-views]
version = "0.1.1"
features = ["viewsets"]
[dependencies.reinhardt-websockets]
version = "0.1.1"
optional = true
[dependencies.reqwest]
version = "0.13.2"
features = [
"json",
"form",
"cookies",
]
[dependencies.rstest]
version = "0.26.1"
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.149"
[dependencies.serde_urlencoded]
version = "0.7"
[dependencies.sqlx]
version = "0.8"
features = [
"runtime-tokio",
"tls-rustls",
"sqlite",
"postgres",
"mysql",
"any",
"macros",
"migrate",
"rust_decimal",
]
optional = true
[dependencies.tempfile]
version = "3.8"
[dependencies.testcontainers]
version = "0.27.2"
features = [
"blocking",
"blocking",
]
optional = true
[dependencies.testcontainers-modules]
version = "0.15.0"
features = [
"postgres",
"mysql",
"redis",
]
optional = true
[dependencies.thiserror]
version = "2.0.18"
[dependencies.tokio]
version = "1.51.0"
features = [
"rt-multi-thread",
"sync",
"time",
"macros",
"net",
"io-util",
]
[dependencies.tokio-tungstenite]
version = "0.28.0"
[dependencies.tokio-util]
version = "0.7"
features = ["compat"]
optional = true
[dependencies.tracing]
version = "0.1.44"
[dependencies.url]
version = "2.5"
[dependencies.urlencoding]
version = "2.1"
[dependencies.uuid]
version = "1.23.0"
features = [
"v4",
"v5",
"v7",
"serde",
]
[dev-dependencies.rstest]
version = "0.26.1"
[dev-dependencies.scopeguard]
version = "1.2"
[dev-dependencies.serial_test]
version = "3.4.0"
[dev-dependencies.tokio]
version = "1.51.0"
features = [
"rt-multi-thread",
"sync",
"time",
"macros",
"net",
"io-util",
"full",
]
[dev-dependencies.tokio-test]
version = "0.4"
[build-dependencies.cfg_aliases]
version = "0.2"
[target.'cfg(not(all(target_family = "wasm", target_os = "unknown")))'.dependencies.reinhardt-auth]
version = "0.1.1"
features = [
"jwt",
"sessions",
]
[target.'cfg(not(all(target_family = "wasm", target_os = "unknown")))'.dependencies.reinhardt-middleware]
version = "0.1.1"
features = ["sessions"]
[target.'cfg(not(all(target_family = "wasm", target_os = "unknown")))'.dependencies.totp-lite]
version = "2.0"