git@vger.kernel.org list mirror (unofficial, one of many)
 help / color / Atom feed
a7fece88045f2dbfc39c8ab0dd373059791e513a blob 3509 bytes (raw)

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
 
#!/bin/sh

test_description='branch-diff tests'

. ./test-lib.sh

# Note that because of git-branch-diff's heuristics, test_commit does more
# harm than good.  We need some real history.

test_expect_success 'setup' '
	git fast-import < "$TEST_DIRECTORY"/t7910/history.export
'

test_expect_success 'simple A..B A..C (unmodified)' '
	git branch-diff --no-color master..topic master..unmodified >actual &&
	cat >expected <<-EOF &&
	1:  4de457d = 1:  35b9b25 s/5/A/
	2:  fccce22 = 2:  de345ab s/4/A/
	3:  147e64e = 3:  9af6654 s/11/B/
	4:  a63e992 = 4:  2901f77 s/12/B/
	EOF
	test_cmp expected actual
'

test_expect_success 'simple B...C (unmodified)' '
	git branch-diff --no-color topic...unmodified >actual &&
	# same "expected" as above
	test_cmp expected actual
'

test_expect_success 'simple A B C (unmodified)' '
	git branch-diff --no-color master topic unmodified >actual &&
	# same "expected" as above
	test_cmp expected actual
'

test_expect_success 'trivial reordering' '
	git branch-diff --no-color master topic reordered >actual &&
	cat >expected <<-EOF &&
	1:  4de457d = 1:  aca177a s/5/A/
	3:  147e64e = 2:  14ad629 s/11/B/
	4:  a63e992 = 3:  ee58208 s/12/B/
	2:  fccce22 = 4:  307b27a s/4/A/
	EOF
	test_cmp expected actual
'

test_expect_success 'removed a commit' '
	git branch-diff --no-color master topic removed >actual &&
	cat >expected <<-EOF &&
	1:  4de457d = 1:  7657159 s/5/A/
	2:  fccce22 < -:  ------- s/4/A/
	3:  147e64e = 2:  43d84d3 s/11/B/
	4:  a63e992 = 3:  a740396 s/12/B/
	EOF
	test_cmp expected actual
'

test_expect_success 'added a commit' '
	git branch-diff --no-color master topic added >actual &&
	cat >expected <<-EOF &&
	1:  4de457d = 1:  2716022 s/5/A/
	2:  fccce22 = 2:  b62accd s/4/A/
	-:  ------- > 3:  df46cfa s/6/A/
	3:  147e64e = 4:  3e64548 s/11/B/
	4:  a63e992 = 5:  12b4063 s/12/B/
	EOF
	test_cmp expected actual
'

test_expect_success 'new base, A B C' '
	git branch-diff --no-color master topic rebased >actual &&
	cat >expected <<-EOF &&
	1:  4de457d = 1:  cc9c443 s/5/A/
	2:  fccce22 = 2:  c5d9641 s/4/A/
	3:  147e64e = 3:  28cc2b6 s/11/B/
	4:  a63e992 = 4:  5628ab7 s/12/B/
	EOF
	test_cmp expected actual
'

test_expect_success 'new base, B...C' '
	# this syntax includes the commits from master!
	git branch-diff --no-color topic...rebased >actual &&
	cat >expected <<-EOF &&
	-:  ------- > 1:  a31b12e unrelated
	1:  4de457d = 2:  cc9c443 s/5/A/
	2:  fccce22 = 3:  c5d9641 s/4/A/
	3:  147e64e = 4:  28cc2b6 s/11/B/
	4:  a63e992 = 5:  5628ab7 s/12/B/
	EOF
	test_cmp expected actual
'

test_expect_success 'changed commit' '
	git branch-diff --no-color topic...changed >actual &&
	cat >expected <<-EOF &&
	1:  4de457d = 1:  a4b3333 s/5/A/
	2:  fccce22 = 2:  f51d370 s/4/A/
	3:  147e64e ! 3:  0559556 s/11/B/
	    @@ -10,7 +10,7 @@
	      9
	      10
	     -11
	    -+B
	    ++BB
	      12
	      13
	      14
	4:  a63e992 ! 4:  d966c5c s/12/B/
	    @@ -8,7 +8,7 @@
	     @@
	      9
	      10
	    - B
	    + BB
	     -12
	     +B
	      13
	EOF
	test_cmp expected actual
'

test_expect_success 'changed message' '
	git branch-diff --no-color topic...changed-message >actual &&
	sed s/Z/\ /g >expected <<-EOF &&
	1:  4de457d = 1:  f686024 s/5/A/
	2:  fccce22 ! 2:  4ab067d s/4/A/
	    @@ -2,6 +2,8 @@
	    Z
	    Z    s/4/A/
	    Z
	    +    Also a silly comment here!
	    +
	    Zdiff --git a/file b/file
	    Z--- a/file
	    Z+++ b/file
	3:  147e64e = 3:  b9cb956 s/11/B/
	4:  a63e992 = 4:  8add5f1 s/12/B/
	EOF
	test_cmp expected actual
'

test_done
debug log:

solving a7fece88045 ...
found a7fece88045 in https://public-inbox.org/git/fe12b99a0b4f78ab75fcfbcf51c5edffb190c4e8.1525361419.git.johannes.schindelin@gmx.de/

applying [1/1] https://public-inbox.org/git/fe12b99a0b4f78ab75fcfbcf51c5edffb190c4e8.1525361419.git.johannes.schindelin@gmx.de/
diff --git a/t/t7910-branch-diff.sh b/t/t7910-branch-diff.sh
new file mode 100755
index 00000000000..a7fece88045

Checking patch t/t7910-branch-diff.sh...
Applied patch t/t7910-branch-diff.sh cleanly.

index at:
100755 a7fece88045f2dbfc39c8ab0dd373059791e513a	t/t7910-branch-diff.sh

git@vger.kernel.org list mirror (unofficial, one of many)

Archives are clonable:
	git clone --mirror https://public-inbox.org/git
	git clone --mirror http://ou63pmih66umazou.onion/git
	git clone --mirror http://czquwvybam4bgbro.onion/git
	git clone --mirror http://hjrcffqmbrq6wope.onion/git

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.version-control.git
	nntp://ou63pmih66umazou.onion/inbox.comp.version-control.git
	nntp://czquwvybam4bgbro.onion/inbox.comp.version-control.git
	nntp://hjrcffqmbrq6wope.onion/inbox.comp.version-control.git
	nntp://news.gmane.org/gmane.comp.version-control.git

 note: .onion URLs require Tor: https://www.torproject.org/

AGPL code for this site: git clone https://public-inbox.org/ public-inbox