t4038: add tests for "diff --cc --raw <trees>"
authorJohn Keeping <john@keeping.me.uk>
Tue, 5 Feb 2013 21:39:49 +0000 (21:39 +0000)
committerJunio C Hamano <gitster@pobox.com>
Tue, 5 Feb 2013 21:54:30 +0000 (13:54 -0800)
Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t4038-diff-combined.sh

index 40277c77aad5f2d9533e6822da3380bb49621e59..614425adac536d84e6835d9d707b86fe8f5f4d36 100755 (executable)
@@ -89,4 +89,28 @@ test_expect_success 'diagnose truncated file' '
        grep "diff --cc file" out
 '
 
+test_expect_success 'setup for --cc --raw' '
+       blob=$(echo file | git hash-object --stdin -w) &&
+       base_tree=$(echo "100644 blob $blob     file" | git mktree) &&
+       trees= &&
+       for i in `test_seq 1 40`
+       do
+               blob=$(echo file$i | git hash-object --stdin -w) &&
+               trees="$trees$(echo "100644 blob $blob  file" | git mktree)$LF"
+       done
+'
+
+test_expect_success 'check --cc --raw with four trees' '
+       four_trees=$(echo "$trees" | sed -e 4q) &&
+       git diff --cc --raw $four_trees $base_tree >out &&
+       # Check for four leading colons in the output:
+       grep "^::::[^:]" out
+'
+
+test_expect_success 'check --cc --raw with forty trees' '
+       git diff --cc --raw $trees $base_tree >out &&
+       # Check for forty leading colons in the output:
+       grep "^::::::::::::::::::::::::::::::::::::::::[^:]" out
+'
+
 test_done