-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'jc/diff-test' into th/diff
* jc/diff-test: t4013: add more tests around -c and --cc t4013: add tests for diff/log family output options.
- Loading branch information
Showing
89 changed files
with
3,839 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,224 @@ | ||
#!/bin/sh | ||
# | ||
# Copyright (c) 2006 Junio C Hamano | ||
# | ||
|
||
test_description='Various diff formatting options' | ||
|
||
. ./test-lib.sh | ||
|
||
test_expect_success setup ' | ||
GIT_AUTHOR_DATE="2006-06-26 00:00:00 +0000" && | ||
GIT_COMMITTER_DATE="2006-06-26 00:00:00 +0000" && | ||
export GIT_AUTHOR_DATE GIT_COMMITTER_DATE && | ||
mkdir dir && | ||
for i in 1 2 3; do echo $i; done >file0 && | ||
for i in A B; do echo $i; done >dir/sub && | ||
cat file0 >file2 && | ||
git add file0 file2 dir/sub && | ||
git commit -m Initial && | ||
git branch initial && | ||
git branch side && | ||
GIT_AUTHOR_DATE="2006-06-26 00:01:00 +0000" && | ||
GIT_COMMITTER_DATE="2006-06-26 00:01:00 +0000" && | ||
export GIT_AUTHOR_DATE GIT_COMMITTER_DATE && | ||
for i in 4 5 6; do echo $i; done >>file0 && | ||
for i in C D; do echo $i; done >>dir/sub && | ||
rm -f file2 && | ||
git update-index --remove file0 file2 dir/sub && | ||
git commit -m Second && | ||
GIT_AUTHOR_DATE="2006-06-26 00:02:00 +0000" && | ||
GIT_COMMITTER_DATE="2006-06-26 00:02:00 +0000" && | ||
export GIT_AUTHOR_DATE GIT_COMMITTER_DATE && | ||
for i in A B C; do echo $i; done >file1 && | ||
git add file1 && | ||
for i in E F; do echo $i; done >>dir/sub && | ||
git update-index dir/sub && | ||
git commit -m Third && | ||
GIT_AUTHOR_DATE="2006-06-26 00:03:00 +0000" && | ||
GIT_COMMITTER_DATE="2006-06-26 00:03:00 +0000" && | ||
export GIT_AUTHOR_DATE GIT_COMMITTER_DATE && | ||
git checkout side && | ||
for i in A B C; do echo $i; done >>file0 && | ||
for i in 1 2; do echo $i; done >>dir/sub && | ||
cat dir/sub >file3 && | ||
git add file3 && | ||
git update-index file0 dir/sub && | ||
git commit -m Side && | ||
GIT_AUTHOR_DATE="2006-06-26 00:04:00 +0000" && | ||
GIT_COMMITTER_DATE="2006-06-26 00:04:00 +0000" && | ||
export GIT_AUTHOR_DATE GIT_COMMITTER_DATE && | ||
git checkout master && | ||
git pull -s ours . side && | ||
GIT_AUTHOR_DATE="2006-06-26 00:05:00 +0000" && | ||
GIT_COMMITTER_DATE="2006-06-26 00:05:00 +0000" && | ||
export GIT_AUTHOR_DATE GIT_COMMITTER_DATE && | ||
for i in A B C; do echo $i; done >>file0 && | ||
for i in 1 2; do echo $i; done >>dir/sub && | ||
git update-index file0 dir/sub && | ||
EDITOR=: VISUAL=: git commit --amend && | ||
git show-branch | ||
' | ||
|
||
: <<\EOF | ||
! [initial] Initial | ||
* [master] Merge branch 'side' | ||
! [side] Side | ||
--- | ||
- [master] Merge branch 'side' | ||
*+ [side] Side | ||
* [master^] Second | ||
+*+ [initial] Initial | ||
EOF | ||
|
||
while read cmd | ||
do | ||
case "$cmd" in | ||
'' | '#'*) continue ;; | ||
esac | ||
test=`echo "$cmd" | sed -e 's|[/ ][/ ]*|_|g'` | ||
cnt=`expr $test_count + 1` | ||
pfx=`printf "%04d" $cnt` | ||
expect="../t4013/diff.$test" | ||
actual="$pfx-diff.$test" | ||
|
||
test_expect_success "git $cmd" ' | ||
{ | ||
echo "\$ git $cmd" | ||
git $cmd | ||
echo "\$" | ||
} >"$actual" && | ||
if test -f "$expect" | ||
then | ||
diff -u "$expect" "$actual" && | ||
rm -f "$actual" | ||
else | ||
# this is to help developing new tests. | ||
cp "$actual" "$expect" | ||
false | ||
fi | ||
' | ||
done <<\EOF | ||
diff-tree initial | ||
diff-tree -r initial | ||
diff-tree -r --abbrev initial | ||
diff-tree -r --abbrev=4 initial | ||
diff-tree --root initial | ||
diff-tree --root --abbrev initial | ||
diff-tree --root -r initial | ||
diff-tree --root -r --abbrev initial | ||
diff-tree --root -r --abbrev=4 initial | ||
diff-tree -p initial | ||
diff-tree --root -p initial | ||
diff-tree --patch-with-stat initial | ||
diff-tree --root --patch-with-stat initial | ||
diff-tree --patch-with-raw initial | ||
diff-tree --root --patch-with-raw initial | ||
diff-tree --pretty initial | ||
diff-tree --pretty --root initial | ||
diff-tree --pretty -p initial | ||
diff-tree --pretty --stat initial | ||
diff-tree --pretty --summary initial | ||
diff-tree --pretty --stat --summary initial | ||
diff-tree --pretty --root -p initial | ||
diff-tree --pretty --root --stat initial | ||
#diff-tree --pretty --root --summary initial | ||
diff-tree --pretty --root --stat --summary initial | ||
diff-tree --pretty --patch-with-stat initial | ||
diff-tree --pretty --root --patch-with-stat initial | ||
diff-tree --pretty --patch-with-raw initial | ||
diff-tree --pretty --root --patch-with-raw initial | ||
diff-tree --pretty=oneline initial | ||
diff-tree --pretty=oneline --root initial | ||
diff-tree --pretty=oneline -p initial | ||
diff-tree --pretty=oneline --root -p initial | ||
diff-tree --pretty=oneline --patch-with-stat initial | ||
diff-tree --pretty=oneline --root --patch-with-stat initial | ||
diff-tree --pretty=oneline --patch-with-raw initial | ||
diff-tree --pretty=oneline --root --patch-with-raw initial | ||
diff-tree --pretty side | ||
diff-tree --pretty -p side | ||
diff-tree --pretty --patch-with-stat side | ||
diff-tree master | ||
diff-tree -p master | ||
diff-tree -p -m master | ||
diff-tree -c master | ||
diff-tree -c --abbrev master | ||
diff-tree --cc master | ||
# stat only should show the diffstat with the first parent | ||
diff-tree -c --stat master | ||
diff-tree --cc --stat master | ||
diff-tree -c --stat --summary master | ||
diff-tree --cc --stat --summary master | ||
# stat summary should show the diffstat and summary with the first parent | ||
diff-tree -c --stat --summary side | ||
diff-tree --cc --stat --summary side | ||
# this one gives an extra newline after stat, which should be removed | ||
# diff-tree --cc --patch-with-stat master | ||
# this one gives an extra newline after stat, which should be removed | ||
# other than that it shows the correct example -- stat and summary are | ||
# against the first parent, and patch-looking combined diff follows. | ||
diff-tree --cc --patch-with-stat --summary master | ||
# this is correct | ||
diff-tree --cc --patch-with-stat --summary side | ||
log master | ||
log -p master | ||
log --root master | ||
log --root -p master | ||
log --patch-with-stat master | ||
log --root --patch-with-stat master | ||
log --root --patch-with-stat --summary master | ||
log --root -c --patch-with-stat --summary master | ||
log --root --cc --patch-with-stat --summary master | ||
log -SF master | ||
log -SF -p master | ||
whatchanged master | ||
whatchanged -p master | ||
whatchanged --root master | ||
whatchanged --root -p master | ||
whatchanged --patch-with-stat master | ||
whatchanged --root --patch-with-stat master | ||
whatchanged --root --patch-with-stat --summary master | ||
whatchanged --root -c --patch-with-stat --summary master | ||
whatchanged --root --cc --patch-with-stat --summary master | ||
whatchanged -SF master | ||
whatchanged -SF -p master | ||
log --patch-with-stat master -- dir/ | ||
whatchanged --patch-with-stat master -- dir/ | ||
log --patch-with-stat --summary master -- dir/ | ||
whatchanged --patch-with-stat --summary master -- dir/ | ||
show initial | ||
show --root initial | ||
show side | ||
show master | ||
show --stat side | ||
show --stat --summary side | ||
show --patch-with-stat side | ||
show --patch-with-raw side | ||
show --patch-with-stat --summary side | ||
EOF | ||
|
||
test_done |
35 changes: 35 additions & 0 deletions
35
t/t4013/diff.diff-tree_--cc_--patch-with-stat_--summary_master
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
$ git diff-tree --cc --patch-with-stat --summary master | ||
176b998f5d647cbd77a9d8acf4531e930754d16d | ||
dir/sub | 2 ++ | ||
file0 | 3 +++ | ||
2 files changed, 5 insertions(+), 0 deletions(-) | ||
|
||
|
||
diff --cc dir/sub | ||
index cead32e,7289e35..992913c | ||
--- a/dir/sub | ||
+++ b/dir/sub | ||
@@@ -1,6 -1,4 +1,8 @@@ | ||
A | ||
B | ||
+C | ||
+D | ||
+E | ||
+F | ||
+ 1 | ||
+ 2 | ||
diff --cc file0 | ||
index b414108,f4615da..10a8a9f | ||
--- a/file0 | ||
+++ b/file0 | ||
@@@ -1,6 -1,6 +1,9 @@@ | ||
1 | ||
2 | ||
3 | ||
+4 | ||
+5 | ||
+6 | ||
+ A | ||
+ B | ||
+ C | ||
$ |
39 changes: 39 additions & 0 deletions
39
t/t4013/diff.diff-tree_--cc_--patch-with-stat_--summary_side
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
$ git diff-tree --cc --patch-with-stat --summary side | ||
c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a | ||
dir/sub | 2 ++ | ||
file0 | 3 +++ | ||
file3 | 4 ++++ | ||
3 files changed, 9 insertions(+), 0 deletions(-) | ||
create mode 100644 file3 | ||
|
||
diff --git a/dir/sub b/dir/sub | ||
index 35d242b..7289e35 100644 | ||
--- a/dir/sub | ||
+++ b/dir/sub | ||
@@ -1,2 +1,4 @@ | ||
A | ||
B | ||
+1 | ||
+2 | ||
diff --git a/file0 b/file0 | ||
index 01e79c3..f4615da 100644 | ||
--- a/file0 | ||
+++ b/file0 | ||
@@ -1,3 +1,6 @@ | ||
1 | ||
2 | ||
3 | ||
+A | ||
+B | ||
+C | ||
diff --git a/file3 b/file3 | ||
new file mode 100644 | ||
index 0000000..7289e35 | ||
--- /dev/null | ||
+++ b/file3 | ||
@@ -0,0 +1,4 @@ | ||
+A | ||
+B | ||
+1 | ||
+2 | ||
$ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
$ git diff-tree --cc --stat --summary master | ||
176b998f5d647cbd77a9d8acf4531e930754d16d | ||
dir/sub | 2 ++ | ||
file0 | 3 +++ | ||
2 files changed, 5 insertions(+), 0 deletions(-) | ||
$ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
$ git diff-tree --cc --stat --summary side | ||
c7a2ab9e8eac7b117442a607d5a9b3950ae34d5a | ||
dir/sub | 2 ++ | ||
file0 | 3 +++ | ||
file3 | 4 ++++ | ||
3 files changed, 9 insertions(+), 0 deletions(-) | ||
create mode 100644 file3 | ||
$ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
$ git diff-tree --cc --stat master | ||
176b998f5d647cbd77a9d8acf4531e930754d16d | ||
dir/sub | 2 ++ | ||
file0 | 3 +++ | ||
2 files changed, 5 insertions(+), 0 deletions(-) | ||
$ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
$ git diff-tree --cc master | ||
176b998f5d647cbd77a9d8acf4531e930754d16d | ||
diff --cc dir/sub | ||
index cead32e,7289e35..992913c | ||
--- a/dir/sub | ||
+++ b/dir/sub | ||
@@@ -1,6 -1,4 +1,8 @@@ | ||
A | ||
B | ||
+C | ||
+D | ||
+E | ||
+F | ||
+ 1 | ||
+ 2 | ||
diff --cc file0 | ||
index b414108,f4615da..10a8a9f | ||
--- a/file0 | ||
+++ b/file0 | ||
@@@ -1,6 -1,6 +1,9 @@@ | ||
1 | ||
2 | ||
3 | ||
+4 | ||
+5 | ||
+6 | ||
+ A | ||
+ B | ||
+ C | ||
$ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
$ git diff-tree --patch-with-raw initial | ||
$ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
$ git diff-tree --patch-with-stat initial | ||
$ |
2 changes: 2 additions & 0 deletions
2
t/t4013/diff.diff-tree_--pretty=oneline_--patch-with-raw_initial
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
$ git diff-tree --pretty=oneline --patch-with-raw initial | ||
$ |
2 changes: 2 additions & 0 deletions
2
t/t4013/diff.diff-tree_--pretty=oneline_--patch-with-stat_initial
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
$ git diff-tree --pretty=oneline --patch-with-stat initial | ||
$ |
Oops, something went wrong.