Expose typed Prepared Lower failures

This commit is contained in:
ms2k 2026-07-19 03:18:50 +09:00
commit 30cd36dcdd

View file

@ -69,7 +69,10 @@ fn request_manifest_identity_must_match_verified_layout_manifest() {
let mut request = fixture.request(3, &[(bytes, OCI_TAR)]);
request.selected_manifest_digest = [0xff; 32];
assert!(fixture.store.prepare(&request).is_err());
assert!(matches!(
fixture.store.prepare(&request),
Err(PreparedLowerError::ManifestSelection { .. })
));
let snapshot = fixture.catalog.snapshot().unwrap();
assert!(snapshot.prepared_artifacts.is_empty());
assert!(snapshot.prepare_operations.is_empty());
@ -191,7 +194,10 @@ fn unmapped_nonzero_owners_refuse_before_publication() {
}],
};
assert!(fixture.store.prepare(&request).is_err());
assert!(matches!(
fixture.store.prepare(&request),
Err(PreparedLowerError::Materialization { .. })
));
assert!(
fixture
.catalog
@ -258,7 +264,10 @@ fn hostile_and_corrupt_layers_refuse_without_publication() {
for (index, bytes) in cases.into_iter().enumerate() {
let fixture = Fixture::new();
let request = fixture.request(u8::try_from(index).unwrap() + 10, &[(bytes, OCI_TAR)]);
assert!(fixture.store.prepare(&request).is_err());
assert!(matches!(
fixture.store.prepare(&request),
Err(PreparedLowerError::Materialization { .. })
));
let snapshot = fixture.catalog.snapshot().unwrap();
assert!(snapshot.prepared_artifacts.is_empty());
assert!(snapshot.prepare_operations.is_empty());
@ -291,7 +300,10 @@ fn hostile_and_corrupt_layers_refuse_without_publication() {
.find(|path| std::fs::metadata(path).unwrap().len() > 1024)
.unwrap();
OpenOptionsExt::append_byte(&blob);
assert!(fixture.store.prepare(&request).is_err());
assert!(matches!(
fixture.store.prepare(&request),
Err(PreparedLowerError::LayerValidation { .. })
));
assert!(
fixture
.catalog