예제 #1
0
    def test_tar(self):
        mock = MagicMock(return_value='salt')
        with patch.dict(archive.__salt__, {'cmd.run': mock}):
            ret = archive.tar(
                '-zcvf', 'foo.tar',
                ['/tmp/something-to-compress-1',
                 '/tmp/something-to-compress-2'],
                template=None
            )
            self.assertEqual(['salt'], ret)
            mock.assert_called_once_with(
                ['tar', '-zcvf', 'foo.tar', '/tmp/something-to-compress-1',
                 '/tmp/something-to-compress-2'],
                runas=None, python_shell=False, template=None, cwd=None
            )

        mock = MagicMock(return_value='salt')
        with patch.dict(archive.__salt__, {'cmd.run': mock}):
            ret = archive.tar(
                '-zcvf', 'foo.tar',
                '/tmp/something-to-compress-1,/tmp/something-to-compress-2',
                template=None
            )
            self.assertEqual(['salt'], ret)
            mock.assert_called_once_with(
                ['tar', '-zcvf', 'foo.tar', '/tmp/something-to-compress-1',
                 '/tmp/something-to-compress-2'],
                runas=None, python_shell=False, template=None, cwd=None
            )
예제 #2
0
    def test_tar(self):
        mock = MagicMock(return_value='salt')
        with patch.dict(archive.__salt__, {'cmd.run': mock}):
            ret = archive.tar(
                'zcvf', 'foo.tar',
                ['/tmp/something-to-compress-1',
                 '/tmp/something-to-compress-2'],
                cwd=None, template=None
            )
            self.assertEqual(['salt'], ret)
            mock.assert_called_once_with(
                'tar -zcvf foo.tar /tmp/something-to-compress-1 '
                '/tmp/something-to-compress-2',
                cwd=None,
                template=None
            )

        mock = MagicMock(return_value='salt')
        with patch.dict(archive.__salt__, {'cmd.run': mock}):
            ret = archive.tar(
                'zcvf', 'foo.tar',
                '/tmp/something-to-compress-1,/tmp/something-to-compress-2',
                cwd=None, template=None
            )
            self.assertEqual(['salt'], ret)
            mock.assert_called_once_with(
                'tar -zcvf foo.tar /tmp/something-to-compress-1 '
                '/tmp/something-to-compress-2',
                cwd=None,
                template=None
            )
예제 #3
0
def test_tar_raises_exception_if_not_found():
    with patch("salt.utils.path.which", lambda exe: None):
        mock = MagicMock(return_value="salt")
        with patch.dict(archive.__salt__, {"cmd.run": mock}):
            with pytest.raises(CommandNotFoundError):
                archive.tar("zxvf", "foo.tar", "/tmp/something-to-compress")
            assert not mock.called
예제 #4
0
def test_tar_unpack(unicode_filename):
    """
    Validate using the tar function to extract archives
    """
    with Archive("tar", unicode_filename=unicode_filename) as arch:
        ret = archive.tar("-cvf", str(arch.archive), sources=str(arch.src))
        assert isinstance(ret, list)
        arch.assert_artifacts_in_ret(ret)

        ret = archive.tar("-xvf", str(arch.archive), dest=str(arch.dst))
        assert isinstance(ret, list)
        arch.assert_artifacts_in_ret(ret)
예제 #5
0
def test_tar():
    with patch("glob.glob", lambda pathname: [pathname]):
        with patch("salt.utils.path.which", lambda exe: exe):
            mock = MagicMock(return_value="salt")
            with patch.dict(archive.__salt__, {"cmd.run": mock}):
                ret = archive.tar(
                    "-zcvf",
                    "foo.tar",
                    [
                        "/tmp/something-to-compress-1",
                        "/tmp/something-to-compress-2"
                    ],
                    template=None,
                )
                assert ["salt"] == ret
                mock.assert_called_once_with(
                    [
                        "tar",
                        "-zcvf",
                        "foo.tar",
                        "/tmp/something-to-compress-1",
                        "/tmp/something-to-compress-2",
                    ],
                    runas=None,
                    python_shell=False,
                    template=None,
                    cwd=None,
                )

            mock = MagicMock(return_value="salt")
            with patch.dict(archive.__salt__, {"cmd.run": mock}):
                ret = archive.tar(
                    "-zcvf",
                    "foo.tar",
                    "/tmp/something-to-compress-1,/tmp/something-to-compress-2",
                    template=None,
                )
                assert ["salt"] == ret
                mock.assert_called_once_with(
                    [
                        "tar",
                        "-zcvf",
                        "foo.tar",
                        "/tmp/something-to-compress-1",
                        "/tmp/something-to-compress-2",
                    ],
                    runas=None,
                    python_shell=False,
                    template=None,
                    cwd=None,
                )