Skip to content

Commit f35358e

Browse files
committed
tests: Diff manifests if digest is different
To debug #1172 Signed-off-by: Colin Walters <[email protected]>
1 parent 8e2cf08 commit f35358e

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

ostree-ext/src/fixture.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -950,7 +950,7 @@ pub struct NonOstreeFixture {
950950
_tempdir: tempfile::TempDir,
951951
pub dir: Arc<Dir>,
952952
pub path: Utf8PathBuf,
953-
src_oci: ocidir::OciDir,
953+
pub src_oci: ocidir::OciDir,
954954
destrepo: ostree::Repo,
955955

956956
pub bootable: bool,

ostree-ext/tests/it/main.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1334,6 +1334,20 @@ async fn test_non_ostree() -> Result<()> {
13341334

13351335
let imgref = fixture.export_container().await.unwrap().0;
13361336
let imp = fixture.must_import(&imgref).await?;
1337+
if imp.manifest_digest != src_digest {
1338+
let src_manifest: oci_image::ImageManifest = {
1339+
let idx = fixture.src_oci.read_index()?.unwrap();
1340+
let manifest = idx
1341+
.manifests()
1342+
.iter()
1343+
.find(|m| m.digest() == &src_digest)
1344+
.unwrap();
1345+
fixture.src_oci.read_json_blob(manifest)?
1346+
};
1347+
let src_manifest = serde_json::to_string_pretty(&src_manifest).unwrap();
1348+
let dest_manifest = serde_json::to_string_pretty(&imp.manifest).unwrap();
1349+
similar_asserts::assert_eq!(&src_manifest, &dest_manifest);
1350+
}
13371351
assert_eq!(imp.manifest_digest, src_digest);
13381352
Ok(())
13391353
}

0 commit comments

Comments
 (0)