mirror of
https://github.com/divkit/divkit.git
synced 2026-05-07 20:02:32 +00:00
1080eabdb4
commit_hash:52d80d78f9fbe13efd432acb7fcb9558dc69b2ac
266 lines
4.9 KiB
JSON
266 lines
4.9 KiB
JSON
{
|
|
"cases": [
|
|
{
|
|
"expression": "@{declared_variable !: 'fallback'}",
|
|
"expected": {
|
|
"type": "string",
|
|
"value": "try"
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "declared_variable",
|
|
"type": "string",
|
|
"value": "try"
|
|
}
|
|
],
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web",
|
|
"flutter"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{undeclared_variable !: 'fallback'}",
|
|
"expected": {
|
|
"type": "string",
|
|
"value": "fallback"
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web",
|
|
"flutter"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{'infinity' / 0 !: 'fallback'}",
|
|
"expected": {
|
|
"type": "string",
|
|
"value": "fallback"
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web",
|
|
"flutter"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{true ? undefined_var : 'else' !: 'fallback'}",
|
|
"expected": {
|
|
"type": "error",
|
|
"value": "Variable 'undefined_var' is missing."
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web",
|
|
"flutter"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{(padStart(12, 3, '') == undefined_var) !: 'fallback'}",
|
|
"expected": {
|
|
"type": "string",
|
|
"value": "fallback"
|
|
},
|
|
"expected_warnings": [
|
|
"String for padding is empty."
|
|
],
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web",
|
|
"flutter"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{undefined_var !: true || false}",
|
|
"expected": {
|
|
"type": "boolean",
|
|
"value": true
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{bool_var !: true || false}",
|
|
"variables": [
|
|
{
|
|
"name": "bool_var",
|
|
"type": "boolean",
|
|
"value": false
|
|
}
|
|
],
|
|
"expected": {
|
|
"type": "boolean",
|
|
"value": false
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{undefined_var !: 'fallback' == 'fallback'}",
|
|
"expected": {
|
|
"type": "boolean",
|
|
"value": true
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{string_var !: 'fallback' == 'fallback'}",
|
|
"variables": [
|
|
{
|
|
"name": "string_var",
|
|
"type": "string",
|
|
"value": "defined"
|
|
}
|
|
],
|
|
"expected": {
|
|
"type": "boolean",
|
|
"value": false
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{undefined_var !: 8 > 4}",
|
|
"expected": {
|
|
"type": "boolean",
|
|
"value": true
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{int_var !: 8 > 4}",
|
|
"variables": [
|
|
{
|
|
"name": "int_var",
|
|
"type": "integer",
|
|
"value": 1
|
|
}
|
|
],
|
|
"expected": {
|
|
"type": "boolean",
|
|
"value": false
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{undefined_var !: 8 + 4}",
|
|
"expected": {
|
|
"type": "integer",
|
|
"value": 12
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{int_var !: 8 + 4}",
|
|
"variables": [
|
|
{
|
|
"name": "int_var",
|
|
"type": "integer",
|
|
"value": 1
|
|
}
|
|
],
|
|
"expected": {
|
|
"type": "integer",
|
|
"value": 1
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{undefined_var !: 8 + 4 * 2}",
|
|
"expected": {
|
|
"type": "integer",
|
|
"value": 16
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{int_var !: 8 + 4 * 2}",
|
|
"variables": [
|
|
{
|
|
"name": "int_var",
|
|
"type": "integer",
|
|
"value": 1
|
|
}
|
|
],
|
|
"expected": {
|
|
"type": "integer",
|
|
"value": 1
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{undefined_var !: 8 + 4 > 2}",
|
|
"expected": {
|
|
"type": "boolean",
|
|
"value": true
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
},
|
|
{
|
|
"expression": "@{int_var !: 8 + 4 > 2}",
|
|
"variables": [
|
|
{
|
|
"name": "int_var",
|
|
"type": "integer",
|
|
"value": 1
|
|
}
|
|
],
|
|
"expected": {
|
|
"type": "boolean",
|
|
"value": false
|
|
},
|
|
"platforms": [
|
|
"android",
|
|
"ios",
|
|
"web"
|
|
]
|
|
}
|
|
]
|
|
}
|