def test_download_file_unknown(self): s = Sandbox(TEST_URL) f = open( os.path.join(RESOURCE_DIR, "dae5f9a3-a911-4df4-82f8-b9343241ece5.tgz"), "rb") response = s.execute({ "commands": ["true"], "save": True, }, f) time.sleep(0.1) with self.assertRaises(Sandbox404): s.download(response["environment"], "unknown.unk")
def test_download_file(self): s = Sandbox(TEST_URL) f = open( os.path.join(RESOURCE_DIR, "dae5f9a3-a911-4df4-82f8-b9343241ece5.tgz"), "rb") response = s.execute({ "commands": ["true"], "save": True, }, f) time.sleep(0.1) downloaded = s.download(response["environment"], "dir/file1.txt") self.assertEqual(b"env1\n", downloaded.read())
def test_download_env(self): s = Sandbox(TEST_URL) f = open( os.path.join(RESOURCE_DIR, "dae5f9a3-a911-4df4-82f8-b9343241ece5.tgz"), "rb") response = s.execute({ "commands": ["true"], "save": True, }, f) time.sleep(0.1) downloaded = s.download(response["environment"]) f = open( os.path.join(RESOURCE_DIR, "dae5f9a3-a911-4df4-82f8-b9343241ece5.tgz"), "rb") with tarfile.open(fileobj=f, mode="r|gz") as t1, \ tarfile.open(fileobj=downloaded, mode="r|gz") as t2: l1 = [m.name for m in t1.getmembers() if m.name] l2 = [m.name for m in t2.getmembers() if m.name] self.assertEqual(len(l1), len(l2)) self.assertEqual(sorted(l1), sorted(l2))
def test_download_env_unknown(self): s = Sandbox(TEST_URL) time.sleep(0.1) with self.assertRaises(Sandbox404): s.download("unknown")