def test_tar_out(self): image = pjoin(self.tmpdir, 'image.img') data = self._prepare_data() prepare_data_image(image, data, size="20M") outdir = pjoin(self.tmpdir, 'outdir') os.mkdir(outdir) outfile = pjoin(outdir, "out.tar") extract_from_image(image, outfile, path='/', use_tar=True) assert pexists(outfile)
def test_read_file(self): image = pjoin(self.tmpdir, 'image.img') data = self._prepare_data() prepare_data_image(image, data, size="20M") outdir = pjoin(self.tmpdir, 'outdir') os.mkdir(outdir) extract_from_image(image, outdir, path='/testfile', use_tar=False) with open(pjoin(outdir, 'testfile')) as f: assert f.read() == 'hi'
def _prepare_base_image(self): data = pjoin(self.tmpdir, 'data') os.mkdir(data) with open(pjoin(data, 'testfile'), 'w') as f: f.write('hi') image = prepare_data_image(self.base_image, data, size="50M") return image
def test_invalid_size(self): image = pjoin(self.tmpdir, 'image.img') data = self._prepare_data() with pytest.raises(subprocess.CalledProcessError): prepare_data_image(image, data, size="5gb")
def test_invalid_type(self): image = pjoin(self.tmpdir, 'image.img') data = self._prepare_data() with pytest.raises(subprocess.CalledProcessError): prepare_data_image(image, data, type="no_such_fs_type")
def test_exists(self): image = pjoin(self.tmpdir, 'image.img') data = self._prepare_data() prepare_data_image(image, data, size="20M") assert pexists(image)