summaryrefslogtreecommitdiff
path: root/morphlib/bins_tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'morphlib/bins_tests.py')
-rw-r--r--morphlib/bins_tests.py19
1 files changed, 13 insertions, 6 deletions
diff --git a/morphlib/bins_tests.py b/morphlib/bins_tests.py
index 86b55746..90c8cc0a 100644
--- a/morphlib/bins_tests.py
+++ b/morphlib/bins_tests.py
@@ -66,9 +66,11 @@ class ChunkTests(BinsTest):
self.tempdir = tempfile.mkdtemp()
self.instdir = os.path.join(self.tempdir, 'inst')
self.chunk_file = os.path.join(self.tempdir, 'chunk')
+ self.chunk_f = open(self.chunk_file, 'wb')
self.unpacked = os.path.join(self.tempdir, 'unpacked')
def tearDown(self):
+ self.chunk_f.close()
shutil.rmtree(self.tempdir)
def populate_instdir(self):
@@ -92,8 +94,8 @@ class ChunkTests(BinsTest):
def test_empties_everything(self):
self.populate_instdir()
- morphlib.bins.create_chunk(self.instdir, self.chunk_file, ['.'],
- self.ex)
+ morphlib.bins.create_chunk(self.instdir, self.chunk_f, ['.'], self.ex)
+ self.chunk_f.flush()
empty = os.path.join(self.tempdir, 'empty')
os.mkdir(empty)
self.assertEqual([x for x,y in self.recursive_lstat(self.instdir)],
@@ -102,16 +104,17 @@ class ChunkTests(BinsTest):
def test_creates_and_unpacks_chunk_exactly(self):
self.populate_instdir()
orig_files = self.recursive_lstat(self.instdir)
- morphlib.bins.create_chunk(self.instdir, self.chunk_file, ['.'],
- self.ex)
+ morphlib.bins.create_chunk(self.instdir, self.chunk_f, ['.'], self.ex)
+ self.chunk_f.flush()
os.mkdir(self.unpacked)
morphlib.bins.unpack_binary(self.chunk_file, self.unpacked, self.ex)
self.assertEqual(orig_files, self.recursive_lstat(self.unpacked))
def test_uses_only_matching_names(self):
self.populate_instdir()
- morphlib.bins.create_chunk(self.instdir, self.chunk_file, ['bin'],
+ morphlib.bins.create_chunk(self.instdir, self.chunk_f, ['bin'],
self.ex)
+ self.chunk_f.flush()
os.mkdir(self.unpacked)
morphlib.bins.unpack_binary(self.chunk_file, self.unpacked, self.ex)
self.assertEqual([x for x,y in self.recursive_lstat(self.unpacked)],
@@ -119,6 +122,7 @@ class ChunkTests(BinsTest):
self.assertEqual([x for x,y in self.recursive_lstat(self.instdir)],
['.', 'lib', 'lib/libfoo.so'])
+
class StratumTests(BinsTest):
def setUp(self):
@@ -126,9 +130,11 @@ class StratumTests(BinsTest):
self.tempdir = tempfile.mkdtemp()
self.instdir = os.path.join(self.tempdir, 'inst')
self.stratum_file = os.path.join(self.tempdir, 'stratum')
+ self.stratum_f = open(self.stratum_file, 'wb')
self.unpacked = os.path.join(self.tempdir, 'unpacked')
def tearDown(self):
+ self.stratum_f.close()
shutil.rmtree(self.tempdir)
def populate_instdir(self):
@@ -137,7 +143,8 @@ class StratumTests(BinsTest):
def test_creates_and_unpacks_stratum_exactly(self):
self.populate_instdir()
- morphlib.bins.create_stratum(self.instdir, self.stratum_file, self.ex)
+ morphlib.bins.create_stratum(self.instdir, self.stratum_f, self.ex)
+ self.stratum_f.flush()
os.mkdir(self.unpacked)
morphlib.bins.unpack_binary(self.stratum_file, self.unpacked, self.ex)
self.assertEqual(self.recursive_lstat(self.instdir),