X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/087fe7a4f739949cbc687508f4eeb7611c5083fa..0f6549efdfbad97e0b58b5bb9104e945505f3b87:/sdk/python/tests/test_arv_put.py diff --git a/sdk/python/tests/test_arv_put.py b/sdk/python/tests/test_arv_put.py index 3a24e80861..0e531dee31 100644 --- a/sdk/python/tests/test_arv_put.py +++ b/sdk/python/tests/test_arv_put.py @@ -293,22 +293,25 @@ class ArvPutUploadJobTest(run_test_server.TestCaseWithServers, shutil.rmtree(self.small_files_dir) shutil.rmtree(self.tempdir_with_symlink) - def test_non_regular_files_are_ignored(self): + def test_non_regular_files_are_ignored_except_symlinks_to_dirs(self): def pfunc(x): with open(x, 'w') as f: f.write('test') fifo_filename = 'fifo-file' - fifo_path = os.path.join(self.tempdir, fifo_filename) + fifo_path = os.path.join(self.tempdir_with_symlink, fifo_filename) + self.assertTrue(os.path.islink(os.path.join(self.tempdir_with_symlink, 'linkeddir'))) os.mkfifo(fifo_path) producer = multiprocessing.Process(target=pfunc, args=(fifo_path,)) producer.start() - cwriter = arv_put.ArvPutUploadJob([self.tempdir]) + cwriter = arv_put.ArvPutUploadJob([self.tempdir_with_symlink]) cwriter.start(save_collection=False) - self.assertNotIn(fifo_filename, cwriter.manifest_text()) if producer.exitcode is None: - # If the producer is still running, kill it. + # If the producer is still running, kill it. This should always be + # before any assertion that may fail. producer.terminate() producer.join(1) + self.assertIn('linkeddir', cwriter.manifest_text()) + self.assertNotIn(fifo_filename, cwriter.manifest_text()) def test_symlinks_are_followed_by_default(self): self.assertTrue(os.path.islink(os.path.join(self.tempdir_with_symlink, 'linkeddir')))