##// END OF EJS Templates
tests: fix up date ambiguity in cvs test
Matt Mackall -
r14569:017ab404 default
parent child Browse files
Show More
@@ -1,234 +1,232 b''
1 Test config convert.cvsps.mergefrom config setting.
1 Test config convert.cvsps.mergefrom config setting.
2 (Should test similar mergeto feature, but I don't understand it yet.)
2 (Should test similar mergeto feature, but I don't understand it yet.)
3 Requires builtin cvsps.
3 Requires builtin cvsps.
4
4
5 $ "$TESTDIR/hghave" cvs || exit 80
5 $ "$TESTDIR/hghave" cvs || exit 80
6 $ CVSROOT=`pwd`/cvsrepo
6 $ CVSROOT=`pwd`/cvsrepo
7 $ export CVSROOT
7 $ export CVSROOT
8
8
9 $ cvscall()
9 $ cvscall()
10 > {
10 > {
11 > cvs -f "$@"
11 > cvs -f "$@"
12 > }
12 > }
13
13
14 output of 'cvs ci' varies unpredictably, so just discard it
14 output of 'cvs ci' varies unpredictably, so just discard it
15 XXX copied from test-convert-cvs-synthetic
15 XXX copied from test-convert-cvs-synthetic
16
16
17 $ cvsci()
17 $ cvsci()
18 > {
18 > {
19 > sleep 1
19 > cvs -f ci "$@" > /dev/null
20 > cvs -f ci "$@" > /dev/null
20 > }
21 > }
21
22
22 XXX copied from test-convert-cvs-synthetic
23 XXX copied from test-convert-cvs-synthetic
23
24
24 $ echo "[extensions]" >> $HGRCPATH
25 $ echo "[extensions]" >> $HGRCPATH
25 $ echo "convert = " >> $HGRCPATH
26 $ echo "convert = " >> $HGRCPATH
26 $ echo "graphlog = " >> $HGRCPATH
27 $ echo "graphlog = " >> $HGRCPATH
27 $ echo "[convert]" >> $HGRCPATH
28 $ echo "[convert]" >> $HGRCPATH
28 $ echo "cvsps.cache=0" >> $HGRCPATH
29 $ echo "cvsps.cache=0" >> $HGRCPATH
29 $ echo "cvsps.mergefrom=\[MERGE from (\S+)\]" >> $HGRCPATH
30 $ echo "cvsps.mergefrom=\[MERGE from (\S+)\]" >> $HGRCPATH
30
31
31 create cvs repository with one project
32 create cvs repository with one project
32
33
33 $ mkdir cvsrepo
34 $ mkdir cvsrepo
34 $ cvscall -q -d "$CVSROOT" init
35 $ cvscall -q -d "$CVSROOT" init
35 $ mkdir cvsrepo/proj
36 $ mkdir cvsrepo/proj
36
37
37 populate cvs repository
38 populate cvs repository
38
39
39 $ cvscall -Q co proj
40 $ cvscall -Q co proj
40 $ cd proj
41 $ cd proj
41 $ touch file1
42 $ touch file1
42 $ cvscall -Q add file1
43 $ cvscall -Q add file1
43 $ cvsci -m"add file1 on trunk"
44 $ cvsci -m"add file1 on trunk"
44 cvs commit: Examining .
45 cvs commit: Examining .
45
46
46 create two release branches
47 create two release branches
47
48
48 $ cvscall -q tag -b v1_0
49 $ cvscall -q tag -b v1_0
49 T file1
50 T file1
50 $ cvscall -q tag -b v1_1
51 $ cvscall -q tag -b v1_1
51 T file1
52 T file1
52
53
53 modify file1 on branch v1_0
54 modify file1 on branch v1_0
54
55
55 $ cvscall -Q update -rv1_0
56 $ cvscall -Q update -rv1_0
56 $ sleep 1
57 $ echo "change" >> file1
57 $ echo "change" >> file1
58 $ cvsci -m"add text"
58 $ cvsci -m"add text"
59 cvs commit: Examining .
59 cvs commit: Examining .
60
60
61 make unrelated change on v1_1
61 make unrelated change on v1_1
62
62
63 $ cvscall -Q update -rv1_1
63 $ cvscall -Q update -rv1_1
64 $ touch unrelated
64 $ touch unrelated
65 $ cvscall -Q add unrelated
65 $ cvscall -Q add unrelated
66 $ cvsci -m"unrelated change"
66 $ cvsci -m"unrelated change"
67 cvs commit: Examining .
67 cvs commit: Examining .
68
68
69 merge file1 to v1_1
69 merge file1 to v1_1
70
70
71 $ cvscall -Q update -jv1_0
71 $ cvscall -Q update -jv1_0
72 RCS file: $TESTTMP/cvsrepo/proj/file1,v
72 RCS file: $TESTTMP/cvsrepo/proj/file1,v
73 retrieving revision 1.1
73 retrieving revision 1.1
74 retrieving revision 1.1.2.1
74 retrieving revision 1.1.2.1
75 Merging differences between 1.1 and 1.1.2.1 into file1
75 Merging differences between 1.1 and 1.1.2.1 into file1
76 $ cvsci -m"add text [MERGE from v1_0]"
76 $ cvsci -m"add text [MERGE from v1_0]"
77 cvs commit: Examining .
77 cvs commit: Examining .
78
78
79 merge change to trunk
79 merge change to trunk
80
80
81 $ cvscall -Q update -A
81 $ cvscall -Q update -A
82 $ cvscall -Q update -jv1_1
82 $ cvscall -Q update -jv1_1
83 RCS file: $TESTTMP/cvsrepo/proj/file1,v
83 RCS file: $TESTTMP/cvsrepo/proj/file1,v
84 retrieving revision 1.1
84 retrieving revision 1.1
85 retrieving revision 1.1.4.1
85 retrieving revision 1.1.4.1
86 Merging differences between 1.1 and 1.1.4.1 into file1
86 Merging differences between 1.1 and 1.1.4.1 into file1
87 $ cvsci -m"add text [MERGE from v1_1]"
87 $ cvsci -m"add text [MERGE from v1_1]"
88 cvs commit: Examining .
88 cvs commit: Examining .
89
89
90 non-merged change on trunk
90 non-merged change on trunk
91
91
92 $ echo "foo" > file2
92 $ echo "foo" > file2
93 $ cvscall -Q add file2
93 $ cvscall -Q add file2
94 $ cvsci -m"add file2 on trunk" file2
94 $ cvsci -m"add file2 on trunk" file2
95
95
96 this will create rev 1.3
96 this will create rev 1.3
97 change on trunk to backport
97 change on trunk to backport
98
98
99 $ sleep 1
100 $ echo "backport me" >> file1
99 $ echo "backport me" >> file1
101 $ cvsci -m"add other text" file1
100 $ cvsci -m"add other text" file1
102 $ cvscall log file1
101 $ cvscall log file1
103
102
104 RCS file: $TESTTMP/cvsrepo/proj/file1,v
103 RCS file: $TESTTMP/cvsrepo/proj/file1,v
105 Working file: file1
104 Working file: file1
106 head: 1.3
105 head: 1.3
107 branch:
106 branch:
108 locks: strict
107 locks: strict
109 access list:
108 access list:
110 symbolic names:
109 symbolic names:
111 v1_1: 1.1.0.4
110 v1_1: 1.1.0.4
112 v1_0: 1.1.0.2
111 v1_0: 1.1.0.2
113 keyword substitution: kv
112 keyword substitution: kv
114 total revisions: 5; selected revisions: 5
113 total revisions: 5; selected revisions: 5
115 description:
114 description:
116 ----------------------------
115 ----------------------------
117 revision 1.3
116 revision 1.3
118 date: * (glob)
117 date: * (glob)
119 add other text
118 add other text
120 ----------------------------
119 ----------------------------
121 revision 1.2
120 revision 1.2
122 date: * (glob)
121 date: * (glob)
123 add text [MERGE from v1_1]
122 add text [MERGE from v1_1]
124 ----------------------------
123 ----------------------------
125 revision 1.1
124 revision 1.1
126 date: * (glob)
125 date: * (glob)
127 branches: 1.1.2; 1.1.4;
126 branches: 1.1.2; 1.1.4;
128 add file1 on trunk
127 add file1 on trunk
129 ----------------------------
128 ----------------------------
130 revision 1.1.4.1
129 revision 1.1.4.1
131 date: * (glob)
130 date: * (glob)
132 add text [MERGE from v1_0]
131 add text [MERGE from v1_0]
133 ----------------------------
132 ----------------------------
134 revision 1.1.2.1
133 revision 1.1.2.1
135 date: * (glob)
134 date: * (glob)
136 add text
135 add text
137 =============================================================================
136 =============================================================================
138
137
139 XXX how many ways are there to spell "trunk" with CVS?
138 XXX how many ways are there to spell "trunk" with CVS?
140 backport trunk change to v1_1
139 backport trunk change to v1_1
141
140
142 $ cvscall -Q update -rv1_1
141 $ cvscall -Q update -rv1_1
143 $ cvscall -Q update -j1.2 -j1.3 file1
142 $ cvscall -Q update -j1.2 -j1.3 file1
144 RCS file: $TESTTMP/cvsrepo/proj/file1,v
143 RCS file: $TESTTMP/cvsrepo/proj/file1,v
145 retrieving revision 1.2
144 retrieving revision 1.2
146 retrieving revision 1.3
145 retrieving revision 1.3
147 Merging differences between 1.2 and 1.3 into file1
146 Merging differences between 1.2 and 1.3 into file1
148 $ cvsci -m"add other text [MERGE from HEAD]" file1
147 $ cvsci -m"add other text [MERGE from HEAD]" file1
149
148
150 fix bug on v1_1, merge to trunk with error
149 fix bug on v1_1, merge to trunk with error
151
150
152 $ cvscall -Q update -rv1_1
151 $ cvscall -Q update -rv1_1
153 $ sleep 1
154 $ echo "merge forward" >> file1
152 $ echo "merge forward" >> file1
155 $ cvscall -Q tag unmerged
153 $ cvscall -Q tag unmerged
156 $ cvsci -m"fix file1"
154 $ cvsci -m"fix file1"
157 cvs commit: Examining .
155 cvs commit: Examining .
158 $ cvscall -Q update -A
156 $ cvscall -Q update -A
159 $ cvscall -Q update -junmerged -jv1_1
157 $ cvscall -Q update -junmerged -jv1_1
160 RCS file: $TESTTMP/cvsrepo/proj/file1,v
158 RCS file: $TESTTMP/cvsrepo/proj/file1,v
161 retrieving revision 1.1.4.2
159 retrieving revision 1.1.4.2
162 retrieving revision 1.1.4.3
160 retrieving revision 1.1.4.3
163 Merging differences between 1.1.4.2 and 1.1.4.3 into file1
161 Merging differences between 1.1.4.2 and 1.1.4.3 into file1
164
162
165 note the typo in the commit log message
163 note the typo in the commit log message
166
164
167 $ cvsci -m"fix file1 [MERGE from v1-1]"
165 $ cvsci -m"fix file1 [MERGE from v1-1]"
168 cvs commit: Examining .
166 cvs commit: Examining .
169 $ cvs -Q tag -d unmerged
167 $ cvs -Q tag -d unmerged
170
168
171 convert to hg
169 convert to hg
172
170
173 $ cd ..
171 $ cd ..
174 $ hg convert proj proj.hg
172 $ hg convert proj proj.hg
175 initializing destination proj.hg repository
173 initializing destination proj.hg repository
176 connecting to $TESTTMP/cvsrepo
174 connecting to $TESTTMP/cvsrepo
177 scanning source...
175 scanning source...
178 collecting CVS rlog
176 collecting CVS rlog
179 12 log entries
177 12 log entries
180 creating changesets
178 creating changesets
181 warning: CVS commit message references non-existent branch 'v1-1':
179 warning: CVS commit message references non-existent branch 'v1-1':
182 fix file1 [MERGE from v1-1]
180 fix file1 [MERGE from v1-1]
183 10 changeset entries
181 10 changeset entries
184 sorting...
182 sorting...
185 converting...
183 converting...
186 9 add file1 on trunk
184 9 add file1 on trunk
187 8 add text
185 8 add text
188 7 unrelated change
186 7 unrelated change
189 6 add text [MERGE from v1_0]
187 6 add text [MERGE from v1_0]
190 5 add text [MERGE from v1_1]
188 5 add text [MERGE from v1_1]
191 4 add file2 on trunk
189 4 add file2 on trunk
192 3 add other text
190 3 add other text
193 2 add other text [MERGE from HEAD]
191 2 add other text [MERGE from HEAD]
194 1 fix file1
192 1 fix file1
195 0 fix file1 [MERGE from v1-1]
193 0 fix file1 [MERGE from v1-1]
196
194
197 complete log
195 complete log
198
196
199 $ template="{rev}: '{branches}' {desc}\n"
197 $ template="{rev}: '{branches}' {desc}\n"
200 $ hg -R proj.hg log --template="$template"
198 $ hg -R proj.hg log --template="$template"
201 9: '' fix file1 [MERGE from v1-1]
199 9: '' fix file1 [MERGE from v1-1]
202 8: 'v1_1' fix file1
200 8: 'v1_1' fix file1
203 7: 'v1_1' add other text [MERGE from HEAD]
201 7: 'v1_1' add other text [MERGE from HEAD]
204 6: '' add other text
202 6: '' add other text
205 5: '' add file2 on trunk
203 5: '' add file2 on trunk
206 4: '' add text [MERGE from v1_1]
204 4: '' add text [MERGE from v1_1]
207 3: 'v1_1' add text [MERGE from v1_0]
205 3: 'v1_1' add text [MERGE from v1_0]
208 2: 'v1_1' unrelated change
206 2: 'v1_1' unrelated change
209 1: 'v1_0' add text
207 1: 'v1_0' add text
210 0: '' add file1 on trunk
208 0: '' add file1 on trunk
211
209
212 graphical log
210 graphical log
213
211
214 $ hg -R proj.hg glog --template="$template"
212 $ hg -R proj.hg glog --template="$template"
215 o 9: '' fix file1 [MERGE from v1-1]
213 o 9: '' fix file1 [MERGE from v1-1]
216 |
214 |
217 | o 8: 'v1_1' fix file1
215 | o 8: 'v1_1' fix file1
218 | |
216 | |
219 | o 7: 'v1_1' add other text [MERGE from HEAD]
217 | o 7: 'v1_1' add other text [MERGE from HEAD]
220 |/|
218 |/|
221 o | 6: '' add other text
219 o | 6: '' add other text
222 | |
220 | |
223 o | 5: '' add file2 on trunk
221 o | 5: '' add file2 on trunk
224 | |
222 | |
225 o | 4: '' add text [MERGE from v1_1]
223 o | 4: '' add text [MERGE from v1_1]
226 |\|
224 |\|
227 | o 3: 'v1_1' add text [MERGE from v1_0]
225 | o 3: 'v1_1' add text [MERGE from v1_0]
228 | |\
226 | |\
229 +---o 2: 'v1_1' unrelated change
227 +---o 2: 'v1_1' unrelated change
230 | |
228 | |
231 | o 1: 'v1_0' add text
229 | o 1: 'v1_0' add text
232 |/
230 |/
233 o 0: '' add file1 on trunk
231 o 0: '' add file1 on trunk
234
232
General Comments 0
You need to be logged in to leave comments. Login now