Beispiel #1
0
    def test_mksquashfs_options(self):
        "Test XarFactory uses mksquashfs option in SquashfsOptions"
        # Make a boring xar file.
        srcdir = self.make_test_skeleton()

        tf = tempfile.NamedTemporaryFile(delete=False)
        xar = xar_util.XarFactory(srcdir, tf.name, xar_builder.BORING_SHEBANG)
        xar.squashfs_options.mksquashfs = "bogus_mksquashfs_path"
        with self.assertRaises(Exception):
            xar.go()
Beispiel #2
0
 def _build_staging_dir(self, staging_dir, filename, shebang, xar_header,
                        squashfs_options):
     """Builds a single XAR."""
     self._ensure_frozen()
     os.chmod(staging_dir.path(), 0o755)
     xar = xar_util.XarFactory(staging_dir.path(), filename, shebang)
     if xar_header is not None:
         xar.xar_header = xar_header.copy()
     xar.version = self._version
     xar.version = self._version
     if self._sort_file:
         xar.sort_file = self._sort_file.name()
     xar.squashfs_options = squashfs_options
     xar.go()
Beispiel #3
0
    def test_xar_factory(self):
        "Test XarFactory and XarReader"

        # Make a boring xar file.
        srcdir = self.make_test_skeleton()

        tf = tempfile.NamedTemporaryFile(delete=False)
        xar = xar_util.XarFactory(srcdir, tf.name, xar_builder.BORING_SHEBANG)
        xar.squashfs_options.compression_algorithm = "gzip"
        xar.squashfs_options.block_size = 4096
        xar.go()

        outdir = os.path.join(tempfile.mkdtemp(), "squashfs-root")
        self._unxar(tf.name, outdir)
        self.assertDirectoryEqual(srcdir, outdir)
Beispiel #4
0
    def test_long_header(self):
        """Test headers longer than 4096 bytes"""
        # Make a boring xar file.
        srcdir = self.make_test_skeleton()

        tf = tempfile.NamedTemporaryFile(delete=False)
        xar = xar_util.XarFactory(srcdir, tf.name, xar_builder.BORING_SHEBANG)
        xar.squashfs_options.compression_algorithm = "gzip"
        xar.squashfs_options.block_size = 4096
        xar.xar_header["IGNORED"] = "0" * 5000
        xar.go()

        outdir = os.path.join(tempfile.mkdtemp(), "squashfs-root")
        self._unxar(tf.name, outdir)
        self.assertDirectoryEqual(srcdir, outdir)