mirror of
https://github.com/divkit/divkit.git
synced 2026-06-06 20:07:59 +00:00
155 lines
4.2 KiB
JSON
155 lines
4.2 KiB
JSON
{
|
|
"cases": [
|
|
{
|
|
"name": "2 > a + 1 ? 1 : 'some string' => some string",
|
|
"expression": "@{2 > a + 1 ? 1 : 'some string'}",
|
|
"expected": {
|
|
"type": "string",
|
|
"value": "some string"
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "a",
|
|
"type": "integer",
|
|
"value": 1
|
|
}
|
|
],
|
|
"platforms": [
|
|
"android",
|
|
"web",
|
|
"ios"
|
|
]
|
|
},
|
|
{
|
|
"name": "2 > a + 1 ? 1 : 'some string' => 1",
|
|
"expression": "@{2 > a + 1 ? 1 : 'some string'}",
|
|
"expected": {
|
|
"type": "integer",
|
|
"value": 1
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "a",
|
|
"type": "integer",
|
|
"value": 0
|
|
}
|
|
],
|
|
"platforms": [
|
|
"android",
|
|
"web",
|
|
"ios"
|
|
]
|
|
},
|
|
{
|
|
"name": "isTrue ? 'It is true' : 'It is false' => It is false",
|
|
"expression": "@{isTrue ? 'It is true' : 'It is false'}",
|
|
"expected": {
|
|
"type": "string",
|
|
"value": "It is false"
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "isTrue",
|
|
"type": "boolean",
|
|
"value": false
|
|
}
|
|
],
|
|
"platforms": [
|
|
"android",
|
|
"web",
|
|
"ios"
|
|
]
|
|
},
|
|
{
|
|
"name": "isTrue ? 'It is true' : 'It is false' => It is true",
|
|
"expression": "@{isTrue ? 'It is true' : 'It is false'}",
|
|
"expected": {
|
|
"type": "string",
|
|
"value": "It is true"
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "isTrue",
|
|
"type": "boolean",
|
|
"value": true
|
|
}
|
|
],
|
|
"platforms": [
|
|
"android",
|
|
"web",
|
|
"ios"
|
|
]
|
|
},
|
|
{
|
|
"name": "true ? (3 + 1) * -2 : false || (true && false) => -8",
|
|
"expression": "@{true ? (3 + 1) * -2 : false || (true && false)}",
|
|
"expected": {
|
|
"type": "integer",
|
|
"value": -8
|
|
},
|
|
"variables": [],
|
|
"platforms": [
|
|
"android",
|
|
"web",
|
|
"ios"
|
|
]
|
|
},
|
|
{
|
|
"name": "false ? (3 + 1) * -2 : false || (true && false) => false",
|
|
"expression": "@{false ? (3 + 1) * -2 : false || (true && false)}",
|
|
"expected": {
|
|
"type": "boolean",
|
|
"value": false
|
|
},
|
|
"variables": [],
|
|
"platforms": [
|
|
"android",
|
|
"web",
|
|
"ios"
|
|
]
|
|
},
|
|
{
|
|
"name": "2 ? 1 : 0 => error",
|
|
"expression": "@{2 ? 1 : 0}",
|
|
"expected": {
|
|
"type": "error",
|
|
"value": "Failed to evaluate [2 ? 1 : 0]. Ternary must be called with a Boolean value as a condition."
|
|
},
|
|
"variables": [],
|
|
"platforms": [
|
|
"android",
|
|
"web",
|
|
"ios"
|
|
]
|
|
},
|
|
{
|
|
"name": "true ? 0 : true ? 1 : 2 => 0",
|
|
"expression": "@{true ? 0 : true ? 1 : 2}",
|
|
"expected": {
|
|
"type": "integer",
|
|
"value": 0
|
|
},
|
|
"variables": [],
|
|
"platforms": [
|
|
"android",
|
|
"web",
|
|
"ios"
|
|
]
|
|
},
|
|
{
|
|
"name": "true ? false ? 1 : 2 : 0 => 2",
|
|
"expression": "@{true ? false ? 1 : 2 : 0}",
|
|
"expected": {
|
|
"type": "integer",
|
|
"value": 2
|
|
},
|
|
"variables": [],
|
|
"platforms": [
|
|
"android",
|
|
"web",
|
|
"ios"
|
|
]
|
|
}
|
|
]
|
|
}
|