##// END OF EJS Templates
test-histedit: fix instability creation test...
Pierre-Yves David -
r18438:81e77a88 default
parent child Browse files
Show More
@@ -1,155 +1,173 b''
1 $ . "$TESTDIR/histedit-helpers.sh"
1 $ . "$TESTDIR/histedit-helpers.sh"
2
2
3 Enable obsolete
3 Enable obsolete
4
4
5 $ cat > ${TESTTMP}/obs.py << EOF
5 $ cat > ${TESTTMP}/obs.py << EOF
6 > import mercurial.obsolete
6 > import mercurial.obsolete
7 > mercurial.obsolete._enabled = True
7 > mercurial.obsolete._enabled = True
8 > EOF
8 > EOF
9
9
10 $ cat >> $HGRCPATH << EOF
10 $ cat >> $HGRCPATH << EOF
11 > [ui]
11 > [ui]
12 > logtemplate= {rev}:{node|short} {desc|firstline}
12 > logtemplate= {rev}:{node|short} {desc|firstline}
13 > [phases]
13 > [phases]
14 > publish=False
14 > publish=False
15 > [extensions]'
15 > [extensions]'
16 > histedit=
16 > histedit=
17 > rebase=
17 >
18 >
18 > obs=${TESTTMP}/obs.py
19 > obs=${TESTTMP}/obs.py
19 > EOF
20 > EOF
20
21
21 $ hg init base
22 $ hg init base
22 $ cd base
23 $ cd base
23
24
24 $ for x in a b c d e f ; do
25 $ for x in a b c d e f ; do
25 > echo $x > $x
26 > echo $x > $x
26 > hg add $x
27 > hg add $x
27 > hg ci -m $x
28 > hg ci -m $x
28 > done
29 > done
29
30
30 $ hg log --graph
31 $ hg log --graph
31 @ 5:652413bf663e f
32 @ 5:652413bf663e f
32 |
33 |
33 o 4:e860deea161a e
34 o 4:e860deea161a e
34 |
35 |
35 o 3:055a42cdd887 d
36 o 3:055a42cdd887 d
36 |
37 |
37 o 2:177f92b77385 c
38 o 2:177f92b77385 c
38 |
39 |
39 o 1:d2ae7f538514 b
40 o 1:d2ae7f538514 b
40 |
41 |
41 o 0:cb9a9f314b8b a
42 o 0:cb9a9f314b8b a
42
43
43
44
44 $ HGEDITOR=cat hg histedit 1
45 $ HGEDITOR=cat hg histedit 1
45 pick d2ae7f538514 1 b
46 pick d2ae7f538514 1 b
46 pick 177f92b77385 2 c
47 pick 177f92b77385 2 c
47 pick 055a42cdd887 3 d
48 pick 055a42cdd887 3 d
48 pick e860deea161a 4 e
49 pick e860deea161a 4 e
49 pick 652413bf663e 5 f
50 pick 652413bf663e 5 f
50
51
51 # Edit history between d2ae7f538514 and 652413bf663e
52 # Edit history between d2ae7f538514 and 652413bf663e
52 #
53 #
53 # Commands:
54 # Commands:
54 # p, pick = use commit
55 # p, pick = use commit
55 # e, edit = use commit, but stop for amending
56 # e, edit = use commit, but stop for amending
56 # f, fold = use commit, but fold into previous commit (combines N and N-1)
57 # f, fold = use commit, but fold into previous commit (combines N and N-1)
57 # d, drop = remove commit from history
58 # d, drop = remove commit from history
58 # m, mess = edit message without changing commit content
59 # m, mess = edit message without changing commit content
59 #
60 #
60 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
61 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
61 $ cat > commands.txt <<EOF
62 $ cat > commands.txt <<EOF
62 > pick 177f92b77385 2 c
63 > pick 177f92b77385 2 c
63 > drop d2ae7f538514 1 b
64 > drop d2ae7f538514 1 b
64 > pick 055a42cdd887 3 d
65 > pick 055a42cdd887 3 d
65 > fold e860deea161a 4 e
66 > fold e860deea161a 4 e
66 > pick 652413bf663e 5 f
67 > pick 652413bf663e 5 f
67 > EOF
68 > EOF
68 $ hg histedit 1 --commands commands.txt --verbose | grep histedit
69 $ hg histedit 1 --commands commands.txt --verbose | grep histedit
69 saved backup bundle to $TESTTMP/base/.hg/strip-backup/96e494a2d553-backup.hg (glob)
70 saved backup bundle to $TESTTMP/base/.hg/strip-backup/96e494a2d553-backup.hg (glob)
70 $ hg log --graph --hidden
71 $ hg log --graph --hidden
71 @ 8:cacdfd884a93 f
72 @ 8:cacdfd884a93 f
72 |
73 |
73 o 7:59d9f330561f d
74 o 7:59d9f330561f d
74 |
75 |
75 o 6:b346ab9a313d c
76 o 6:b346ab9a313d c
76 |
77 |
77 | x 5:652413bf663e f
78 | x 5:652413bf663e f
78 | |
79 | |
79 | x 4:e860deea161a e
80 | x 4:e860deea161a e
80 | |
81 | |
81 | x 3:055a42cdd887 d
82 | x 3:055a42cdd887 d
82 | |
83 | |
83 | x 2:177f92b77385 c
84 | x 2:177f92b77385 c
84 | |
85 | |
85 | x 1:d2ae7f538514 b
86 | x 1:d2ae7f538514 b
86 |/
87 |/
87 o 0:cb9a9f314b8b a
88 o 0:cb9a9f314b8b a
88
89
89 $ hg debugobsolete
90 $ hg debugobsolete
90 d2ae7f538514cd87c17547b0de4cea71fe1af9fb 0 {'date': '* *', 'user': 'test'} (glob)
91 d2ae7f538514cd87c17547b0de4cea71fe1af9fb 0 {'date': '* *', 'user': 'test'} (glob)
91 177f92b773850b59254aa5e923436f921b55483b b346ab9a313db8537ecf96fca3ca3ca984ef3bd7 0 {'date': '* *', 'user': 'test'} (glob)
92 177f92b773850b59254aa5e923436f921b55483b b346ab9a313db8537ecf96fca3ca3ca984ef3bd7 0 {'date': '* *', 'user': 'test'} (glob)
92 055a42cdd88768532f9cf79daa407fc8d138de9b 59d9f330561fd6c88b1a6b32f0e45034d88db784 0 {'date': '* *', 'user': 'test'} (glob)
93 055a42cdd88768532f9cf79daa407fc8d138de9b 59d9f330561fd6c88b1a6b32f0e45034d88db784 0 {'date': '* *', 'user': 'test'} (glob)
93 e860deea161a2f77de56603b340ebbb4536308ae 59d9f330561fd6c88b1a6b32f0e45034d88db784 0 {'date': '* *', 'user': 'test'} (glob)
94 e860deea161a2f77de56603b340ebbb4536308ae 59d9f330561fd6c88b1a6b32f0e45034d88db784 0 {'date': '* *', 'user': 'test'} (glob)
94 652413bf663ef2a641cab26574e46d5f5a64a55a cacdfd884a9321ec4e1de275ef3949fa953a1f83 0 {'date': '* *', 'user': 'test'} (glob)
95 652413bf663ef2a641cab26574e46d5f5a64a55a cacdfd884a9321ec4e1de275ef3949fa953a1f83 0 {'date': '* *', 'user': 'test'} (glob)
95
96
96
97
97 Ensure hidden revision does not prevent histedit
98 Ensure hidden revision does not prevent histedit
98 -------------------------------------------------
99 -------------------------------------------------
99
100
100 create an hidden revision
101 create an hidden revision
101
102
102 $ cat > commands.txt <<EOF
103 $ cat > commands.txt <<EOF
103 > pick b346ab9a313d 6 c
104 > pick b346ab9a313d 6 c
104 > drop 59d9f330561f 7 d
105 > drop 59d9f330561f 7 d
105 > pick cacdfd884a93 8 f
106 > pick cacdfd884a93 8 f
106 > EOF
107 > EOF
107 $ hg histedit 6 --commands commands.txt
108 $ hg histedit 6 --commands commands.txt
108 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
109 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
109 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
110 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
110 $ hg log --graph
111 $ hg log --graph
111 @ 9:c13eb81022ca f
112 @ 9:c13eb81022ca f
112 |
113 |
113 o 6:b346ab9a313d c
114 o 6:b346ab9a313d c
114 |
115 |
115 o 0:cb9a9f314b8b a
116 o 0:cb9a9f314b8b a
116
117
117 check hidden revision are ignored (6 have hidden children 7 and 8)
118 check hidden revision are ignored (6 have hidden children 7 and 8)
118
119
119 $ cat > commands.txt <<EOF
120 $ cat > commands.txt <<EOF
120 > pick b346ab9a313d 6 c
121 > pick b346ab9a313d 6 c
121 > pick c13eb81022ca 8 f
122 > pick c13eb81022ca 8 f
122 > EOF
123 > EOF
123 $ hg histedit 6 --commands commands.txt
124 $ hg histedit 6 --commands commands.txt
124 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
125 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
125
126
126
127
127 Check that histedit respect phases
128 Check that histedit respect phases
128 =========================================
129 =========================================
129
130
130 (not directly related to the test file but doesn't deserve it's own test case)
131 (not directly related to the test file but doesn't deserve it's own test case)
131
132
132 $ hg log -G
133 $ hg log -G
133 @ 9:c13eb81022ca f
134 @ 9:c13eb81022ca f
134 |
135 |
135 o 6:b346ab9a313d c
136 o 6:b346ab9a313d c
136 |
137 |
137 o 0:cb9a9f314b8b a
138 o 0:cb9a9f314b8b a
138
139
139 $ hg ph -pv '.^'
140 $ hg ph -pv '.^'
140 phase changed for 2 changesets
141 phase changed for 2 changesets
141 $ hg histedit -r '.~2'
142 $ hg histedit -r '.~2'
142 abort: cannot edit immutable changeset: cb9a9f314b8b
143 abort: cannot edit immutable changeset: cb9a9f314b8b
143 [255]
144 [255]
144
145
145
146
146 Test that rewriting leaving instability behind is allowed
147 Test that rewriting leaving instability behind is allowed
147 ---------------------------------------------------------------------
148 ---------------------------------------------------------------------
148
149
149 $ hg up '.^'
150 $ hg up '.^'
150 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
151 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
151 $ hg phase --force --draft .
152 $ hg ph --force --draft '.'
152 $ hg log -r 'children(.)'
153 $ hg log -r 'children(.)'
153 9:c13eb81022ca f (no-eol)
154 9:c13eb81022ca f (no-eol)
154 $ hg histedit -r '.'
155 $ cat > commands.txt <<EOF
156 > edit b346ab9a313d 6 c
157 > EOF
158 $ hg histedit -r '.' --commands commands.txt
159 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
160 adding c
161 abort: Make changes as needed, you may commit or record as needed now.
162 When you are finished, run hg histedit --continue to resume.
163 [255]
164 $ echo c >> c
165 $ hg histedit --continue
155 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
166 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
167
168 $ hg log -r 'unstable()'
169 9:c13eb81022ca f (no-eol)
170
171 stabilise
172
173 $ hg rebase -r 'unstable()' -d .
General Comments 0
You need to be logged in to leave comments. Login now