##// END OF EJS Templates
hgweb: add bookmarks listing to raw style with test case
Yuya Nishihara -
r13921:4788923a default
parent child Browse files
Show More
@@ -1,28 +1,30
1 1 mimetype = 'text/plain; charset={encoding}'
2 2 header = ''
3 3 footer = ''
4 4 changeset = changeset.tmpl
5 5 difflineplus = '{line}'
6 6 difflineminus = '{line}'
7 7 difflineat = '{line}'
8 8 diffline = '{line}'
9 9 changesetparent = '# Parent {node}'
10 10 changesetchild = '# Child {node}'
11 11 filenodelink = ''
12 12 filenolink = ''
13 13 fileline = '{line}'
14 14 diffblock = '{lines}'
15 15 filediff = filediff.tmpl
16 16 fileannotate = fileannotate.tmpl
17 17 annotateline = '{author|user}@{rev}: {line}'
18 18 manifest = manifest.tmpl
19 19 direntry = 'drwxr-xr-x {basename}\n'
20 20 fileentry = '{permissions|permissions} {size} {basename}\n'
21 21 index = index.tmpl
22 22 notfound = notfound.tmpl
23 23 error = error.tmpl
24 24 indexentry = '{url}\n'
25 25 tags = '{entries%tagentry}'
26 26 tagentry = '{tag} {node}\n'
27 bookmarks = '{entries%bookmarkentry}'
28 bookmarkentry = '{bookmark} {node}\n'
27 29 branches = '{entries%branchentry}'
28 30 branchentry = '{branch} {node} {status}\n'
@@ -1,1089 +1,1093
1 1 An attempt at more fully testing the hgweb web interface.
2 2 The following things are tested elsewhere and are therefore omitted:
3 3 - archive, tested in test-archive
4 4 - unbundle, tested in test-push-http
5 5 - changegroupsubset, tested in test-pull
6 6
7 7 Set up the repo
8 8
9 9 $ hg init test
10 10 $ cd test
11 11 $ mkdir da
12 12 $ echo foo > da/foo
13 13 $ echo foo > foo
14 14 $ hg ci -Ambase
15 15 adding da/foo
16 16 adding foo
17 17 $ hg tag 1.0
18 18 $ hg bookmark something
19 19 $ echo another > foo
20 20 $ hg branch stable
21 21 marked working directory as branch stable
22 22 $ hg ci -Ambranch
23 23 $ hg serve --config server.uncompressed=False -n test -p $HGPORT -d --pid-file=hg.pid -E errors.log
24 24 $ cat hg.pid >> $DAEMON_PIDS
25 25
26 26 Logs and changes
27 27
28 28 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log/?style=atom'
29 29 200 Script output follows
30 30
31 31 <?xml version="1.0" encoding="ascii"?>
32 32 <feed xmlns="http://www.w3.org/2005/Atom">
33 33 <!-- Changelog -->
34 34 <id>http://*:$HGPORT/</id> (glob)
35 35 <link rel="self" href="http://*:$HGPORT/atom-log"/> (glob)
36 36 <link rel="alternate" href="http://*:$HGPORT/"/> (glob)
37 37 <title>test Changelog</title>
38 38 <updated>1970-01-01T00:00:00+00:00</updated>
39 39
40 40 <entry>
41 41 <title>branch</title>
42 42 <id>http://*:$HGPORT/#changeset-1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe</id> (glob)
43 43 <link href="http://*:$HGPORT/rev/1d22e65f027e"/> (glob)
44 44 <author>
45 45 <name>test</name>
46 46 <email>&#116;&#101;&#115;&#116;</email>
47 47 </author>
48 48 <updated>1970-01-01T00:00:00+00:00</updated>
49 49 <published>1970-01-01T00:00:00+00:00</published>
50 50 <content type="xhtml">
51 51 <div xmlns="http://www.w3.org/1999/xhtml">
52 52 <pre xml:space="preserve">branch</pre>
53 53 </div>
54 54 </content>
55 55 </entry>
56 56 <entry>
57 57 <title>Added tag 1.0 for changeset 2ef0ac749a14</title>
58 58 <id>http://*:$HGPORT/#changeset-a4f92ed23982be056b9852de5dfe873eaac7f0de</id> (glob)
59 59 <link href="http://*:$HGPORT/rev/a4f92ed23982"/> (glob)
60 60 <author>
61 61 <name>test</name>
62 62 <email>&#116;&#101;&#115;&#116;</email>
63 63 </author>
64 64 <updated>1970-01-01T00:00:00+00:00</updated>
65 65 <published>1970-01-01T00:00:00+00:00</published>
66 66 <content type="xhtml">
67 67 <div xmlns="http://www.w3.org/1999/xhtml">
68 68 <pre xml:space="preserve">Added tag 1.0 for changeset 2ef0ac749a14</pre>
69 69 </div>
70 70 </content>
71 71 </entry>
72 72 <entry>
73 73 <title>base</title>
74 74 <id>http://*:$HGPORT/#changeset-2ef0ac749a14e4f57a5a822464a0902c6f7f448f</id> (glob)
75 75 <link href="http://*:$HGPORT/rev/2ef0ac749a14"/> (glob)
76 76 <author>
77 77 <name>test</name>
78 78 <email>&#116;&#101;&#115;&#116;</email>
79 79 </author>
80 80 <updated>1970-01-01T00:00:00+00:00</updated>
81 81 <published>1970-01-01T00:00:00+00:00</published>
82 82 <content type="xhtml">
83 83 <div xmlns="http://www.w3.org/1999/xhtml">
84 84 <pre xml:space="preserve">base</pre>
85 85 </div>
86 86 </content>
87 87 </entry>
88 88
89 89 </feed>
90 90 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log/1/?style=atom'
91 91 200 Script output follows
92 92
93 93 <?xml version="1.0" encoding="ascii"?>
94 94 <feed xmlns="http://www.w3.org/2005/Atom">
95 95 <!-- Changelog -->
96 96 <id>http://*:$HGPORT/</id> (glob)
97 97 <link rel="self" href="http://*:$HGPORT/atom-log"/> (glob)
98 98 <link rel="alternate" href="http://*:$HGPORT/"/> (glob)
99 99 <title>test Changelog</title>
100 100 <updated>1970-01-01T00:00:00+00:00</updated>
101 101
102 102 <entry>
103 103 <title>branch</title>
104 104 <id>http://*:$HGPORT/#changeset-1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe</id> (glob)
105 105 <link href="http://*:$HGPORT/rev/1d22e65f027e"/> (glob)
106 106 <author>
107 107 <name>test</name>
108 108 <email>&#116;&#101;&#115;&#116;</email>
109 109 </author>
110 110 <updated>1970-01-01T00:00:00+00:00</updated>
111 111 <published>1970-01-01T00:00:00+00:00</published>
112 112 <content type="xhtml">
113 113 <div xmlns="http://www.w3.org/1999/xhtml">
114 114 <pre xml:space="preserve">branch</pre>
115 115 </div>
116 116 </content>
117 117 </entry>
118 118 <entry>
119 119 <title>Added tag 1.0 for changeset 2ef0ac749a14</title>
120 120 <id>http://*:$HGPORT/#changeset-a4f92ed23982be056b9852de5dfe873eaac7f0de</id> (glob)
121 121 <link href="http://*:$HGPORT/rev/a4f92ed23982"/> (glob)
122 122 <author>
123 123 <name>test</name>
124 124 <email>&#116;&#101;&#115;&#116;</email>
125 125 </author>
126 126 <updated>1970-01-01T00:00:00+00:00</updated>
127 127 <published>1970-01-01T00:00:00+00:00</published>
128 128 <content type="xhtml">
129 129 <div xmlns="http://www.w3.org/1999/xhtml">
130 130 <pre xml:space="preserve">Added tag 1.0 for changeset 2ef0ac749a14</pre>
131 131 </div>
132 132 </content>
133 133 </entry>
134 134 <entry>
135 135 <title>base</title>
136 136 <id>http://*:$HGPORT/#changeset-2ef0ac749a14e4f57a5a822464a0902c6f7f448f</id> (glob)
137 137 <link href="http://*:$HGPORT/rev/2ef0ac749a14"/> (glob)
138 138 <author>
139 139 <name>test</name>
140 140 <email>&#116;&#101;&#115;&#116;</email>
141 141 </author>
142 142 <updated>1970-01-01T00:00:00+00:00</updated>
143 143 <published>1970-01-01T00:00:00+00:00</published>
144 144 <content type="xhtml">
145 145 <div xmlns="http://www.w3.org/1999/xhtml">
146 146 <pre xml:space="preserve">base</pre>
147 147 </div>
148 148 </content>
149 149 </entry>
150 150
151 151 </feed>
152 152 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log/1/foo/?style=atom'
153 153 200 Script output follows
154 154
155 155 <?xml version="1.0" encoding="ascii"?>
156 156 <feed xmlns="http://www.w3.org/2005/Atom">
157 157 <id>http://*:$HGPORT/atom-log/tip/foo</id> (glob)
158 158 <link rel="self" href="http://*:$HGPORT/atom-log/tip/foo"/> (glob)
159 159 <title>test: foo history</title>
160 160 <updated>1970-01-01T00:00:00+00:00</updated>
161 161
162 162 <entry>
163 163 <title>base</title>
164 164 <id>http://*:$HGPORT/#changeset-2ef0ac749a14e4f57a5a822464a0902c6f7f448f</id> (glob)
165 165 <link href="http://*:$HGPORT/rev/2ef0ac749a14"/> (glob)
166 166 <author>
167 167 <name>test</name>
168 168 <email>&#116;&#101;&#115;&#116;</email>
169 169 </author>
170 170 <updated>1970-01-01T00:00:00+00:00</updated>
171 171 <published>1970-01-01T00:00:00+00:00</published>
172 172 <content type="xhtml">
173 173 <div xmlns="http://www.w3.org/1999/xhtml">
174 174 <pre xml:space="preserve">base</pre>
175 175 </div>
176 176 </content>
177 177 </entry>
178 178
179 179 </feed>
180 180 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/shortlog/'
181 181 200 Script output follows
182 182
183 183 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
184 184 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
185 185 <head>
186 186 <link rel="icon" href="/static/hgicon.png" type="image/png" />
187 187 <meta name="robots" content="index, nofollow" />
188 188 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
189 189
190 190 <title>test: log</title>
191 191 <link rel="alternate" type="application/atom+xml"
192 192 href="/atom-log" title="Atom feed for test" />
193 193 <link rel="alternate" type="application/rss+xml"
194 194 href="/rss-log" title="RSS feed for test" />
195 195 </head>
196 196 <body>
197 197
198 198 <div class="container">
199 199 <div class="menu">
200 200 <div class="logo">
201 201 <a href="http://mercurial.selenic.com/">
202 202 <img src="/static/hglogo.png" alt="mercurial" /></a>
203 203 </div>
204 204 <ul>
205 205 <li class="active">log</li>
206 206 <li><a href="/graph/1d22e65f027e">graph</a></li>
207 207 <li><a href="/tags">tags</a></li>
208 208 <li><a href="/bookmarks">bookmarks</a></li>
209 209 <li><a href="/branches">branches</a></li>
210 210 </ul>
211 211 <ul>
212 212 <li><a href="/rev/1d22e65f027e">changeset</a></li>
213 213 <li><a href="/file/1d22e65f027e">browse</a></li>
214 214 </ul>
215 215 <ul>
216 216
217 217 </ul>
218 218 <ul>
219 219 <li><a href="/help">help</a></li>
220 220 </ul>
221 221 </div>
222 222
223 223 <div class="main">
224 224 <h2><a href="/">test</a></h2>
225 225 <h3>log</h3>
226 226
227 227 <form class="search" action="/log">
228 228
229 229 <p><input name="rev" id="search1" type="text" size="30" /></p>
230 230 <div id="hint">find changesets by author, revision,
231 231 files, or words in the commit message</div>
232 232 </form>
233 233
234 234 <div class="navigate">
235 235 <a href="/shortlog/2?revcount=30">less</a>
236 236 <a href="/shortlog/2?revcount=120">more</a>
237 237 | rev 2: <a href="/shortlog/2ef0ac749a14">(0)</a> <a href="/shortlog/tip">tip</a>
238 238 </div>
239 239
240 240 <table class="bigtable">
241 241 <tr>
242 242 <th class="age">age</th>
243 243 <th class="author">author</th>
244 244 <th class="description">description</th>
245 245 </tr>
246 246 <tr class="parity0">
247 247 <td class="age">1970-01-01</td>
248 248 <td class="author">test</td>
249 249 <td class="description"><a href="/rev/1d22e65f027e">branch</a><span class="branchhead">stable</span> <span class="tag">tip</span> <span class="tag">something</span> </td>
250 250 </tr>
251 251 <tr class="parity1">
252 252 <td class="age">1970-01-01</td>
253 253 <td class="author">test</td>
254 254 <td class="description"><a href="/rev/a4f92ed23982">Added tag 1.0 for changeset 2ef0ac749a14</a><span class="branchhead">default</span> </td>
255 255 </tr>
256 256 <tr class="parity0">
257 257 <td class="age">1970-01-01</td>
258 258 <td class="author">test</td>
259 259 <td class="description"><a href="/rev/2ef0ac749a14">base</a><span class="tag">1.0</span> </td>
260 260 </tr>
261 261
262 262 </table>
263 263
264 264 <div class="navigate">
265 265 <a href="/shortlog/2?revcount=30">less</a>
266 266 <a href="/shortlog/2?revcount=120">more</a>
267 267 | rev 2: <a href="/shortlog/2ef0ac749a14">(0)</a> <a href="/shortlog/tip">tip</a>
268 268 </div>
269 269
270 270 </div>
271 271 </div>
272 272
273 273
274 274
275 275 </body>
276 276 </html>
277 277
278 278 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/rev/0/'
279 279 200 Script output follows
280 280
281 281 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
282 282 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
283 283 <head>
284 284 <link rel="icon" href="/static/hgicon.png" type="image/png" />
285 285 <meta name="robots" content="index, nofollow" />
286 286 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
287 287
288 288 <title>test: 2ef0ac749a14</title>
289 289 </head>
290 290 <body>
291 291 <div class="container">
292 292 <div class="menu">
293 293 <div class="logo">
294 294 <a href="http://mercurial.selenic.com/">
295 295 <img src="/static/hglogo.png" alt="mercurial" /></a>
296 296 </div>
297 297 <ul>
298 298 <li><a href="/shortlog/2ef0ac749a14">log</a></li>
299 299 <li><a href="/graph/2ef0ac749a14">graph</a></li>
300 300 <li><a href="/tags">tags</a></li>
301 301 <li><a href="/bookmarks">bookmarks</a></li>
302 302 <li><a href="/branches">branches</a></li>
303 303 </ul>
304 304 <ul>
305 305 <li class="active">changeset</li>
306 306 <li><a href="/raw-rev/2ef0ac749a14">raw</a></li>
307 307 <li><a href="/file/2ef0ac749a14">browse</a></li>
308 308 </ul>
309 309 <ul>
310 310
311 311 </ul>
312 312 <ul>
313 313 <li><a href="/help">help</a></li>
314 314 </ul>
315 315 </div>
316 316
317 317 <div class="main">
318 318
319 319 <h2><a href="/">test</a></h2>
320 320 <h3>changeset 0:2ef0ac749a14 <span class="tag">1.0</span> </h3>
321 321
322 322 <form class="search" action="/log">
323 323
324 324 <p><input name="rev" id="search1" type="text" size="30" /></p>
325 325 <div id="hint">find changesets by author, revision,
326 326 files, or words in the commit message</div>
327 327 </form>
328 328
329 329 <div class="description">base</div>
330 330
331 331 <table id="changesetEntry">
332 332 <tr>
333 333 <th class="author">author</th>
334 334 <td class="author">&#116;&#101;&#115;&#116;</td>
335 335 </tr>
336 336 <tr>
337 337 <th class="date">date</th>
338 338 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td></tr>
339 339 <tr>
340 340 <th class="author">parents</th>
341 341 <td class="author"></td>
342 342 </tr>
343 343 <tr>
344 344 <th class="author">children</th>
345 345 <td class="author"> <a href="/rev/a4f92ed23982">a4f92ed23982</a></td>
346 346 </tr>
347 347 <tr>
348 348 <th class="files">files</th>
349 349 <td class="files"><a href="/file/2ef0ac749a14/da/foo">da/foo</a> <a href="/file/2ef0ac749a14/foo">foo</a> </td>
350 350 </tr>
351 351 </table>
352 352
353 353 <div class="overflow">
354 354 <div class="sourcefirst"> line diff</div>
355 355
356 356 <div class="source bottomline parity0"><pre><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
357 357 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ b/da/foo Thu Jan 01 00:00:00 1970 +0000
358 358 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -0,0 +1,1 @@
359 359 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="plusline">+foo
360 360 </span></pre></div><div class="source bottomline parity1"><pre><a href="#l2.1" id="l2.1"> 2.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
361 361 </span><a href="#l2.2" id="l2.2"> 2.2</a> <span class="plusline">+++ b/foo Thu Jan 01 00:00:00 1970 +0000
362 362 </span><a href="#l2.3" id="l2.3"> 2.3</a> <span class="atline">@@ -0,0 +1,1 @@
363 363 </span><a href="#l2.4" id="l2.4"> 2.4</a> <span class="plusline">+foo
364 364 </span></pre></div>
365 365 </div>
366 366
367 367 </div>
368 368 </div>
369 369
370 370
371 371 </body>
372 372 </html>
373 373
374 374 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/rev/1/?style=raw'
375 375 200 Script output follows
376 376
377 377
378 378 # HG changeset patch
379 379 # User test
380 380 # Date 0 0
381 381 # Node ID a4f92ed23982be056b9852de5dfe873eaac7f0de
382 382 # Parent 2ef0ac749a14e4f57a5a822464a0902c6f7f448f
383 383 Added tag 1.0 for changeset 2ef0ac749a14
384 384
385 385 diff -r 2ef0ac749a14 -r a4f92ed23982 .hgtags
386 386 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
387 387 +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000
388 388 @@ -0,0 +1,1 @@
389 389 +2ef0ac749a14e4f57a5a822464a0902c6f7f448f 1.0
390 390
391 391 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log?rev=base'
392 392 200 Script output follows
393 393
394 394 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
395 395 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
396 396 <head>
397 397 <link rel="icon" href="/static/hgicon.png" type="image/png" />
398 398 <meta name="robots" content="index, nofollow" />
399 399 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
400 400
401 401 <title>test: searching for base</title>
402 402 </head>
403 403 <body>
404 404
405 405 <div class="container">
406 406 <div class="menu">
407 407 <div class="logo">
408 408 <a href="http://mercurial.selenic.com/">
409 409 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
410 410 </div>
411 411 <ul>
412 412 <li><a href="/shortlog">log</a></li>
413 413 <li><a href="/graph">graph</a></li>
414 414 <li><a href="/tags">tags</a></li>
415 415 <li><a href="/bookmarks">bookmarks</a></li>
416 416 <li><a href="/branches">branches</a></li>
417 417 <li><a href="/help">help</a></li>
418 418 </ul>
419 419 </div>
420 420
421 421 <div class="main">
422 422 <h2><a href="/">test</a></h2>
423 423 <h3>searching for 'base'</h3>
424 424
425 425 <form class="search" action="/log">
426 426
427 427 <p><input name="rev" id="search1" type="text" size="30"></p>
428 428 <div id="hint">find changesets by author, revision,
429 429 files, or words in the commit message</div>
430 430 </form>
431 431
432 432 <div class="navigate">
433 433 <a href="/search/?rev=base&revcount=5">less</a>
434 434 <a href="/search/?rev=base&revcount=20">more</a>
435 435 </div>
436 436
437 437 <table class="bigtable">
438 438 <tr>
439 439 <th class="age">age</th>
440 440 <th class="author">author</th>
441 441 <th class="description">description</th>
442 442 </tr>
443 443 <tr class="parity0">
444 444 <td class="age">1970-01-01</td>
445 445 <td class="author">test</td>
446 446 <td class="description"><a href="/rev/2ef0ac749a14">base</a><span class="tag">1.0</span> </td>
447 447 </tr>
448 448
449 449 </table>
450 450
451 451 <div class="navigate">
452 452 <a href="/search/?rev=base&revcount=5">less</a>
453 453 <a href="/search/?rev=base&revcount=20">more</a>
454 454 </div>
455 455
456 456 </div>
457 457 </div>
458 458
459 459
460 460
461 461 </body>
462 462 </html>
463 463
464 464
465 465 File-related
466 466
467 467 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo/?style=raw'
468 468 200 Script output follows
469 469
470 470 foo
471 471 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/annotate/1/foo/?style=raw'
472 472 200 Script output follows
473 473
474 474
475 475 test@0: foo
476 476
477 477
478 478
479 479
480 480 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/?style=raw'
481 481 200 Script output follows
482 482
483 483
484 484 drwxr-xr-x da
485 485 -rw-r--r-- 45 .hgtags
486 486 -rw-r--r-- 4 foo
487 487
488 488
489 489 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo'
490 490 200 Script output follows
491 491
492 492 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
493 493 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
494 494 <head>
495 495 <link rel="icon" href="/static/hgicon.png" type="image/png" />
496 496 <meta name="robots" content="index, nofollow" />
497 497 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
498 498
499 499 <title>test: a4f92ed23982 foo</title>
500 500 </head>
501 501 <body>
502 502
503 503 <div class="container">
504 504 <div class="menu">
505 505 <div class="logo">
506 506 <a href="http://mercurial.selenic.com/">
507 507 <img src="/static/hglogo.png" alt="mercurial" /></a>
508 508 </div>
509 509 <ul>
510 510 <li><a href="/shortlog/a4f92ed23982">log</a></li>
511 511 <li><a href="/graph/a4f92ed23982">graph</a></li>
512 512 <li><a href="/tags">tags</a></li>
513 513 <li><a href="/branches">branches</a></li>
514 514 </ul>
515 515 <ul>
516 516 <li><a href="/rev/a4f92ed23982">changeset</a></li>
517 517 <li><a href="/file/a4f92ed23982/">browse</a></li>
518 518 </ul>
519 519 <ul>
520 520 <li class="active">file</li>
521 521 <li><a href="/file/tip/foo">latest</a></li>
522 522 <li><a href="/diff/a4f92ed23982/foo">diff</a></li>
523 523 <li><a href="/annotate/a4f92ed23982/foo">annotate</a></li>
524 524 <li><a href="/log/a4f92ed23982/foo">file log</a></li>
525 525 <li><a href="/raw-file/a4f92ed23982/foo">raw</a></li>
526 526 </ul>
527 527 <ul>
528 528 <li><a href="/help">help</a></li>
529 529 </ul>
530 530 </div>
531 531
532 532 <div class="main">
533 533 <h2><a href="/">test</a></h2>
534 534 <h3>view foo @ 1:a4f92ed23982</h3>
535 535
536 536 <form class="search" action="/log">
537 537
538 538 <p><input name="rev" id="search1" type="text" size="30" /></p>
539 539 <div id="hint">find changesets by author, revision,
540 540 files, or words in the commit message</div>
541 541 </form>
542 542
543 543 <div class="description">Added tag 1.0 for changeset 2ef0ac749a14</div>
544 544
545 545 <table id="changesetEntry">
546 546 <tr>
547 547 <th class="author">author</th>
548 548 <td class="author">&#116;&#101;&#115;&#116;</td>
549 549 </tr>
550 550 <tr>
551 551 <th class="date">date</th>
552 552 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td>
553 553 </tr>
554 554 <tr>
555 555 <th class="author">parents</th>
556 556 <td class="author"></td>
557 557 </tr>
558 558 <tr>
559 559 <th class="author">children</th>
560 560 <td class="author"><a href="/file/1d22e65f027e/foo">1d22e65f027e</a> </td>
561 561 </tr>
562 562
563 563 </table>
564 564
565 565 <div class="overflow">
566 566 <div class="sourcefirst"> line source</div>
567 567
568 568 <div class="parity0 source"><a href="#l1" id="l1"> 1</a> foo
569 569 </div>
570 570 <div class="sourcelast"></div>
571 571 </div>
572 572 </div>
573 573 </div>
574 574
575 575
576 576
577 577 </body>
578 578 </html>
579 579
580 580 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/filediff/1/foo/?style=raw'
581 581 200 Script output follows
582 582
583 583
584 584 diff -r 000000000000 -r a4f92ed23982 foo
585 585 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
586 586 +++ b/foo Thu Jan 01 00:00:00 1970 +0000
587 587 @@ -0,0 +1,1 @@
588 588 +foo
589 589
590 590
591 591
592 592
593 593
594 594 Overviews
595 595
596 596 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/raw-tags'
597 597 200 Script output follows
598 598
599 599 tip 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe
600 600 1.0 2ef0ac749a14e4f57a5a822464a0902c6f7f448f
601 601 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/raw-branches'
602 602 200 Script output follows
603 603
604 604 stable 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe open
605 605 default a4f92ed23982be056b9852de5dfe873eaac7f0de inactive
606 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/raw-bookmarks'
607 200 Script output follows
608
609 something 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe
606 610 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/summary/?style=gitweb'
607 611 200 Script output follows
608 612
609 613 <?xml version="1.0" encoding="ascii"?>
610 614 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
611 615 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
612 616 <head>
613 617 <link rel="icon" href="/static/hgicon.png" type="image/png" />
614 618 <meta name="robots" content="index, nofollow"/>
615 619 <link rel="stylesheet" href="/static/style-gitweb.css" type="text/css" />
616 620
617 621
618 622 <title>test: Summary</title>
619 623 <link rel="alternate" type="application/atom+xml"
620 624 href="/atom-log" title="Atom feed for test"/>
621 625 <link rel="alternate" type="application/rss+xml"
622 626 href="/rss-log" title="RSS feed for test"/>
623 627 </head>
624 628 <body>
625 629
626 630 <div class="page_header">
627 631 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / summary
628 632
629 633 <form action="/log">
630 634 <input type="hidden" name="style" value="gitweb" />
631 635 <div class="search">
632 636 <input type="text" name="rev" />
633 637 </div>
634 638 </form>
635 639 </div>
636 640
637 641 <div class="page_nav">
638 642 summary |
639 643 <a href="/shortlog?style=gitweb">shortlog</a> |
640 644 <a href="/log?style=gitweb">changelog</a> |
641 645 <a href="/graph?style=gitweb">graph</a> |
642 646 <a href="/tags?style=gitweb">tags</a> |
643 647 <a href="/bookmarks?style=gitweb">bookmarks</a> |
644 648 <a href="/branches?style=gitweb">branches</a> |
645 649 <a href="/file/1d22e65f027e?style=gitweb">files</a> |
646 650 <a href="/help?style=gitweb">help</a>
647 651 <br/>
648 652 </div>
649 653
650 654 <div class="title">&nbsp;</div>
651 655 <table cellspacing="0">
652 656 <tr><td>description</td><td>unknown</td></tr>
653 657 <tr><td>owner</td><td>&#70;&#111;&#111;&#32;&#66;&#97;&#114;&#32;&#60;&#102;&#111;&#111;&#46;&#98;&#97;&#114;&#64;&#101;&#120;&#97;&#109;&#112;&#108;&#101;&#46;&#99;&#111;&#109;&#62;</td></tr>
654 658 <tr><td>last change</td><td>Thu, 01 Jan 1970 00:00:00 +0000</td></tr>
655 659 </table>
656 660
657 661 <div><a class="title" href="/shortlog?style=gitweb">changes</a></div>
658 662 <table cellspacing="0">
659 663
660 664 <tr class="parity0">
661 665 <td class="age"><i>1970-01-01</i></td>
662 666 <td><i>test</i></td>
663 667 <td>
664 668 <a class="list" href="/rev/1d22e65f027e?style=gitweb">
665 669 <b>branch</b>
666 670 <span class="logtags"><span class="branchtag" title="stable">stable</span> <span class="tagtag" title="tip">tip</span> <span class="bookmarktag" title="something">something</span> </span>
667 671 </a>
668 672 </td>
669 673 <td class="link" nowrap>
670 674 <a href="/rev/1d22e65f027e?style=gitweb">changeset</a> |
671 675 <a href="/file/1d22e65f027e?style=gitweb">files</a>
672 676 </td>
673 677 </tr>
674 678 <tr class="parity1">
675 679 <td class="age"><i>1970-01-01</i></td>
676 680 <td><i>test</i></td>
677 681 <td>
678 682 <a class="list" href="/rev/a4f92ed23982?style=gitweb">
679 683 <b>Added tag 1.0 for changeset 2ef0ac749a14</b>
680 684 <span class="logtags"><span class="branchtag" title="default">default</span> </span>
681 685 </a>
682 686 </td>
683 687 <td class="link" nowrap>
684 688 <a href="/rev/a4f92ed23982?style=gitweb">changeset</a> |
685 689 <a href="/file/a4f92ed23982?style=gitweb">files</a>
686 690 </td>
687 691 </tr>
688 692 <tr class="parity0">
689 693 <td class="age"><i>1970-01-01</i></td>
690 694 <td><i>test</i></td>
691 695 <td>
692 696 <a class="list" href="/rev/2ef0ac749a14?style=gitweb">
693 697 <b>base</b>
694 698 <span class="logtags"><span class="tagtag" title="1.0">1.0</span> </span>
695 699 </a>
696 700 </td>
697 701 <td class="link" nowrap>
698 702 <a href="/rev/2ef0ac749a14?style=gitweb">changeset</a> |
699 703 <a href="/file/2ef0ac749a14?style=gitweb">files</a>
700 704 </td>
701 705 </tr>
702 706 <tr class="light"><td colspan="4"><a class="list" href="/shortlog?style=gitweb">...</a></td></tr>
703 707 </table>
704 708
705 709 <div><a class="title" href="/tags?style=gitweb">tags</a></div>
706 710 <table cellspacing="0">
707 711
708 712 <tr class="parity0">
709 713 <td class="age"><i>1970-01-01</i></td>
710 714 <td><a class="list" href="/rev/2ef0ac749a14?style=gitweb"><b>1.0</b></a></td>
711 715 <td class="link">
712 716 <a href="/rev/2ef0ac749a14?style=gitweb">changeset</a> |
713 717 <a href="/log/2ef0ac749a14?style=gitweb">changelog</a> |
714 718 <a href="/file/2ef0ac749a14?style=gitweb">files</a>
715 719 </td>
716 720 </tr>
717 721 <tr class="light"><td colspan="3"><a class="list" href="/tags?style=gitweb">...</a></td></tr>
718 722 </table>
719 723
720 724 <div><a class="title" href="#">branches</a></div>
721 725 <table cellspacing="0">
722 726
723 727 <tr class="parity0">
724 728 <td class="age"><i>1970-01-01</i></td>
725 729 <td><a class="list" href="/shortlog/1d22e65f027e?style=gitweb"><b>1d22e65f027e</b></a></td>
726 730 <td class="">stable</td>
727 731 <td class="link">
728 732 <a href="/changeset/1d22e65f027e?style=gitweb">changeset</a> |
729 733 <a href="/log/1d22e65f027e?style=gitweb">changelog</a> |
730 734 <a href="/file/1d22e65f027e?style=gitweb">files</a>
731 735 </td>
732 736 </tr>
733 737 <tr class="parity1">
734 738 <td class="age"><i>1970-01-01</i></td>
735 739 <td><a class="list" href="/shortlog/a4f92ed23982?style=gitweb"><b>a4f92ed23982</b></a></td>
736 740 <td class="">default</td>
737 741 <td class="link">
738 742 <a href="/changeset/a4f92ed23982?style=gitweb">changeset</a> |
739 743 <a href="/log/a4f92ed23982?style=gitweb">changelog</a> |
740 744 <a href="/file/a4f92ed23982?style=gitweb">files</a>
741 745 </td>
742 746 </tr>
743 747 <tr class="light">
744 748 <td colspan="4"><a class="list" href="#">...</a></td>
745 749 </tr>
746 750 </table>
747 751 <div class="page_footer">
748 752 <div class="page_footer_text">test</div>
749 753 <div class="rss_logo">
750 754 <a href="/rss-log">RSS</a>
751 755 <a href="/atom-log">Atom</a>
752 756 </div>
753 757 <br />
754 758
755 759 </div>
756 760 </body>
757 761 </html>
758 762
759 763 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/graph/?style=gitweb'
760 764 200 Script output follows
761 765
762 766 <?xml version="1.0" encoding="ascii"?>
763 767 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
764 768 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
765 769 <head>
766 770 <link rel="icon" href="/static/hgicon.png" type="image/png" />
767 771 <meta name="robots" content="index, nofollow"/>
768 772 <link rel="stylesheet" href="/static/style-gitweb.css" type="text/css" />
769 773
770 774
771 775 <title>test: Graph</title>
772 776 <link rel="alternate" type="application/atom+xml"
773 777 href="/atom-log" title="Atom feed for test"/>
774 778 <link rel="alternate" type="application/rss+xml"
775 779 href="/rss-log" title="RSS feed for test"/>
776 780 <!--[if IE]><script type="text/javascript" src="/static/excanvas.js"></script><![endif]-->
777 781 </head>
778 782 <body>
779 783
780 784 <div class="page_header">
781 785 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / graph
782 786 </div>
783 787
784 788 <form action="/log">
785 789 <input type="hidden" name="style" value="gitweb" />
786 790 <div class="search">
787 791 <input type="text" name="rev" />
788 792 </div>
789 793 </form>
790 794 <div class="page_nav">
791 795 <a href="/summary?style=gitweb">summary</a> |
792 796 <a href="/shortlog?style=gitweb">shortlog</a> |
793 797 <a href="/log/2?style=gitweb">changelog</a> |
794 798 graph |
795 799 <a href="/tags?style=gitweb">tags</a> |
796 800 <a href="/bookmarks?style=gitweb">bookmarks</a> |
797 801 <a href="/branches?style=gitweb">branches</a> |
798 802 <a href="/file/1d22e65f027e?style=gitweb">files</a> |
799 803 <a href="/help?style=gitweb">help</a>
800 804 <br/>
801 805 <a href="/graph/2?style=gitweb&revcount=30">less</a>
802 806 <a href="/graph/2?style=gitweb&revcount=120">more</a>
803 807 | <a href="/graph/2ef0ac749a14?style=gitweb">(0)</a> <a href="/graph/2ef0ac749a14?style=gitweb">-2</a> <a href="/graph/tip?style=gitweb">tip</a> <br/>
804 808 </div>
805 809
806 810 <div class="title">&nbsp;</div>
807 811
808 812 <noscript>The revision graph only works with JavaScript-enabled browsers.</noscript>
809 813
810 814 <div id="wrapper">
811 815 <ul id="nodebgs"></ul>
812 816 <canvas id="graph" width="480" height="129"></canvas>
813 817 <ul id="graphnodes"></ul>
814 818 </div>
815 819
816 820 <script type="text/javascript" src="/static/graph.js"></script>
817 821 <script>
818 822 <!-- hide script content
819 823
820 824 var data = [["1d22e65f027e", [0, 1], [[0, 0, 1]], "branch", "test", "1970-01-01", ["stable", true], ["tip"], ["something"]], ["a4f92ed23982", [0, 1], [[0, 0, 1]], "Added tag 1.0 for changeset 2ef0ac749a14", "test", "1970-01-01", ["default", true], [], []], ["2ef0ac749a14", [0, 1], [], "base", "test", "1970-01-01", ["default", false], ["1.0"], []]];
821 825 var graph = new Graph();
822 826 graph.scale(39);
823 827
824 828 graph.edge = function(x0, y0, x1, y1, color) {
825 829
826 830 this.setColor(color, 0.0, 0.65);
827 831 this.ctx.beginPath();
828 832 this.ctx.moveTo(x0, y0);
829 833 this.ctx.lineTo(x1, y1);
830 834 this.ctx.stroke();
831 835
832 836 }
833 837
834 838 var revlink = '<li style="_STYLE"><span class="desc">';
835 839 revlink += '<a class="list" href="/rev/_NODEID?style=gitweb" title="_NODEID"><b>_DESC</b></a>';
836 840 revlink += '</span> _TAGS';
837 841 revlink += '<span class="info">_DATE, by _USER</span></li>';
838 842
839 843 graph.vertex = function(x, y, color, parity, cur) {
840 844
841 845 this.ctx.beginPath();
842 846 color = this.setColor(color, 0.25, 0.75);
843 847 this.ctx.arc(x, y, radius, 0, Math.PI * 2, true);
844 848 this.ctx.fill();
845 849
846 850 var bg = '<li class="bg parity' + parity + '"></li>';
847 851 var left = (this.columns + 1) * this.bg_height;
848 852 var nstyle = 'padding-left: ' + left + 'px;';
849 853 var item = revlink.replace(/_STYLE/, nstyle);
850 854 item = item.replace(/_PARITY/, 'parity' + parity);
851 855 item = item.replace(/_NODEID/, cur[0]);
852 856 item = item.replace(/_NODEID/, cur[0]);
853 857 item = item.replace(/_DESC/, cur[3]);
854 858 item = item.replace(/_USER/, cur[4]);
855 859 item = item.replace(/_DATE/, cur[5]);
856 860
857 861 var tagspan = '';
858 862 if (cur[7].length || cur[8].length || (cur[6][0] != 'default' || cur[6][1])) {
859 863 tagspan = '<span class="logtags">';
860 864 if (cur[6][1]) {
861 865 tagspan += '<span class="branchtag" title="' + cur[6][0] + '">';
862 866 tagspan += cur[6][0] + '</span> ';
863 867 } else if (!cur[6][1] && cur[6][0] != 'default') {
864 868 tagspan += '<span class="inbranchtag" title="' + cur[6][0] + '">';
865 869 tagspan += cur[6][0] + '</span> ';
866 870 }
867 871 if (cur[7].length) {
868 872 for (var t in cur[7]) {
869 873 var tag = cur[7][t];
870 874 tagspan += '<span class="tagtag">' + tag + '</span> ';
871 875 }
872 876 }
873 877 if (cur[8].length) {
874 878 for (var t in cur[8]) {
875 879 var bookmark = cur[8][t];
876 880 tagspan += '<span class="bookmarktag">' + bookmark + '</span> ';
877 881 }
878 882 }
879 883 tagspan += '</span>';
880 884 }
881 885
882 886 item = item.replace(/_TAGS/, tagspan);
883 887 return [bg, item];
884 888
885 889 }
886 890
887 891 graph.render(data);
888 892
889 893 // stop hiding script -->
890 894 </script>
891 895
892 896 <div class="page_nav">
893 897 <a href="/graph/2?style=gitweb&revcount=30">less</a>
894 898 <a href="/graph/2?style=gitweb&revcount=120">more</a>
895 899 | <a href="/graph/2ef0ac749a14?style=gitweb">(0)</a> <a href="/graph/2ef0ac749a14?style=gitweb">-2</a> <a href="/graph/tip?style=gitweb">tip</a>
896 900 </div>
897 901
898 902 <div class="page_footer">
899 903 <div class="page_footer_text">test</div>
900 904 <div class="rss_logo">
901 905 <a href="/rss-log">RSS</a>
902 906 <a href="/atom-log">Atom</a>
903 907 </div>
904 908 <br />
905 909
906 910 </div>
907 911 </body>
908 912 </html>
909 913
910 914
911 915 capabilities
912 916
913 917 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=capabilities'; echo
914 918 200 Script output follows
915 919
916 920 lookup changegroupsubset branchmap pushkey known getbundle unbundle=HG10GZ,HG10BZ,HG10UN
917 921
918 922 heads
919 923
920 924 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=heads'
921 925 200 Script output follows
922 926
923 927 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe
924 928
925 929 branches
926 930
927 931 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=branches&nodes=0000000000000000000000000000000000000000'
928 932 200 Script output follows
929 933
930 934 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000
931 935
932 936 changegroup
933 937
934 938 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=changegroup&roots=0000000000000000000000000000000000000000'
935 939 200 Script output follows
936 940
937 941 x\x9c\xbdTMHUA\x14\xbe\xa8\xf9\xec\xda&\x10\x11*\xb8\x88\x81\x99\xbef\xe6\xce\xbdw\xc6\xf2a\x16E\x1b\x11[%\x98\xcc\xaf\x8f\x8c\xf7\xc0\xf7\x82 (esc)
938 942 4\x11KP2m\x95\xad*\xabE\x05AP\xd0\xc22Z\x14\xf9\x03\xb9j\xa3\x9b$\xa4MJ\xb4\x90\xc0\x9a\x9bO0\x10\xdf\x13\xa2\x81\x0f\x869g\xe6|\xe7\x9c\xef\x8ceY\xf7\xa2KO\xd2\xb7K\x16~\\n\xe9\xad\x90w\x86\xab\x93W\x8e\xdf\xb0r\\Y\xee6(\xa2)\xf6\x95\xc6\x01\xe4\x1az\x80R\xe8kN\x98\xe7R\xa4\xa9K@\xe0!A\xb4k\xa7U*m\x03\x07\xd8\x92\x1d\xd2\xc9\xa4\x1d\xc2\xe6,\xa5\xcc+\x1f\xef\xafDgi\xef\xab\x1d\x1d\xb7\x9a\xe7[W\xfbc\x8f\xde-\xcd\xe7\xcaz\xb3\xbb\x19\xd3\x81\x10>c>\x08\x00"X\x11\xc2\x84@\xd2\xe7B*L\x00\x01P\x04R\xc3@\xbaB0\xdb8#\x83:\x83\xa2h\xbc=\xcd\xdaS\xe1Y,L\xd3\xa0\xf2\xa8\x94J:\xe6\xd8\x81Q\xe0\xe8d\xa7#\xe2,\xd1\xaeR*\xed \xa5\x01\x13\x01\xa6\x0cb\xe3;\xbe\xaf\xfcK[^wK\xe1N\xaf\xbbk\xe8B\xd1\xf4\xc1\x07\xb3\xab[\x10\xfdkmvwcB\xa6\xa4\xd4G\xc4D\xc2\x141\xad\x91\x10\x00\x08J\x81\xcb}\xee \xee+W\xba\x8a\x80\x90|\xd4\xa0\xd6\xa0\xd4T\xde\xe1\x9d,!\xe2\xb5\xa94\xe3\xe7\xd5\x9f\x06\x18\xcba\x03aP\xb8f\xcd\x04\x1a_\\9\xf1\xed\xe4\x9e\xe5\xa6\xd1\xd2\x9f\x03\xa7o\xae\x90H\xf3\xfb\xef\xffH3\xadk (esc)
939 943 \xb0\x90\x92\x88\xb9\x14"\x068\xc2\x1e@\x00\xbb\x8a)\xd3'\x859 (esc)
940 944 \xa8\x80\x84S \xa5\xbd-g\x13`\xe4\xdc\xc3H^\xdf\xe2\xc0TM\xc7\xf4BO\xcf\xde\xae\xe5\xae#\x1frM(K\x97`F\x19\x16s\x05GD\xb9\x01\xc1\x00+\x8c|\x9fp\xc11\xf0\x14\x00\x9cJ\x82<\xe0\x12\x9f\xc1\x90\xd0\xf5\xc8\x19>Pr\xaa\xeaW\xf5\xc4\xae\xd1\xfc\x17\xcf'\x13u\xb1\x9e\xcdHnC\x0e\xcc`\xc8\xa0&\xac\x0e\xf1|\x8c\x10$\xc4\x8c\xa2p\x05`\xdc\x08 \x80\xc4\xd7Rr-\x94\x10\x102\xedi;\xf3f\xf1z\x16\x86\xdb\xd8d\xe5\xe7\x8b\xf5\x8d\rzp\xb2\xfe\xac\xf5\xf2\xd3\xfe\xfckws\xedt\x96b\xd5l\x1c\x0b\x85\xb5\x170\x8f\x11\x84\xb0\x8f\x19\xa0\x00 _\x07\x1ac\xa2\xc3\x89Z\xe7\x96\xf9 \xccNFg\xc7F\xaa\x8a+\x9a\x9cc_\x17\x1b\x17\x9e]z38<\x97+\xb5,",\xc8\xc8?\\\x91\xff\x17.~U\x96\x97\xf5%\xdeN<\x8e\xf5\x97%\xe7^\xcfL\xed~\xda\x96k\xdc->\x86\x02\x83"\x96H\xa6\xe3\xaas=-\xeb7\xe5\xda\x8f\xbc (no-eol) (esc)
941 945
942 946 stream_out
943 947
944 948 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=stream_out'
945 949 200 Script output follows
946 950
947 951 1
948 952
949 953 failing unbundle, requires POST request
950 954
951 955 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=unbundle'
952 956 405 push requires POST request
953 957
954 958 0
955 959 push requires POST request
956 960 [1]
957 961
958 962 Static files
959 963
960 964 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/static/style.css'
961 965 200 Script output follows
962 966
963 967 a { text-decoration:none; }
964 968 .age { white-space:nowrap; }
965 969 .date { white-space:nowrap; }
966 970 .indexlinks { white-space:nowrap; }
967 971 .parity0 { background-color: #ddd; }
968 972 .parity1 { background-color: #eee; }
969 973 .lineno { width: 60px; color: #aaa; font-size: smaller;
970 974 text-align: right; }
971 975 .plusline { color: green; }
972 976 .minusline { color: red; }
973 977 .atline { color: purple; }
974 978 .annotate { font-size: smaller; text-align: right; padding-right: 1em; }
975 979 .buttons a {
976 980 background-color: #666;
977 981 padding: 2pt;
978 982 color: white;
979 983 font-family: sans;
980 984 font-weight: bold;
981 985 }
982 986 .navigate a {
983 987 background-color: #ccc;
984 988 padding: 2pt;
985 989 font-family: sans;
986 990 color: black;
987 991 }
988 992
989 993 .metatag {
990 994 background-color: #888;
991 995 color: white;
992 996 text-align: right;
993 997 }
994 998
995 999 /* Common */
996 1000 pre { margin: 0; }
997 1001
998 1002 .logo {
999 1003 float: right;
1000 1004 clear: right;
1001 1005 }
1002 1006
1003 1007 /* Changelog/Filelog entries */
1004 1008 .logEntry { width: 100%; }
1005 1009 .logEntry .age { width: 15%; }
1006 1010 .logEntry th { font-weight: normal; text-align: right; vertical-align: top; }
1007 1011 .logEntry th.age, .logEntry th.firstline { font-weight: bold; }
1008 1012 .logEntry th.firstline { text-align: left; width: inherit; }
1009 1013
1010 1014 /* Shortlog entries */
1011 1015 .slogEntry { width: 100%; }
1012 1016 .slogEntry .age { width: 8em; }
1013 1017 .slogEntry td { font-weight: normal; text-align: left; vertical-align: top; }
1014 1018 .slogEntry td.author { width: 15em; }
1015 1019
1016 1020 /* Tag entries */
1017 1021 #tagEntries { list-style: none; margin: 0; padding: 0; }
1018 1022 #tagEntries .tagEntry { list-style: none; margin: 0; padding: 0; }
1019 1023
1020 1024 /* Changeset entry */
1021 1025 #changesetEntry { }
1022 1026 #changesetEntry th { font-weight: normal; background-color: #888; color: #fff; text-align: right; }
1023 1027 #changesetEntry th.files, #changesetEntry th.description { vertical-align: top; }
1024 1028
1025 1029 /* File diff view */
1026 1030 #filediffEntry { }
1027 1031 #filediffEntry th { font-weight: normal; background-color: #888; color: #fff; text-align: right; }
1028 1032
1029 1033 /* Graph */
1030 1034 div#wrapper {
1031 1035 position: relative;
1032 1036 margin: 0;
1033 1037 padding: 0;
1034 1038 }
1035 1039
1036 1040 canvas {
1037 1041 position: absolute;
1038 1042 z-index: 5;
1039 1043 top: -0.6em;
1040 1044 margin: 0;
1041 1045 }
1042 1046
1043 1047 ul#nodebgs {
1044 1048 list-style: none inside none;
1045 1049 padding: 0;
1046 1050 margin: 0;
1047 1051 top: -0.7em;
1048 1052 }
1049 1053
1050 1054 ul#graphnodes li, ul#nodebgs li {
1051 1055 height: 39px;
1052 1056 }
1053 1057
1054 1058 ul#graphnodes {
1055 1059 position: absolute;
1056 1060 z-index: 10;
1057 1061 top: -0.85em;
1058 1062 list-style: none inside none;
1059 1063 padding: 0;
1060 1064 }
1061 1065
1062 1066 ul#graphnodes li .info {
1063 1067 display: block;
1064 1068 font-size: 70%;
1065 1069 position: relative;
1066 1070 top: -1px;
1067 1071 }
1068 1072
1069 1073 Stop and restart with HGENCODING=cp932
1070 1074
1071 1075 $ "$TESTDIR/killdaemons.py"
1072 1076 $ HGENCODING=cp932 hg serve --config server.uncompressed=False -n test \
1073 1077 > -p $HGPORT -d --pid-file=hg.pid -E errors.log
1074 1078 $ cat hg.pid >> $DAEMON_PIDS
1075 1079
1076 1080 commit message with Japanese Kanji 'Noh', which ends with '\x5c'
1077 1081
1078 1082 $ echo foo >> foo
1079 1083 $ HGENCODING=cp932 hg ci -m `python -c 'print("\x94\x5c")'`
1080 1084
1081 1085 Graph json escape of multibyte character
1082 1086
1083 1087 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/graph/' \
1084 1088 > | grep '^var data ='
1085 1089 var data = [["40b4d6888e92", [0, 1], [[0, 0, 1]], "\u80fd", "test", "1970-01-01", ["stable", true], ["tip"], ["something"]], ["1d22e65f027e", [0, 1], [[0, 0, 1]], "branch", "test", "1970-01-01", ["stable", false], [], []], ["a4f92ed23982", [0, 1], [[0, 0, 1]], "Added tag 1.0 for changeset 2ef0ac749a14", "test", "1970-01-01", ["default", true], [], []], ["2ef0ac749a14", [0, 1], [], "base", "test", "1970-01-01", ["default", false], ["1.0"], []]];
1086 1090
1087 1091 ERRORS ENCOUNTERED
1088 1092
1089 1093 $ cat errors.log
General Comments 0
You need to be logged in to leave comments. Login now