chiark / gitweb /
Refactor crt_series creation
[stgit] / t / t1400-patch-history.sh
CommitLineData
64354a2d
CM
1#!/bin/sh
2#
3# Copyright (c) 2006 Catalin Marinas
4#
5
6test_description='Test the patch history generation.
7
8'
9
10. ./test-lib.sh
11
12test_expect_success \
13 'Initialize the StGIT repository' \
14 '
15 stg init
16 '
17
18test_expect_success \
19 'Create the first patch' \
20 '
21 stg new foo -m "Foo Patch" &&
22 echo foo > test && echo foo2 >> test &&
23 stg add test &&
eff17c6b 24 stg refresh --annotate="foo notes"
64354a2d
CM
25 '
26
27test_expect_success \
28 'Create the second patch' \
29 '
30 stg new bar -m "Bar Patch" &&
31 echo bar >> test &&
32 stg refresh
33 '
34
35test_expect_success \
36 'Check the "new" and "refresh" logs' \
37 '
eff17c6b
CM
38 stg log --full foo | grep -q -e "^new" &&
39 stg log --full foo | grep -q -e "^refresh" &&
40 stg log --full | grep -q -e "^new" &&
41 stg log --full | grep -q -e "^refresh"
42 '
43
44test_expect_success \
45 'Check the log annotation' \
46 '
ea7634bb
CM
47 stg log foo | grep -q -e "\[refresh\] foo notes " &&
48 stg log bar | grep -q -e "\[refresh\] " &&
49 stg refresh -p foo --annotate="foo notes 2" &&
50 stg log foo | grep -q -v -e "\[refresh\] foo notes " &&
51 stg log foo | grep -q -e "\[refresh\] foo notes 2"
64354a2d
CM
52 '
53
54test_expect_success \
55 'Check the "push" log' \
56 '
57 stg pop &&
58 echo foo > test2 && stg add test2 && stg refresh &&
59 stg push &&
eff17c6b 60 stg log --full | grep -q -e "^push "
64354a2d
CM
61 '
62
63test_expect_success \
64 'Check the "push(f)" log' \
65 '
66 stg pop &&
ed60fdae 67 stg edit -m "Foo2 Patch" &&
64354a2d 68 stg push &&
eff17c6b 69 stg log --full | grep -q -e "^push(f) "
64354a2d
CM
70 '
71
72test_expect_success \
73 'Check the "push(m)" log' \
74 '
75 stg pop &&
76 echo foo2 > test && stg refresh &&
77 stg push &&
eff17c6b 78 stg log --full | grep -q -e "^push(m) "
64354a2d
CM
79 '
80
0f4eba6a
CM
81test_expect_success \
82 'Check the "push(c)" log' \
83 '
84 echo bar > test && stg refresh &&
85 stg pop &&
86 echo foo > test && stg refresh &&
87 ! stg push &&
eff17c6b 88 stg log --full | grep -q -e "^push(c) "
0f4eba6a
CM
89 '
90
64354a2d
CM
91test_expect_success \
92 'Check the push "undo" log' \
93 '
94 stg push --undo &&
eff17c6b 95 stg log --full bar | grep -q -e "^undo "
64354a2d
CM
96 '
97
98test_expect_success \
99 'Check the refresh "undo" log' \
100 '
101 stg refresh --undo &&
eff17c6b 102 stg log --full | grep -q -e "^undo "
64354a2d
CM
103 '
104
105test_done