{ "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" ] } ] }