summaryrefslogtreecommitdiff
path: root/tests/test_recursiveloader.py
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2017-12-02 12:14:01 +0100
committerMichał Górny <mgorny@gentoo.org>2017-12-02 12:14:01 +0100
commit330b913fa4ab45f1d2e267744267e2e2c8bb0aa2 (patch)
tree4b9b34949d3e7d125cbd762c8575c9c4fe95197b /tests/test_recursiveloader.py
parent8be8eb643a8a1d44d37d7e4b2e650f893ef5edb0 (diff)
downloadgemato-330b913fa4ab45f1d2e267744267e2e2c8bb0aa2.tar.gz
recursiveloader: Ignore Manifest mismatches when updating
Diffstat (limited to 'tests/test_recursiveloader.py')
-rw-r--r--tests/test_recursiveloader.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/test_recursiveloader.py b/tests/test_recursiveloader.py
index 6d2aa96..eb7eb48 100644
--- a/tests/test_recursiveloader.py
+++ b/tests/test_recursiveloader.py
@@ -2629,3 +2629,19 @@ DATA test 0 MD5 d41d8cd98f00b204e9800998ecf8427e
self.assertRaises(gemato.exceptions.ManifestMismatch,
m.load_manifests_for_path, '', recursive=True)
self.assertNotIn('a/Manifest', m.loaded_manifests)
+
+ def test_update_entries_for_directory(self):
+ """
+ update_entries_for_directory() should ignore Manifest mismatches
+ since it's rewriting Manifests anyway.
+ """
+ m = gemato.recursiveloader.ManifestRecursiveLoader(
+ os.path.join(self.dir, 'Manifest'),
+ hashes=['MD5'])
+ m.update_entries_for_directory('')
+ self.assertIsNotNone(m.find_path_entry('a/test'))
+ m.save_manifests()
+ with io.open(os.path.join(self.dir, 'Manifest'),
+ 'r', encoding='utf8') as f:
+ self.assertNotEqual(f.read(), self.FILES['Manifest'].lstrip())
+ m.assert_directory_verifies()