wabot-testing 0.1.0

Test harnesses for Wabot: a scriptable LLM adapter plus chat-bot and agent harnesses that drive the real production paths.
Documentation
[package]
name = "wabot-testing"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
description = "Test harnesses for Wabot: a scriptable LLM adapter plus chat-bot and agent harnesses that drive the real production paths."
keywords = ["wabot", "framework", "testing", "harness", "llm"]
categories = ["development-tools::testing", "web-programming"]
readme = "README.md"
documentation = "https://docs.rs/wabot-testing"

[dependencies]
wabot-core             = { workspace = true }
wabot-feature-tool     = { workspace = true }
wabot-feature-mindset  = { workspace = true }
wabot-feature-agent    = { workspace = true }
wabot-feature-chat-bot = { workspace = true }
wabot-macros           = { workspace = true }
wabot-feature-rest-controller = { workspace = true, optional = true }
wabot-feature-async    = { workspace = true, optional = true }
wabot-feature-ui-controller = { workspace = true, optional = true }
wabot-addon-async-in-memory = { workspace = true, optional = true }
chrono                 = { workspace = true, optional = true }
tower                  = { workspace = true, optional = true }

tokio       = { workspace = true }
serde       = { workspace = true }
serde_json  = { workspace = true }
async-trait = { workspace = true }
thiserror   = { workspace = true }
parking_lot = { workspace = true }

[features]
default = ["chatbot", "rest", "async-jobs", "ui"]
# The chat-bot and agent harnesses.
chatbot = []
# The REST harness. Optional so a project testing only its chat stack
# doesn't compile axum + tower into its test binaries.
rest = ["dep:wabot-feature-rest-controller", "dep:tower"]
# The async/cron harness.
async-jobs = ["dep:wabot-feature-async", "dep:wabot-addon-async-in-memory", "dep:chrono"]
# The UI harness. Builds on the REST one, since UI controllers are
# served by the same stack.
ui = ["rest", "dep:wabot-feature-ui-controller"]

[dev-dependencies]
# The live judge test drives a real provider.
wabot-addon-chat-bot-openrouter = { workspace = true }
wabot-addon-chat-bot-openai     = { workspace = true }