@nlighten/json-transform-core
Version:
Core types and utilities for handling JSON transformers
126 lines (125 loc) • 2.94 kB
JSON
[
{
"name": "inline - simple template",
"given": {
"input": {
"name": "World"
},
"definition": "$$template:Hello {$.name}"
},
"expect": {
"equal": "Hello World"
}
},
{
"name": "inline - use payload",
"given": {
"input": {
"name": "World"
},
"definition": "$$template($):Hello {##current.name}"
},
"expect": {
"equal": "Hello World"
}
},
{
"name": "inline - use function",
"given": {
"input": {
"text": "HELLO"
},
"definition": "$$template:{$$lower:$.text}"
},
"expect": {
"equal": "hello"
}
},
{
"name": "object - simple template",
"given": {
"input": {
"name": "World"
},
"definition": {
"$$template": "Hello {$.name}"
}
},
"expect": {
"equal": "Hello World"
}
},
{
"name": "object - use payload",
"given": {
"input": {
"name": "World"
},
"definition": {
"$$template": "Hello {##current.name}",
"payload": "$"
}
},
"expect": {
"equal": "Hello World"
}
},
{
"name": "object - use function",
"given": {
"input": {
"text": "HELLO"
},
"definition": {
"$$template": "{$$lower:$.text}"
}
},
"expect": {
"equal": "hello"
}
},
{
"name": "inline - default value and escaping",
"given": {
"input": {
"id": "1"
},
"definition": "$$template:{$.id} \\{type: {$.type,Unknown}}"
},
"expect": {
"equal": "1 {type: Unknown}"
}
},
{
"name": "object - url encode",
"given": {
"input": {
"href": "https://example.com/"
},
"definition": {
"$$template": "href={$.href}",
"payload": "$",
"url_encode": true
}
},
"expect": {
"equal": "href=https%3A%2F%2Fexample.com%2F"
}
},
{
"name": "object - url encode with fallback",
"given": {
"input": {
"href": "https://example.com/"
},
"definition": {
"$$template": "href={$.url,{$.href}}",
"payload": "$",
"url_encode": true
}
},
"expect": {
"equal": "href=https%3A%2F%2Fexample.com%2F"
}
}
]