def test_empty_dir(self): runner = InlineMRJobRunner() empty_dir = self.makedirs('empty') tar_gz_path = runner._dir_archive_path(empty_dir) self.assertEqual(os.path.basename(tar_gz_path), 'empty.tar.gz') runner._create_dir_archive(empty_dir) with tarfile.open(tar_gz_path, 'r:gz') as tar_gz: self.assertEqual(sorted(tar_gz.getnames()), [])
def test_only_create_archive_once(self): runner = InlineMRJobRunner() tar_gz_path = runner._dir_archive_path(self._to_archive) runner._create_dir_archive(self._to_archive) mtime_1 = os.stat(tar_gz_path).st_mtime sleep(1) runner._create_dir_archive(self._to_archive) mtime_2 = os.stat(tar_gz_path).st_mtime self.assertEqual(mtime_1, mtime_2)
def test_archive(self): runner = InlineMRJobRunner() tar_gz_path = runner._dir_archive_path(self._to_archive) self.assertEqual(os.path.basename(tar_gz_path), 'archive.tar.gz') runner._create_dir_archive(self._to_archive) tar_gz = tarfile.open(tar_gz_path, 'r:gz') try: self.assertEqual(sorted(tar_gz.getnames()), [os.path.join('bar', 'baz'), 'foo']) finally: tar_gz.close()