[elbe-devel] [PATCH v2 3/9] tests efilesystem: Add tests for copy_fileslist
Olivier Dion
dion at linutronix.de
Mon May 4 20:00:06 CEST 2020
From: Torben Hohn <torben.hohn at linutronix.de>
In buster /bin is just a link to /usr/bin. This poses problems with
elbepack.efilesystem.copy_filelist() for example when the link is
absolute.
Write 2 testcases for the usrmerge case.
Signed-off-by: Torben Hohn <torben.hohn at linutronix.de>
Signed-off-by: Olivier Dion <dion at linutronix.de>
---
elbepack/tests/test_efilesystem.py | 45 ++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)
create mode 100644 elbepack/tests/test_efilesystem.py
diff --git a/elbepack/tests/test_efilesystem.py b/elbepack/tests/test_efilesystem.py
new file mode 100644
index 00000000..cdf713ca
--- /dev/null
+++ b/elbepack/tests/test_efilesystem.py
@@ -0,0 +1,45 @@
+
+import unittest
+
+from elbepack.filesystem import TmpdirFilesystem
+from elbepack.efilesystem import copy_filelist
+
+class TestCopyFilelist(unittest.TestCase):
+
+ def setUp(self):
+ self.src = TmpdirFilesystem()
+ self.dst = TmpdirFilesystem()
+
+ def test_usrmerge_abs(self):
+
+ self.src.mkdir_p('/usr/bin')
+
+ # this will link to /usr/bin in the host RFS,
+ # when no special logic is applied.
+ self.src.symlink('/usr/bin', '/bin')
+
+ self.src.write_file('/bin/bla', 0o644, 'bla')
+
+ copy_filelist(self.src, ['/bin/bla'], self.dst)
+
+ # We should now have the same content from /SRC/usr/bin/bla in
+ # /DST/usr/bin/bla
+ self.assertEqual(self.src.read_file('/usr/bin/bla'),
+ self.dst.read_file('/usr/bin/bla'))
+
+ def test_usrmerge_rel(self):
+
+ self.src.mkdir_p('/usr/bin')
+
+ # create a proper relative path, that should
+ # work fine from inside.
+ self.src.symlink('usr/bin', '/bin')
+
+ self.src.write_file('/bin/bla', 0o644, 'bla')
+
+ copy_filelist(self.src, ['/bin/bla'], self.dst)
+
+ # We should now have the same content from /SRC/usr/bin/bla in
+ # /DST/usr/bin/bla
+ self.assertEqual(self.src.read_file('/usr/bin/bla'),
+ self.dst.read_file('/usr/bin/bla'))
--
2.26.2
More information about the elbe-devel
mailing list