File: t8009-blame-vs-topicbranches.sh

package info (click to toggle)
git 1%3A2.50.1-0.1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 61,696 kB
  • sloc: ansic: 302,907; sh: 260,696; perl: 27,874; tcl: 22,303; makefile: 4,280; python: 3,442; javascript: 772; csh: 45; lisp: 12
file content (37 lines) | stat: -rwxr-xr-x 859 bytes parent folder | download
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
#!/bin/sh

test_description='blaming through history with topic branches'

. ./test-lib.sh

# Creates the history shown below. '*'s mark the first parent in the merges.
# The only line of file.t is changed in commit B2
#
#        +---C1
#       /      \
# A0--A1--*A2--*A3
#   \     /
#    B1-B2
#
test_expect_success setup '
	test_commit A0 file.t line0 &&
	test_commit A1 &&
	git reset --hard A0 &&
	test_commit B1 &&
	test_commit B2 file.t line0changed &&
	git reset --hard A1 &&
	test_merge A2 B2 &&
	git reset --hard A1 &&
	test_commit C1 &&
	git reset --hard A2 &&
	test_merge A3 C1
	'

test_expect_success 'blame --reverse --first-parent finds A1' '
	git blame --porcelain --reverse --first-parent A0..A3 -- file.t >actual_full &&
	head -n 1 <actual_full | sed -e "s/ .*//" >actual &&
	git rev-parse A1 >expect &&
	test_cmp expect actual
	'

test_done