annotate tests/test-branch-option.t @ 23587:8063901e56cd

memctx: calculate exact status being committed from specified files Before this patch, "memctx._status" is initialized by "(files, [], [], [], [], [], [])" and this causes "memctx.modified" to include not only modified files but also added and removed ones incorrectly. This patch adds "_status" method to calculate exact status being committed according to "files" specified at construction time. Exact "_status" is useful to share/reuse logic of committablectx. This patch is also preparation for issues fixed by subsequent patches. Some details of changes for tests in this patch: - some filename lines are omitted in "test-convert-svn-encoding.t", because they are correctly listed up as "removed" files those lines are written out in "localrepository.commitctx" for "modified" and "added" files by "ui.note". - "| fixbundle" filterring in "test-histedit-fold.t" is omitted to check lines including "added" correctly "fixbundle" discards all lines including "added".
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Wed, 17 Dec 2014 15:09:38 +0900
parents 41885892796e
children 701df761aa94
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
1 test branch selection options
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
2
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
3 $ hg init branch
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
4 $ cd branch
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
5 $ hg branch a
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
6 marked working directory as branch a
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 12942
diff changeset
7 (branches are permanent and global, did you want a bookmark?)
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
8 $ echo a > foo
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
9 $ hg ci -d '0 0' -Ama
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
10 adding foo
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
11 $ echo a2 > foo
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
12 $ hg ci -d '0 0' -ma2
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
13 $ hg up 0
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
14 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
15 $ hg branch c
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
16 marked working directory as branch c
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 12942
diff changeset
17 (branches are permanent and global, did you want a bookmark?)
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
18 $ echo c > foo
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
19 $ hg ci -d '0 0' -mc
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
20 $ hg tag -l z
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
21 $ cd ..
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
22 $ hg clone -r 0 branch branch2
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
23 adding changesets
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
24 adding manifests
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
25 adding file changes
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
26 added 1 changesets with 1 changes to 1 files
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
27 updating to branch a
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
28 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
29 $ cd branch2
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
30 $ hg up 0
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
31 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
32 $ hg branch b
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
33 marked working directory as branch b
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 12942
diff changeset
34 (branches are permanent and global, did you want a bookmark?)
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
35 $ echo b > foo
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
36 $ hg ci -d '0 0' -mb
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
37 $ hg up 0
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
38 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
39 $ hg --encoding utf-8 branch æ
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12847
diff changeset
40 marked working directory as branch \xc3\xa6 (esc)
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 12942
diff changeset
41 (branches are permanent and global, did you want a bookmark?)
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
42 $ echo ae1 > foo
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
43 $ hg ci -d '0 0' -mae1
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
44 $ hg up 0
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
45 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
46 $ hg --encoding utf-8 branch -f æ
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12847
diff changeset
47 marked working directory as branch \xc3\xa6 (esc)
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 12942
diff changeset
48 (branches are permanent and global, did you want a bookmark?)
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
49 $ echo ae2 > foo
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
50 $ hg ci -d '0 0' -mae2
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
51 created new head
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
52 $ hg up 0
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
53 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
54 $ hg branch -f b
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
55 marked working directory as branch b
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 12942
diff changeset
56 (branches are permanent and global, did you want a bookmark?)
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
57 $ echo b2 > foo
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
58 $ hg ci -d '0 0' -mb2
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
59 created new head
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
60
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
61 unknown branch and fallback
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
62
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
63 $ hg in -qbz
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
64 abort: unknown branch 'z'!
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11869
diff changeset
65 [255]
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
66 $ hg in -q ../branch#z
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
67 2:f25d57ab0566
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
68 $ hg out -qbz
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
69 abort: unknown branch 'z'!
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11869
diff changeset
70 [255]
10365
d757bc0c7865 interpret repo#name url syntax as branch instead of revision
Sune Foldager <cryo@cyanite.org>
parents:
diff changeset
71
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
72 in rev c branch a
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
73
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
74 $ hg in -qr c ../branch#a
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
75 1:dd6e60a716c6
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
76 2:f25d57ab0566
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
77 $ hg in -qr c -b a
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
78 1:dd6e60a716c6
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
79 2:f25d57ab0566
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
80
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
81 out branch .
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
82
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
83 $ hg out -q ../branch#.
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
84 1:b84708d77ab7
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
85 4:65511d0e2b55
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
86 $ hg out -q -b .
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
87 1:b84708d77ab7
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
88 4:65511d0e2b55
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
89
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
90 out branch . non-ascii
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
91
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
92 $ hg --encoding utf-8 up æ
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
93 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
94 $ hg --encoding latin1 out -q ../branch#.
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
95 2:df5a44224d4e
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
96 3:4f4a5125ca10
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
97 $ hg --encoding latin1 out -q -b .
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
98 2:df5a44224d4e
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
99 3:4f4a5125ca10
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
100
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
101 clone branch b
10365
d757bc0c7865 interpret repo#name url syntax as branch instead of revision
Sune Foldager <cryo@cyanite.org>
parents:
diff changeset
102
11869
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
103 $ cd ..
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
104 $ hg clone branch2#b branch3
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
105 adding changesets
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
106 adding manifests
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
107 adding file changes
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
108 added 3 changesets with 3 changes to 1 files (+1 heads)
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
109 updating to branch b
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
110 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
111 $ hg -q -R branch3 heads b
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
112 2:65511d0e2b55
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
113 1:b84708d77ab7
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
114 $ hg -q -R branch3 parents
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
115 2:65511d0e2b55
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
116 $ rm -rf branch3
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
117
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
118 clone rev a branch b
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
119
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
120 $ hg clone -r a branch2#b branch3
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
121 adding changesets
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
122 adding manifests
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
123 adding file changes
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
124 added 3 changesets with 3 changes to 1 files (+1 heads)
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
125 updating to branch a
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
126 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
127 $ hg -q -R branch3 heads b
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
128 2:65511d0e2b55
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
129 1:b84708d77ab7
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
130 $ hg -q -R branch3 parents
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
131 0:5b65ba7c951d
36a5e7cb6c8d tests: unify test-branch-option
Martin Geisler <mg@lazybytes.net>
parents: 11322
diff changeset
132 $ rm -rf branch3