def test_atomiccmd__commit_temp_only(temp_folder): cmd = AtomicCmd(("echo", "foo"), TEMP_OUT_STDOUT="bar.txt") cmd.run(temp_folder) assert_equal(cmd.join(), [0]) assert os.path.exists(os.path.join(temp_folder, "bar.txt")) cmd.commit(temp_folder) assert_equal(os.listdir(temp_folder), [])
def test_atomiccmd__commit_temp_only(temp_folder): cmd = AtomicCmd(("echo", "foo"), TEMP_OUT_STDOUT = "bar.txt") cmd.run(temp_folder) assert_equal(cmd.join(), [0]) assert os.path.exists(os.path.join(temp_folder, "bar.txt")) cmd.commit(temp_folder) assert_equal(os.listdir(temp_folder), [])
def _do_test_atomiccmd__stdout(temp_folder, kwargs): cmd = AtomicCmd(("echo", "-n", "foo"), **kwargs) assert cmd.stdout is None cmd.run(temp_folder) assert isinstance(cmd.stdout, types.FileType), cmd.stdout assert_equal(cmd.stdout.read(), "foo") cmd.join() cmd.commit(temp_folder) assert cmd.stdout is None
def test_atomiccmd__commit_temp_out(temp_folder): dest, temp = _setup_for_commit(temp_folder, create_cmd=False) cmd = AtomicCmd(("echo", "foo"), OUT_STDOUT=os.path.join(dest, "foo.txt"), TEMP_OUT_FOO="bar.txt") cmd.run(temp) assert_equal(cmd.join(), [0]) set_file_contents(os.path.join(temp, "bar.txt"), "1 2 3") cmd.commit(temp) assert_equal(os.listdir(temp), []) assert_equal(os.listdir(dest), ["foo.txt"])
def test_atomiccmd__commit_temp_out(temp_folder): dest, temp = _setup_for_commit(temp_folder, create_cmd = False) cmd = AtomicCmd(("echo", "foo"), OUT_STDOUT = os.path.join(dest, "foo.txt"), TEMP_OUT_FOO = "bar.txt") cmd.run(temp) assert_equal(cmd.join(), [0]) set_file_contents(os.path.join(temp, "bar.txt"), "1 2 3") cmd.commit(temp) assert_equal(os.listdir(temp), []) assert_equal(os.listdir(dest), ["foo.txt"])
def commit(self, temp): AtomicCmd.commit(self, temp) os.remove(os.path.join(destination, "foo.txt"))