##// END OF EJS Templates
py3: make test-template-engine.t bytes-safe
Yuya Nishihara -
r36988:e55d8080 default
parent child Browse files
Show More
@@ -1,408 +1,409 b''
1 1 test-abort-checkin.t
2 2 test-add.t
3 3 test-addremove-similar.t
4 4 test-addremove.t
5 5 test-amend-subrepo.t
6 6 test-amend.t
7 7 test-ancestor.py
8 8 test-annotate.py
9 9 test-annotate.t
10 10 test-archive-symlinks.t
11 11 test-atomictempfile.py
12 12 test-audit-path.t
13 13 test-audit-subrepo.t
14 14 test-automv.t
15 15 test-backout.t
16 16 test-backwards-remove.t
17 17 test-basic.t
18 18 test-bheads.t
19 19 test-bisect.t
20 20 test-bisect2.t
21 21 test-bisect3.t
22 22 test-blackbox.t
23 23 test-bookmarks-current.t
24 24 test-bookmarks-merge.t
25 25 test-bookmarks-rebase.t
26 26 test-bookmarks-strip.t
27 27 test-bookmarks.t
28 28 test-branch-change.t
29 29 test-branch-option.t
30 30 test-branch-tag-confict.t
31 31 test-branches.t
32 32 test-bundle-phases.t
33 33 test-bundle-type.t
34 34 test-bundle-vs-outgoing.t
35 35 test-bundle2-multiple-changegroups.t
36 36 test-cappedreader.py
37 37 test-casecollision.t
38 38 test-cat.t
39 39 test-censor.t
40 40 test-changelog-exec.t
41 41 test-check-commit.t
42 42 test-check-execute.t
43 43 test-check-module-imports.t
44 44 test-check-pyflakes.t
45 45 test-check-pylint.t
46 46 test-check-shbang.t
47 47 test-children.t
48 48 test-clone-pull-corruption.t
49 49 test-clone-r.t
50 50 test-clone-update-order.t
51 51 test-command-template.t
52 52 test-commit-amend.t
53 53 test-commit-interactive.t
54 54 test-commit-multiple.t
55 55 test-commit-unresolved.t
56 56 test-commit.t
57 57 test-committer.t
58 58 test-completion.t
59 59 test-config-env.py
60 60 test-config.t
61 61 test-conflict.t
62 62 test-confused-revert.t
63 63 test-contrib-check-code.t
64 64 test-contrib-check-commit.t
65 65 test-convert-authormap.t
66 66 test-convert-clonebranches.t
67 67 test-convert-datesort.t
68 68 test-convert-filemap.t
69 69 test-convert-hg-sink.t
70 70 test-convert-hg-source.t
71 71 test-convert-hg-startrev.t
72 72 test-copy-move-merge.t
73 73 test-copy.t
74 74 test-copytrace-heuristics.t
75 75 test-debugbuilddag.t
76 76 test-debugbundle.t
77 77 test-debugextensions.t
78 78 test-debugindexdot.t
79 79 test-debugrename.t
80 80 test-default-push.t
81 81 test-diff-binary-file.t
82 82 test-diff-change.t
83 83 test-diff-copy-depth.t
84 84 test-diff-hashes.t
85 85 test-diff-issue2761.t
86 86 test-diff-newlines.t
87 87 test-diff-reverse.t
88 88 test-diff-subdir.t
89 89 test-diffdir.t
90 90 test-directaccess.t
91 91 test-dirstate-backup.t
92 92 test-dirstate-nonnormalset.t
93 93 test-doctest.py
94 94 test-double-merge.t
95 95 test-drawdag.t
96 96 test-duplicateoptions.py
97 97 test-empty-dir.t
98 98 test-empty-file.t
99 99 test-empty-group.t
100 100 test-empty.t
101 101 test-encode.t
102 102 test-encoding-func.py
103 103 test-encoding.t
104 104 test-eol-add.t
105 105 test-eol-clone.t
106 106 test-eol-hook.t
107 107 test-eol-tag.t
108 108 test-eol-update.t
109 109 test-excessive-merge.t
110 110 test-exchange-obsmarkers-case-A1.t
111 111 test-exchange-obsmarkers-case-A2.t
112 112 test-exchange-obsmarkers-case-A3.t
113 113 test-exchange-obsmarkers-case-A4.t
114 114 test-exchange-obsmarkers-case-A5.t
115 115 test-exchange-obsmarkers-case-A6.t
116 116 test-exchange-obsmarkers-case-A7.t
117 117 test-exchange-obsmarkers-case-B1.t
118 118 test-exchange-obsmarkers-case-B2.t
119 119 test-exchange-obsmarkers-case-B3.t
120 120 test-exchange-obsmarkers-case-B4.t
121 121 test-exchange-obsmarkers-case-B5.t
122 122 test-exchange-obsmarkers-case-B6.t
123 123 test-exchange-obsmarkers-case-B7.t
124 124 test-exchange-obsmarkers-case-C1.t
125 125 test-exchange-obsmarkers-case-C2.t
126 126 test-exchange-obsmarkers-case-C3.t
127 127 test-exchange-obsmarkers-case-C4.t
128 128 test-exchange-obsmarkers-case-D1.t
129 129 test-exchange-obsmarkers-case-D2.t
130 130 test-exchange-obsmarkers-case-D3.t
131 131 test-exchange-obsmarkers-case-D4.t
132 132 test-execute-bit.t
133 133 test-extdiff.t
134 134 test-extra-filelog-entry.t
135 135 test-filebranch.t
136 136 test-fileset-generated.t
137 137 test-flags.t
138 138 test-generaldelta.t
139 139 test-getbundle.t
140 140 test-git-export.t
141 141 test-glog-topological.t
142 142 test-gpg.t
143 143 test-graft.t
144 144 test-hghave.t
145 145 test-hgignore.t
146 146 test-hgk.t
147 147 test-hgweb-bundle.t
148 148 test-hgweb-descend-empties.t
149 149 test-hgweb-removed.t
150 150 test-histedit-arguments.t
151 151 test-histedit-base.t
152 152 test-histedit-bookmark-motion.t
153 153 test-histedit-commute.t
154 154 test-histedit-drop.t
155 155 test-histedit-edit.t
156 156 test-histedit-fold-non-commute.t
157 157 test-histedit-fold.t
158 158 test-histedit-no-change.t
159 159 test-histedit-non-commute-abort.t
160 160 test-histedit-non-commute.t
161 161 test-histedit-obsolete.t
162 162 test-histedit-outgoing.t
163 163 test-histedit-templates.t
164 164 test-http-branchmap.t
165 165 test-http-bundle1.t
166 166 test-http-clone-r.t
167 167 test-identify.t
168 168 test-import-unknown.t
169 169 test-imports-checker.t
170 170 test-inherit-mode.t
171 171 test-issue1089.t
172 172 test-issue1102.t
173 173 test-issue1175.t
174 174 test-issue1306.t
175 175 test-issue1438.t
176 176 test-issue1502.t
177 177 test-issue1802.t
178 178 test-issue1877.t
179 179 test-issue1993.t
180 180 test-issue2137.t
181 181 test-issue3084.t
182 182 test-issue4074.t
183 183 test-issue522.t
184 184 test-issue586.t
185 185 test-issue612.t
186 186 test-issue619.t
187 187 test-issue672.t
188 188 test-issue842.t
189 189 test-journal-exists.t
190 190 test-largefiles-cache.t
191 191 test-largefiles-misc.t
192 192 test-largefiles-small-disk.t
193 193 test-largefiles-update.t
194 194 test-lfs-largefiles.t
195 195 test-locate.t
196 196 test-lock-badness.t
197 197 test-log.t
198 198 test-logexchange.t
199 199 test-lrucachedict.py
200 200 test-mactext.t
201 201 test-manifest-merging.t
202 202 test-manifest.py
203 203 test-manifest.t
204 204 test-match.py
205 205 test-mdiff.py
206 206 test-merge-changedelete.t
207 207 test-merge-closedheads.t
208 208 test-merge-commit.t
209 209 test-merge-criss-cross.t
210 210 test-merge-default.t
211 211 test-merge-force.t
212 212 test-merge-halt.t
213 213 test-merge-internal-tools-pattern.t
214 214 test-merge-local.t
215 215 test-merge-remove.t
216 216 test-merge-revert.t
217 217 test-merge-revert2.t
218 218 test-merge-subrepos.t
219 219 test-merge-symlinks.t
220 220 test-merge-types.t
221 221 test-merge1.t
222 222 test-merge10.t
223 223 test-merge2.t
224 224 test-merge4.t
225 225 test-merge5.t
226 226 test-merge6.t
227 227 test-merge7.t
228 228 test-merge8.t
229 229 test-merge9.t
230 230 test-mq-git.t
231 231 test-mq-header-date.t
232 232 test-mq-header-from.t
233 233 test-mq-pull-from-bundle.t
234 234 test-mq-qdiff.t
235 235 test-mq-qfold.t
236 236 test-mq-qgoto.t
237 237 test-mq-qimport-fail-cleanup.t
238 238 test-mq-qpush-exact.t
239 239 test-mq-qqueue.t
240 240 test-mq-qrefresh-interactive.t
241 241 test-mq-qrefresh-replace-log-message.t
242 242 test-mq-qrefresh.t
243 243 test-mq-qrename.t
244 244 test-mq-qsave.t
245 245 test-mq-safety.t
246 246 test-mq-subrepo.t
247 247 test-mq-symlinks.t
248 248 test-mv-cp-st-diff.t
249 249 test-narrow-archive.t
250 250 test-narrow-clone-no-ellipsis.t
251 251 test-narrow-clone-nonlinear.t
252 252 test-narrow-clone.t
253 253 test-narrow-commit.t
254 254 test-narrow-copies.t
255 255 test-narrow-debugcommands.t
256 256 test-narrow-debugrebuilddirstate.t
257 257 test-narrow-exchange-merges.t
258 258 test-narrow-exchange.t
259 259 test-narrow-expanddirstate.t
260 260 test-narrow-merge.t
261 261 test-narrow-patch.t
262 262 test-narrow-patterns.t
263 263 test-narrow-pull.t
264 264 test-narrow-rebase.t
265 265 test-narrow-shallow-merges.t
266 266 test-narrow-shallow.t
267 267 test-narrow-strip.t
268 268 test-narrow-update.t
269 269 test-nested-repo.t
270 270 test-newbranch.t
271 271 test-obshistory.t
272 272 test-obsmarker-template.t
273 273 test-obsmarkers-effectflag.t
274 274 test-obsolete-bundle-strip.t
275 275 test-obsolete-changeset-exchange.t
276 276 test-obsolete-checkheads.t
277 277 test-obsolete-distributed.t
278 278 test-obsolete-tag-cache.t
279 279 test-parents.t
280 280 test-pathconflicts-merge.t
281 281 test-pathconflicts-update.t
282 282 test-pending.t
283 283 test-permissions.t
284 284 test-phases.t
285 285 test-pull-branch.t
286 286 test-pull-http.t
287 287 test-pull-permission.t
288 288 test-pull-pull-corruption.t
289 289 test-pull-r.t
290 290 test-pull-update.t
291 291 test-purge.t
292 292 test-push-checkheads-partial-C1.t
293 293 test-push-checkheads-partial-C2.t
294 294 test-push-checkheads-partial-C3.t
295 295 test-push-checkheads-partial-C4.t
296 296 test-push-checkheads-pruned-B1.t
297 297 test-push-checkheads-pruned-B2.t
298 298 test-push-checkheads-pruned-B3.t
299 299 test-push-checkheads-pruned-B4.t
300 300 test-push-checkheads-pruned-B5.t
301 301 test-push-checkheads-pruned-B6.t
302 302 test-push-checkheads-pruned-B7.t
303 303 test-push-checkheads-pruned-B8.t
304 304 test-push-checkheads-superceed-A1.t
305 305 test-push-checkheads-superceed-A2.t
306 306 test-push-checkheads-superceed-A3.t
307 307 test-push-checkheads-superceed-A4.t
308 308 test-push-checkheads-superceed-A5.t
309 309 test-push-checkheads-superceed-A6.t
310 310 test-push-checkheads-superceed-A7.t
311 311 test-push-checkheads-superceed-A8.t
312 312 test-push-checkheads-unpushed-D1.t
313 313 test-push-checkheads-unpushed-D2.t
314 314 test-push-checkheads-unpushed-D3.t
315 315 test-push-checkheads-unpushed-D4.t
316 316 test-push-checkheads-unpushed-D5.t
317 317 test-push-checkheads-unpushed-D6.t
318 318 test-push-checkheads-unpushed-D7.t
319 319 test-push-http.t
320 320 test-push-warn.t
321 321 test-pushvars.t
322 322 test-rebase-abort.t
323 323 test-rebase-base-flag.t
324 324 test-rebase-bookmarks.t
325 325 test-rebase-brute-force.t
326 326 test-rebase-cache.t
327 327 test-rebase-check-restore.t
328 328 test-rebase-collapse.t
329 329 test-rebase-dest.t
330 330 test-rebase-detach.t
331 331 test-rebase-emptycommit.t
332 332 test-rebase-inmemory.t
333 333 test-rebase-interruptions.t
334 334 test-rebase-issue-noparam-single-rev.t
335 335 test-rebase-legacy.t
336 336 test-rebase-mq-skip.t
337 337 test-rebase-named-branches.t
338 338 test-rebase-newancestor.t
339 339 test-rebase-obsolete.t
340 340 test-rebase-parameters.t
341 341 test-rebase-partial.t
342 342 test-rebase-pull.t
343 343 test-rebase-rename.t
344 344 test-rebase-scenario-global.t
345 345 test-rebase-templates.t
346 346 test-rebase-transaction.t
347 347 test-record.t
348 348 test-relink.t
349 349 test-remove.t
350 350 test-rename-after-merge.t
351 351 test-rename-dir-merge.t
352 352 test-rename-merge1.t
353 353 test-rename.t
354 354 test-repair-strip.t
355 355 test-repo-compengines.t
356 356 test-resolve.t
357 357 test-revert-flags.t
358 358 test-revert-unknown.t
359 359 test-revlog-ancestry.py
360 360 test-revlog-group-emptyiter.t
361 361 test-revlog-mmapindex.t
362 362 test-revlog-packentry.t
363 363 test-revset-dirstate-parents.t
364 364 test-revset-outgoing.t
365 365 test-rollback.t
366 366 test-run-tests.py
367 367 test-schemes.t
368 368 test-serve.t
369 369 test-share.t
370 370 test-show-stack.t
371 371 test-show-work.t
372 372 test-show.t
373 373 test-simple-update.t
374 374 test-single-head.t
375 375 test-sparse-clear.t
376 376 test-sparse-merges.t
377 377 test-sparse-requirement.t
378 378 test-sparse-verbose-json.t
379 379 test-ssh-clone-r.t
380 380 test-ssh-proto.t
381 381 test-sshserver.py
382 382 test-status-rev.t
383 383 test-status-terse.t
384 384 test-strip-cross.t
385 385 test-strip.t
386 386 test-subrepo-deep-nested-change.t
387 387 test-subrepo.t
388 388 test-symlinks.t
389 389 test-tag.t
390 390 test-tags.t
391 test-template-engine.t
391 392 test-treemanifest.t
392 393 test-unamend.t
393 394 test-uncommit.t
394 395 test-unified-test.t
395 396 test-unrelated-pull.t
396 397 test-up-local-change.t
397 398 test-update-branches.t
398 399 test-update-dest.t
399 400 test-update-issue1456.t
400 401 test-update-names.t
401 402 test-update-reverse.t
402 403 test-upgrade-repo.t
403 404 test-url-rev.t
404 405 test-username-newline.t
405 406 test-verify.t
406 407 test-websub.t
407 408 test-win32text.t
408 409 test-xdg.t
@@ -1,63 +1,65 b''
1 1
2 2 $ cat > engine.py << EOF
3 3 >
4 4 > from mercurial import (
5 > pycompat,
5 6 > templater,
6 7 > templateutil,
7 8 > )
8 9 >
9 10 > class mytemplater(templater.engine):
10 11 > def _load(self, t):
11 12 > return self._loader(t)
12 13 >
13 14 > def process(self, t, map):
14 15 > tmpl = self._load(t)
15 16 > props = self._defaults.copy()
16 17 > props.update(map)
17 18 > for k, v in props.items():
18 > if k in ('templ', 'ctx', 'repo', 'revcache', 'cache', 'troubles'):
19 > if k in (b'templ', b'ctx', b'repo', b'revcache', b'cache',
20 > b'troubles'):
19 21 > continue
20 22 > if callable(v) and getattr(v, '_requires', None) is None:
21 23 > props = self._resources.copy()
22 24 > props.update(map)
23 > v = v(**props)
25 > v = v(**pycompat.strkwargs(props))
24 26 > elif callable(v):
25 27 > v = v(self, props)
26 28 > v = templateutil.stringify(v)
27 > tmpl = tmpl.replace('{{%s}}' % k, v)
29 > tmpl = tmpl.replace(b'{{%s}}' % k, v)
28 30 > yield tmpl
29 31 >
30 > templater.engines['my'] = mytemplater
32 > templater.engines[b'my'] = mytemplater
31 33 > EOF
32 34 $ hg init test
33 35 $ echo '[extensions]' > test/.hg/hgrc
34 36 $ echo "engine = `pwd`/engine.py" >> test/.hg/hgrc
35 37 $ cd test
36 38 $ cat > mymap << EOF
37 39 > changeset = my:changeset.txt
38 40 > EOF
39 41 $ cat > changeset.txt << EOF
40 42 > {{rev}} {{node}} {{author}}
41 43 > EOF
42 44 $ hg ci -Ama
43 45 adding changeset.txt
44 46 adding mymap
45 47 $ hg log --style=./mymap
46 48 0 97e5f848f0936960273bbf75be6388cd0350a32b test
47 49
48 50 $ cat > changeset.txt << EOF
49 51 > {{p1rev}} {{p1node}} {{p2rev}} {{p2node}}
50 52 > EOF
51 53 $ hg ci -Ama
52 54 $ hg log --style=./mymap
53 55 0 97e5f848f0936960273bbf75be6388cd0350a32b -1 0000000000000000000000000000000000000000
54 56 -1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000
55 57
56 58 invalid engine type:
57 59
58 60 $ echo 'changeset = unknown:changeset.txt' > unknownenginemap
59 61 $ hg log --style=./unknownenginemap
60 62 abort: invalid template engine: unknown
61 63 [255]
62 64
63 65 $ cd ..
General Comments 0
You need to be logged in to leave comments. Login now