[package]
edition = "2021"
name = "mockforge-sdk"
version = "0.3.85"
authors = ["SaaSy Solutions LLC <ray.clanan@saasysolutionsllc.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Developer SDK for embedding MockForge in tests and applications"
homepage = "https://mockforge.dev"
documentation = "https://docs.rs/mockforge"
readme = "README.md"
keywords = [
"mock",
"api",
"testing",
"grpc",
"websocket",
]
categories = [
"development-tools",
"api-bindings",
"web-programming",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/SaaSy-Solutions/mockforge"
[features]
all-protocols = [
"http",
"websocket",
"grpc",
"graphql",
]
default = [
"http",
"websocket",
"grpc",
"graphql",
]
graphql = ["mockforge-graphql"]
grpc = ["mockforge-grpc"]
http = []
websocket = ["mockforge-ws"]
[lib]
name = "mockforge_sdk"
crate-type = [
"cdylib",
"rlib",
]
path = "src/lib.rs"
[[test]]
name = "admin_api_tests"
path = "tests/admin_api_tests.rs"
[[test]]
name = "dynamic_stub_tests"
path = "tests/dynamic_stub_tests.rs"
[[test]]
name = "error_handling_tests"
path = "tests/error_handling_tests.rs"
[[test]]
name = "integration_tests"
path = "tests/integration_tests.rs"
[[test]]
name = "port_discovery_tests"
path = "tests/port_discovery_tests.rs"
[dependencies.anyhow]
version = "1"
[dependencies.axum]
version = "0.8"
features = [
"ws",
"multipart",
]
[dependencies.libc]
version = "0.2"
[dependencies.mockforge-core]
version = "0.3.70"
[dependencies.mockforge-data]
version = "0.3.70"
[dependencies.mockforge-graphql]
version = "0.3.70"
optional = true
[dependencies.mockforge-grpc]
version = "0.3.70"
optional = true
[dependencies.mockforge-http]
version = "0.3.70"
[dependencies.mockforge-observability]
version = "0.3.70"
[dependencies.mockforge-ws]
version = "0.3.70"
optional = true
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.0"
features = [
"rt-multi-thread",
"macros",
"net",
"time",
"sync",
"fs",
"full",
]
[dependencies.tower]
version = "0.5"
[dependencies.tower-http]
version = "0.6"
features = [
"fs",
"cors",
"trace",
"compression-full",
]
[dependencies.tracing]
version = "0.1"
[dependencies.uuid]
version = "1.0"
features = ["v4"]
[dev-dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
[dev-dependencies.tokio-test]
version = "0.4"
[lints.clippy]
multiple_crate_versions = "allow"
[lints.clippy.cargo]
level = "warn"
priority = -1
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
dead_code = "allow"
missing_docs = "warn"
private_interfaces = "allow"
unreachable_pub = "warn"
unsafe_code = "deny"
unused_imports = "allow"
unused_qualifications = "warn"
unused_variables = "allow"