test: copy files in test_expect_equal_file instead of moving them
authorDmitry Kurochkin <dmitry.kurochkin@gmail.com>
Tue, 10 May 2011 03:30:50 +0000 (07:30 +0400)
committerCarl Worth <cworth@cworth.org>
Tue, 31 May 2011 22:10:23 +0000 (15:10 -0700)
Before the change, test_expect_equal_file moved files it compared
in case of failure.  The patch changes it to copy the files
instead.  This allows testing non-temporary files which are
stored in git.

Note: the change should not result in new temporary files left
after the tests.  Test_expect_equal_file used to move files only
on failure, so callers had to cleanup them anyway.

test/test-lib.sh

index 922b1ef536350fb91ba5988fdde991e1fdf7d79a..7855609248e72d1961cc22e21192b577a901395b 100755 (executable)
@@ -477,8 +477,8 @@ test_expect_equal_file ()
                        test_ok_ "$test_subtest_name"
                else
                        testname=$this_test.$test_count
                        test_ok_ "$test_subtest_name"
                else
                        testname=$this_test.$test_count
-                       mv "$output" $testname.output
-                       mv "$expected" $testname.expected
+                       cp "$output" $testname.output
+                       cp "$expected" $testname.expected
                        test_failure_ "$test_subtest_name" "$(diff -u $testname.expected $testname.output)"
                fi
     fi
                        test_failure_ "$test_subtest_name" "$(diff -u $testname.expected $testname.output)"
                fi
     fi