v0.1.1-pre.002

This commit is contained in:
2026-08-14 15:12:38 +02:00
parent 27a6715a3e
commit 72ddabd9f2
7 changed files with 465 additions and 11 deletions

View File

@@ -0,0 +1,22 @@
// file: crates/ksp-core-lib/tests/public_api.rs
// version: 1
fn public_result() -> ksp_core_lib::Result<()> {
let error = ksp_core_lib::Error::new(ksp_core_lib::ErrorCode::new("consumer", "failed"), "consumer failure").with_context("operation", "public_api");
return std::result::Result::Err(error);
}
#[test]
fn error_contract_is_consumable_from_crate_root() {
let result = public_result();
assert!(result.is_err());
let error = match result {
std::result::Result::Ok(()) => return,
std::result::Result::Err(error) => error,
};
assert_eq!(error.code(), ksp_core_lib::ErrorCode::new("consumer", "failed"));
assert_eq!(error.message(), "consumer failure");
assert_eq!(error.context(), &[ksp_core_lib::ErrorContext::new("operation", "public_api")]);
assert_eq!(std::string::ToString::to_string(&error), "consumer.failed: consumer failure");
return;
}