mirror of
https://github.com/gryf/fs-uae-wrapper.git
synced 2026-02-03 14:55:53 +01:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 77cf10cee7 |
@@ -53,6 +53,15 @@ class TarArchive(Archive):
|
|||||||
EXTRACT = ['xf']
|
EXTRACT = ['xf']
|
||||||
ARCH = 'tar'
|
ARCH = 'tar'
|
||||||
|
|
||||||
|
def create(self, arch_name, files=None):
|
||||||
|
files = files if files else sorted(os.listdir('.'))
|
||||||
|
result = subprocess.call([self._compess] + self.ADD + [arch_name] +
|
||||||
|
files)
|
||||||
|
if result != 0:
|
||||||
|
sys.stderr.write("Unable to create archive `%s'\n" % arch_name)
|
||||||
|
return False
|
||||||
|
return True
|
||||||
|
|
||||||
|
|
||||||
class TarGzipArchive(TarArchive):
|
class TarGzipArchive(TarArchive):
|
||||||
ADD = ['zcf']
|
ADD = ['zcf']
|
||||||
|
|||||||
2
setup.py
2
setup.py
@@ -7,7 +7,7 @@ from distutils.core import setup
|
|||||||
|
|
||||||
setup(name='fs-uae-wrapper',
|
setup(name='fs-uae-wrapper',
|
||||||
packages=['fs_uae_wrapper'],
|
packages=['fs_uae_wrapper'],
|
||||||
version='0.5',
|
version='0.6',
|
||||||
description='Automate archives and state for fs-uae',
|
description='Automate archives and state for fs-uae',
|
||||||
author='Roman Dobosz',
|
author='Roman Dobosz',
|
||||||
author_email='gryf73@gmail.com',
|
author_email='gryf73@gmail.com',
|
||||||
|
|||||||
@@ -60,61 +60,73 @@ class TestArchive(TestCase):
|
|||||||
self.assertFalse(arch.extract('foo'))
|
self.assertFalse(arch.extract('foo'))
|
||||||
call.assert_called_once_with(['false', 'x', 'foo'])
|
call.assert_called_once_with(['false', 'x', 'foo'])
|
||||||
|
|
||||||
|
@mock.patch('os.path.exists')
|
||||||
@mock.patch('fs_uae_wrapper.path.which')
|
@mock.patch('fs_uae_wrapper.path.which')
|
||||||
@mock.patch('subprocess.call')
|
@mock.patch('subprocess.call')
|
||||||
def test_tar(self, call, which):
|
def test_tar(self, call, which, exists):
|
||||||
with open('foo', 'w') as fobj:
|
with open('foo', 'w') as fobj:
|
||||||
fobj.write('\n')
|
fobj.write('\n')
|
||||||
|
|
||||||
which.return_value = 'tar'
|
which.return_value = 'tar'
|
||||||
|
exists.return_value = True
|
||||||
|
|
||||||
arch = file_archive.TarArchive()
|
arch = file_archive.TarArchive()
|
||||||
arch.archiver = 'tar'
|
arch.archiver = 'tar'
|
||||||
call.return_value = 0
|
call.return_value = 0
|
||||||
|
|
||||||
self.assertTrue(arch.create('foo'))
|
self.assertTrue(arch.create('foo.tar'))
|
||||||
call.assert_called_once_with(['tar', 'cf', 'foo', '.'])
|
call.assert_called_once_with(['tar', 'cf', 'foo.tar', 'foo'])
|
||||||
|
|
||||||
call.reset_mock()
|
call.reset_mock()
|
||||||
call.return_value = 1
|
call.return_value = 1
|
||||||
self.assertFalse(arch.extract('foo'))
|
self.assertFalse(arch.extract('foo.tar'))
|
||||||
call.assert_called_once_with(['tar', 'xf', 'foo'])
|
call.assert_called_once_with(['tar', 'xf', 'foo.tar'])
|
||||||
|
|
||||||
call.reset_mock()
|
call.reset_mock()
|
||||||
arch = file_archive.TarGzipArchive()
|
arch = file_archive.TarGzipArchive()
|
||||||
arch.archiver = 'tar'
|
arch.archiver = 'tar'
|
||||||
call.return_value = 0
|
call.return_value = 0
|
||||||
self.assertTrue(arch.create('foo'))
|
self.assertTrue(arch.create('foo.tgz'))
|
||||||
call.assert_called_once_with(['tar', 'zcf', 'foo', '.'])
|
call.assert_called_once_with(['tar', 'zcf', 'foo.tgz', 'foo'])
|
||||||
|
|
||||||
call.reset_mock()
|
call.reset_mock()
|
||||||
call.return_value = 1
|
call.return_value = 1
|
||||||
self.assertFalse(arch.extract('foo'))
|
self.assertFalse(arch.extract('foo.tgz'))
|
||||||
call.assert_called_once_with(['tar', 'xf', 'foo'])
|
call.assert_called_once_with(['tar', 'xf', 'foo.tgz'])
|
||||||
|
|
||||||
call.reset_mock()
|
call.reset_mock()
|
||||||
arch = file_archive.TarBzip2Archive()
|
arch = file_archive.TarBzip2Archive()
|
||||||
arch.archiver = 'tar'
|
arch.archiver = 'tar'
|
||||||
call.return_value = 0
|
call.return_value = 0
|
||||||
self.assertTrue(arch.create('foo'))
|
self.assertTrue(arch.create('foo.tar.bz2'))
|
||||||
call.assert_called_once_with(['tar', 'jcf', 'foo', '.'])
|
call.assert_called_once_with(['tar', 'jcf', 'foo.tar.bz2', 'foo'])
|
||||||
|
|
||||||
call.reset_mock()
|
call.reset_mock()
|
||||||
call.return_value = 1
|
call.return_value = 1
|
||||||
self.assertFalse(arch.extract('foo'))
|
self.assertFalse(arch.extract('foo.tar.bz2'))
|
||||||
call.assert_called_once_with(['tar', 'xf', 'foo'])
|
call.assert_called_once_with(['tar', 'xf', 'foo.tar.bz2'])
|
||||||
|
|
||||||
call.reset_mock()
|
call.reset_mock()
|
||||||
arch = file_archive.TarXzArchive()
|
arch = file_archive.TarXzArchive()
|
||||||
arch.archiver = 'tar'
|
arch.archiver = 'tar'
|
||||||
call.return_value = 0
|
call.return_value = 0
|
||||||
self.assertTrue(arch.create('foo'))
|
self.assertTrue(arch.create('foo.tar.xz'))
|
||||||
call.assert_called_once_with(['tar', 'Jcf', 'foo', '.'])
|
call.assert_called_once_with(['tar', 'Jcf', 'foo.tar.xz', 'foo'])
|
||||||
|
|
||||||
call.reset_mock()
|
call.reset_mock()
|
||||||
call.return_value = 1
|
call.return_value = 1
|
||||||
self.assertFalse(arch.extract('foo'))
|
self.assertFalse(arch.extract('foo.tar.xz'))
|
||||||
call.assert_called_once_with(['tar', 'xf', 'foo'])
|
call.assert_called_once_with(['tar', 'xf', 'foo.tar.xz'])
|
||||||
|
|
||||||
|
with open('bar', 'w') as fobj:
|
||||||
|
fobj.write('\n')
|
||||||
|
|
||||||
|
call.reset_mock()
|
||||||
|
arch = file_archive.TarGzipArchive()
|
||||||
|
arch.archiver = 'tar'
|
||||||
|
call.return_value = 0
|
||||||
|
self.assertTrue(arch.create('foo.tgz'))
|
||||||
|
call.assert_called_once_with(['tar', 'zcf', 'foo.tgz', 'bar', 'foo'])
|
||||||
|
|
||||||
@mock.patch('fs_uae_wrapper.path.which')
|
@mock.patch('fs_uae_wrapper.path.which')
|
||||||
@mock.patch('subprocess.call')
|
@mock.patch('subprocess.call')
|
||||||
|
|||||||
Reference in New Issue
Block a user