summaryrefslogtreecommitdiff
path: root/specs/~dynamic-names.json
diff options
context:
space:
mode:
Diffstat (limited to 'specs/~dynamic-names.json')
-rw-r--r--specs/~dynamic-names.json109
1 files changed, 109 insertions, 0 deletions
diff --git a/specs/~dynamic-names.json b/specs/~dynamic-names.json
index 03f1c7a..c6aade6 100644
--- a/specs/~dynamic-names.json
+++ b/specs/~dynamic-names.json
@@ -49,6 +49,115 @@
"expected": "\"*Hello, world!*\""
},
{
+ "name": "Dotted Names",
+ "desc": "The dynamic partial should operate within the current context.",
+ "data": {
+ "text": "Hello, world!",
+ "foo": {
+ "bar": {
+ "baz": "partial"
+ }
+ }
+ },
+ "template": "\"{{>*foo.bar.baz}}\"",
+ "partials": {
+ "partial": "*{{text}}*"
+ },
+ "expected": "\"*Hello, world!*\""
+ },
+ {
+ "name": "Dotted Names - Failed Lookup",
+ "desc": "The dynamic partial should operate within the current context.",
+ "data": {
+ "text": "Hello, world!",
+ "foo": "test",
+ "test": {
+ "bar": {
+ "baz": "partial"
+ }
+ }
+ },
+ "template": "\"{{>*foo.bar.baz}}\"",
+ "partials": {
+ "partial": "*{{text}}*"
+ },
+ "expected": "\"\""
+ },
+ {
+ "name": "Dotted Names - Failed Lookup",
+ "desc": "The dynamic partial should operate within the current context.",
+ "data": {
+ "foo": {
+ "text": "Hello, world!",
+ "bar": {
+ "baz": "partial"
+ }
+ }
+ },
+ "template": "\"{{>*foo.bar.baz}}\"",
+ "partials": {
+ "partial": "*{{text}}*"
+ },
+ "expected": "\"**\""
+ },
+ {
+ "name": "Dotted names - Context Stacking",
+ "desc": "Dotted names should not push a new frame on the context stack.",
+ "data": {
+ "section1": {
+ "value": "section1"
+ },
+ "section2": {
+ "dynamic": "partial",
+ "value": "section2"
+ }
+ },
+ "template": "{{#section1}}{{>*section2.dynamic}}{{/section1}}",
+ "partials": {
+ "partial": "{{value}}"
+ },
+ "expected": "\"section1\""
+ },
+ {
+ "name": "Dotted names - Context Stacking Under Repetition",
+ "desc": "Dotted names should not push a new frame on the context stack.",
+ "data": {
+ "value": "test",
+ "section1": [
+ 1,
+ 2
+ ],
+ "section2": {
+ "dynamic": "partial",
+ "value": "section2"
+ }
+ },
+ "template": "{{#section1}}{{>*section2.dynamic}}{{/section1}}",
+ "partials": {
+ "partial": "{{value}}"
+ },
+ "expected": "testtest"
+ },
+ {
+ "name": "Dotted names - Context Stacking Failed Lookup",
+ "desc": "Dotted names should resolve against the proper context stack.",
+ "data": {
+ "section1": [
+ 1,
+ 2
+ ],
+ "section2": {
+ "dynamic": "partial",
+ "value": "section2"
+ }
+ },
+ "template": "{{#section1}}{{>*section2.dynamic}}{{/section1}}",
+ "partials": {
+ "partial": "\"{{value}}\""
+ },
+ "expected": "\"\""
+ },
+ {
"name": "Recursion",
"desc": "Dynamic partials should properly recurse.",
"data": {