// file: crates/ksp-app-store-desk/tests/dependency_boundary.rs // version: 3 //! Dependency-boundary tests for the Store Desk application. #[test] fn pre_006_manifest_uses_store_facade_without_physical_or_transport_dependencies() { let manifest = include_str!("../Cargo.toml"); for forbidden in [ "ksp-store-api", "ksp-store-postgres-lib", "ksp-onchain-transport-lib", "ksp-offchain-transport-lib", "ksp-job-api", "ksp-job-backfill-lib", "reqwest", "tokio-postgres", "deadpool-postgres", ] { assert!(!manifest.contains(forbidden), "forbidden Store Desk dependency present: {forbidden}"); } for required in ["ksp-config-lib", "ksp-core-lib", "ksp-logging-lib", "ksp-store-lib", "tauri-plugin-tracing"] { assert!(manifest.contains(required), "required Store Desk dependency missing: {required}"); } } #[test] fn pre_006_store_open_is_owned_by_store_runtime_and_never_escapes_to_physical_sql() { let bootstrap = include_str!("../src/bootstrap.rs"); let store_runtime = include_str!("../src/store_runtime.rs"); let app_state = include_str!("../src/app_state.rs"); let tauri = include_str!("../src/tauri.rs"); assert!(!bootstrap.contains("Store::open")); assert!(store_runtime.contains("ksp_store_lib::Store::open")); assert!(store_runtime.contains("store.runtime_snapshot()")); assert!(store_runtime.contains("store.health().await")); assert!(store_runtime.contains("store.close().await")); let sources = [bootstrap, store_runtime, app_state, tauri].join("\n"); for forbidden in ["tokio_postgres", "deadpool_postgres", "SELECT ", "INSERT ", "UPDATE ", "DELETE ", "ksp_store_api", "ksp_store_postgres"] { assert!(!sources.contains(forbidden), "Store Desk leaked forbidden physical Store surface: {forbidden}"); } }