25 lines
906 B
Rust
25 lines
906 B
Rust
use wip_host::CallErrorKind;
|
|
use wip_protocol::{INTERFACE_FORMAT_V1, ProtocolErrorCode};
|
|
use wip_public_api_example::{PublishOutcome, run};
|
|
|
|
#[test]
|
|
fn public_crates_support_the_complete_end_to_end_scenario() {
|
|
let report = run().unwrap();
|
|
|
|
assert_eq!(report.published_interfaces.len(), 2);
|
|
assert_eq!(report.catalog_descriptor_format, INTERFACE_FORMAT_V1);
|
|
assert_eq!(report.audit_descriptor_format, INTERFACE_FORMAT_V1);
|
|
assert_eq!(
|
|
report.published,
|
|
PublishOutcome::Published("article-1".into())
|
|
);
|
|
assert_eq!(
|
|
report.rejected,
|
|
PublishOutcome::Rejected("a title is required".into())
|
|
);
|
|
assert_eq!(report.catalog_status, "catalog-ready");
|
|
assert_eq!(report.audit_status, "audit-ready");
|
|
assert_eq!(report.host_failure, CallErrorKind::Implementation);
|
|
assert_eq!(report.protocol_failure.code, ProtocolErrorCode::Internal);
|
|
}
|