tests: add test for bad template %include and __base__
authorMartin von Zweigbergk <martinvonz@google.com>
Wed, 22 Jul 2020 22:38:42 -0700
changeset 45207 4489e9a22763
parent 45206 db0be4678399
child 45208 f7f142d74df3
tests: add test for bad template %include and __base__ It doesn't seem like we had any tests for `%include non-existent` and `__base__ = non-existent`. The latter raises an error while the former ignores the include. We should probably also make the former an error. Differential Revision: https://phab.mercurial-scm.org/D8798
tests/test-template-map.t
--- a/tests/test-template-map.t	Tue Jul 21 22:52:22 2020 -0700
+++ b/tests/test-template-map.t	Wed Jul 22 22:38:42 2020 -0700
@@ -125,6 +125,15 @@
   date:        Wed Jan 01 10:01:00 2020 +0000
   summary:     third
   
+Test map inheritance with non-existent base
+
+  $ echo "__base__ = non-existent" > map-base-nonexistent
+  $ printf 'cset = "changeset: ***{rev}***\\n"\n' >> map-simple
+  $ hg log -l1 -T./map-base-nonexistent
+  abort: style '$TESTTMP/a/non-existent' not found
+  (available styles: bisect, changelog, compact, default, phases, show, status, xml)
+  [255]
+
 Test including a built-in template map
 
   $ cat <<'EOF' > map-include-builtin
@@ -136,6 +145,17 @@
   8:95c24699272e
   
 
+Test including a nonexistent template map
+BROKEN: This should probably be an error just like the bad __base__ above
+
+  $ cat <<'EOF' > map-include-nonexistent
+  > %include nonexistent
+  > [templates]
+  > changeset = "test\n"
+  > EOF
+  $ hg log -l1 -T./map-include-nonexistent
+  test
+
 Test docheader, docfooter and separator in template map
 
   $ cat <<'EOF' > map-myjson