From: Dan Nicholson Date: Wed, 23 Oct 2019 15:10:06 +0000 (-0600) Subject: tests/sizes: Test that sizes metadata is not reused X-Git-Tag: archive/raspbian/2022.1-3+rpi1~1^2~4^2~12^2~13^2~6 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=4f1b991246dbc67ab7176842a61f3022bed5aad5;p=ostree.git tests/sizes: Test that sizes metadata is not reused Ensure that the object sizes hash table is cleared after a commit and not only when the repo is closed. --- diff --git a/tests/test-sizes.js b/tests/test-sizes.js index a3928fe8..46848905 100755 --- a/tests/test-sizes.js +++ b/tests/test-sizes.js @@ -118,7 +118,7 @@ function validateSizes(repo, commit, expectedFiles) { } } -print('1..2') +print('1..3') let testDataDir = Gio.File.new_for_path('test-data'); testDataDir.make_directory(null); @@ -157,6 +157,23 @@ validateSizes(repo, commit, expectedFiles); print("ok test-sizes"); +// Remove a file to make sure that metadata is not reused from the +// previous commit +testDataDir.get_child('another-file').delete(null); +delete expectedFiles['f5ee222a21e2c96edbd6f2543c4bc8a039f827be3823d04777c9ee187778f1ad']; + +repo.prepare_transaction(null); +mtree = OSTree.MutableTree.new(); +repo.write_directory_to_mtree(testDataDir, mtree, commitModifier, null); +[,dirTree] = repo.write_mtree(mtree, null); +[,commit] = repo.write_commit(null, 'Some subject', 'Some body', null, dirTree, null); +print("commit => " + commit); +repo.commit_transaction(null); + +validateSizes(repo, commit, expectedFiles); + +print("ok test-sizes file deleted"); + // Repeat the commit now that all the objects are cached and ensure the // metadata is still correct repo.prepare_transaction(null);