Merge branch 'pb/remote-mirror-config'
[gitweb.git] / t / t9200-git-cvsexportcommit.sh
index 5c2ee237397a07e5e478b0f715798fe87905e7c1..42b144b1b3f38b406b09ae7bff455f1e436ee33c 100755 (executable)
@@ -2,7 +2,7 @@
 #
 # Copyright (c) Robin Rosenberg
 #
-test_description='CVS export comit. '
+test_description='Test export of commits to CVS'
 
 . ./test-lib.sh
 
@@ -37,7 +37,7 @@ check_entries () {
        else
                printf '%s\n' "$2" | tr '|' '\012' >expected
        fi
-       diff -u expected actual
+       test_cmp expected actual
 }
 
 test_expect_success \
@@ -246,6 +246,22 @@ test_expect_success \
        ;;
 esac
 
+test_expect_success '-w option should work with relative GIT_DIR' '
+      mkdir W &&
+      echo foobar >W/file1.txt &&
+      echo bazzle >W/file2.txt &&
+      git add W/file1.txt &&
+      git add W/file2.txt &&
+      git commit -m "More updates" &&
+      id=$(git rev-list --max-count=1 HEAD) &&
+      (cd "$GIT_DIR" &&
+      GIT_DIR=. git cvsexportcommit -w "$CVSWORK" -c $id &&
+      check_entries "$CVSWORK/W" "file1.txt/1.1/|file2.txt/1.1/" &&
+      test_cmp "$CVSWORK/W/file1.txt" ../W/file1.txt &&
+      test_cmp "$CVSWORK/W/file2.txt" ../W/file2.txt
+      )
+'
+
 test_expect_success 'check files before directories' '
 
        echo Notes > release-notes &&
@@ -263,9 +279,9 @@ test_expect_success 'check files before directories' '
        git cvsexportcommit -w "$CVSWORK" -c $id &&
        check_entries "$CVSWORK/E" "DS/1.1/|newfile5.txt/1.1/" &&
        check_entries "$CVSWORK" "DS/1.1/|release-notes/1.2/" &&
-       diff -u "$CVSWORK/DS" DS &&
-       diff -u "$CVSWORK/E/DS" E/DS &&
-       diff -u "$CVSWORK/release-notes" release-notes
+       test_cmp "$CVSWORK/DS" DS &&
+       test_cmp "$CVSWORK/E/DS" E/DS &&
+       test_cmp "$CVSWORK/release-notes" release-notes
 
 '
 
@@ -277,7 +293,7 @@ test_expect_success 'commit a file with leading spaces in the name' '
        id=$(git rev-parse HEAD) &&
        git cvsexportcommit -w "$CVSWORK" -c $id &&
        check_entries "$CVSWORK" " space/1.1/|DS/1.1/|release-notes/1.2/" &&
-       diff -u "$CVSWORK/ space" " space"
+       test_cmp "$CVSWORK/ space" " space"
 
 '