@@ -28,80 +28,79 @@ Testing basic merge operations/option parsing.
28
28
29
29
. ./test-lib.sh
30
30
31
- test_expect_success ' set up test data and helpers' '
32
- printf "%s\n" 1 2 3 4 5 6 7 8 9 >file &&
33
- printf "%s\n" "1 X" 2 3 4 5 6 7 8 9 >file.1 &&
34
- printf "%s\n" 1 2 3 4 "5 X" 6 7 8 9 >file.5 &&
35
- printf "%s\n" 1 2 3 4 5 6 7 8 "9 X" >file.9 &&
36
- printf "%s\n" "1 X" 2 3 4 5 6 7 8 9 >result.1 &&
37
- printf "%s\n" "1 X" 2 3 4 "5 X" 6 7 8 9 >result.1-5 &&
38
- printf "%s\n" "1 X" 2 3 4 "5 X" 6 7 8 "9 X" >result.1-5-9 &&
39
-
40
- create_merge_msgs() {
41
- echo "Merge commit ' \' ' c2' \' ' " >msg.1-5 &&
42
- echo "Merge commit ' \' ' c2' \' ' ; commit ' \' ' c3' \' ' " >msg.1-5-9 &&
43
- {
44
- echo "Squashed commit of the following:" &&
45
- echo &&
46
- git log --no-merges ^HEAD c1
47
- } >squash.1 &&
48
- {
49
- echo "Squashed commit of the following:" &&
50
- echo &&
51
- git log --no-merges ^HEAD c2
52
- } >squash.1-5 &&
53
- {
54
- echo "Squashed commit of the following:" &&
55
- echo &&
56
- git log --no-merges ^HEAD c2 c3
57
- } >squash.1-5-9 &&
58
- echo >msg.nolog &&
59
- {
60
- echo "* commit ' \' ' c3' \' ' :" &&
61
- echo " commit 3" &&
62
- echo
63
- } >msg.log
64
- } &&
65
-
66
- verify_merge() {
67
- test_cmp "$2" "$1" &&
68
- git update-index --refresh &&
69
- git diff --exit-code &&
70
- if test -n "$3"
71
- then
72
- git show -s --pretty=format:%s HEAD >msg.act &&
73
- test_cmp "$3" msg.act
74
- fi
75
- } &&
76
-
77
- verify_head() {
78
- echo "$1" >head.expected &&
79
- git rev-parse HEAD >head.actual &&
80
- test_cmp head.expected head.actual
81
- } &&
82
-
83
- verify_parents() {
84
- printf "%s\n" "$@" >parents.expected &&
85
- >parents.actual &&
86
- i=1 &&
87
- while test $i -le $#
88
- do
89
- git rev-parse HEAD^$i >>parents.actual &&
90
- i=$(expr $i + 1) ||
91
- return 1
92
- done &&
93
- test_cmp parents.expected parents.actual
94
- } &&
95
-
96
- verify_mergeheads() {
97
- printf "%s\n" "$@" >mergehead.expected &&
98
- test_cmp mergehead.expected .git/MERGE_HEAD
99
- } &&
100
-
101
- verify_no_mergehead() {
102
- ! test -e .git/MERGE_HEAD
103
- }
104
- '
31
+ printf ' %s\n' 1 2 3 4 5 6 7 8 9 > file
32
+ printf ' %s\n' ' 1 X' 2 3 4 5 6 7 8 9 > file.1
33
+ printf ' %s\n' 1 2 3 4 ' 5 X' 6 7 8 9 > file.5
34
+ printf ' %s\n' 1 2 3 4 5 6 7 8 ' 9 X' > file.9
35
+ printf ' %s\n' ' 1 X' 2 3 4 5 6 7 8 9 > result.1
36
+ printf ' %s\n' ' 1 X' 2 3 4 ' 5 X' 6 7 8 9 > result.1-5
37
+ printf ' %s\n' ' 1 X' 2 3 4 ' 5 X' 6 7 8 ' 9 X' > result.1-5-9
38
+
39
+ create_merge_msgs () {
40
+ echo " Merge commit 'c2'" > msg.1-5 &&
41
+ echo " Merge commit 'c2'; commit 'c3'" > msg.1-5-9 &&
42
+ {
43
+ echo " Squashed commit of the following:" &&
44
+ echo &&
45
+ git log --no-merges ^HEAD c1
46
+ } > squash.1 &&
47
+ {
48
+ echo " Squashed commit of the following:" &&
49
+ echo &&
50
+ git log --no-merges ^HEAD c2
51
+ } > squash.1-5 &&
52
+ {
53
+ echo " Squashed commit of the following:" &&
54
+ echo &&
55
+ git log --no-merges ^HEAD c2 c3
56
+ } > squash.1-5-9 &&
57
+ echo > msg.nolog &&
58
+ {
59
+ echo " * commit 'c3':" &&
60
+ echo " commit 3" &&
61
+ echo
62
+ } > msg.log
63
+ }
64
+
65
+ verify_merge () {
66
+ test_cmp " $2 " " $1 " &&
67
+ git update-index --refresh &&
68
+ git diff --exit-code &&
69
+ if test -n " $3 "
70
+ then
71
+ git show -s --pretty=format:%s HEAD > msg.act &&
72
+ test_cmp " $3 " msg.act
73
+ fi
74
+ }
75
+
76
+ verify_head () {
77
+ echo " $1 " > head.expected &&
78
+ git rev-parse HEAD > head.actual &&
79
+ test_cmp head.expected head.actual
80
+ }
81
+
82
+ verify_parents () {
83
+ printf ' %s\n' " $@ " > parents.expected &&
84
+ > parents.actual &&
85
+ i=1 &&
86
+ while test $i -le $#
87
+ do
88
+ git rev-parse HEAD^$i >> parents.actual &&
89
+ i=$( expr $i + 1) ||
90
+ return 1
91
+ done &&
92
+ test_must_fail git rev-parse --verify " HEAD^$i " &&
93
+ test_cmp parents.expected parents.actual
94
+ }
95
+
96
+ verify_mergeheads () {
97
+ printf ' %s\n' " $@ " > mergehead.expected &&
98
+ test_cmp mergehead.expected .git/MERGE_HEAD
99
+ }
100
+
101
+ verify_no_mergehead () {
102
+ ! test -e .git/MERGE_HEAD
103
+ }
105
104
106
105
test_expect_success ' setup' '
107
106
git add file &&
0 commit comments