summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2017-10-25 01:02:16 +0200
committerMichał Górny <mgorny@gentoo.org>2017-10-25 01:02:16 +0200
commit7919b84bf3b1334d252156d2a8be756e054769bb (patch)
tree6c10dd3613e9ee4dee4eebe5deb59417eb0adaa2
parent88f5d6f27da873d0c506921472c34324d95013f3 (diff)
downloadgemato-7919b84bf3b1334d252156d2a8be756e054769bb.tar.gz
test_recursiveloader: Add more tests
-rw-r--r--tests/test_recursiveloader.py50
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/test_recursiveloader.py b/tests/test_recursiveloader.py
index d8a318c..05e82c4 100644
--- a/tests/test_recursiveloader.py
+++ b/tests/test_recursiveloader.py
@@ -231,6 +231,12 @@ DATA test 0 MD5 d41d8cd98f00b204e9800998ecf8427e
self.assertRaises(gemato.exceptions.ManifestMismatch,
m.assert_directory_verifies, 'sub')
+ def test_assert_directory_verifies_stray_file_nonstrict(self):
+ m = gemato.recursiveloader.ManifestRecursiveLoader(
+ os.path.join(self.dir, 'Manifest'))
+ self.assertRaises(gemato.exceptions.ManifestMismatch,
+ m.assert_directory_verifies, 'sub', strict=False)
+
class MultipleManifestTest(TempDirTestCase):
DIRS = ['sub']
@@ -655,6 +661,13 @@ IGNORE bar
'bar/baz': u'test',
}
+ def test_find_path_entry(self):
+ m = gemato.recursiveloader.ManifestRecursiveLoader(
+ os.path.join(self.dir, 'Manifest'))
+ self.assertEqual(m.find_path_entry('foo').path, 'foo')
+ self.assertEqual(m.find_path_entry('bar').path, 'bar')
+ self.assertEqual(m.find_path_entry('bar/baz').path, 'bar')
+
def test_assert_directory_verifies(self):
m = gemato.recursiveloader.ManifestRecursiveLoader(
os.path.join(self.dir, 'Manifest'))
@@ -795,3 +808,40 @@ IGNORE sub
m = gemato.recursiveloader.ManifestRecursiveLoader(
os.path.join(self.dir, 'Manifest'))
m.assert_directory_verifies('')
+
+
+class DotfileManifestTest(TempDirTestCase):
+ """
+ Test for implicitly ignoring dotfiles.
+ """
+
+ DIRS = ['.bar']
+ FILES = {
+ 'Manifest': u'',
+ '.foo': u'',
+ '.bar/baz': u'',
+ }
+
+ def test_assert_directory_verifies(self):
+ m = gemato.recursiveloader.ManifestRecursiveLoader(
+ os.path.join(self.dir, 'Manifest'))
+ m.assert_directory_verifies()
+
+
+class DirectoryInPlaceOfFileManifestTest(TempDirTestCase):
+ """
+ Test a tree where an expected file was replaced by a directory.
+ """
+
+ DIRS = ['test']
+ FILES = {
+ 'Manifest': u'''
+DATA test 0 MD5 d41d8cd98f00b204e9800998ecf8427e
+'''
+ }
+
+ def test_assert_directory_verifies(self):
+ m = gemato.recursiveloader.ManifestRecursiveLoader(
+ os.path.join(self.dir, 'Manifest'))
+ self.assertRaises(gemato.exceptions.ManifestMismatch,
+ m.assert_directory_verifies)