blob: 36b528bc2715bd3cafc3699659a46662e8972d1c [file] [log] [blame]
{
"scenario": "Additional data model errors",
"defaultTestProperties": {
"locale": "en-US"
},
"tests": [
{
"src": ".input {$foo :number} .input {$bar :number} .match $foo $bar one{{one}}",
"expErrors": [
{
"type": "variant-key-mismatch"
}
]
},
{
"src": ".input {$foo :number} .input {$bar :number} .match $foo $bar one {{one}}",
"expErrors": [
{
"type": "variant-key-mismatch"
}
]
},
{
"src": ".input {$foo :number} .input {$bar :number} .match $foo $bar one {{one}}",
"expErrors": [
{
"type": "variant-key-mismatch"
}
]
},
{
"src": ".input {$foo :number} .match $foo * * {{foo}}",
"expErrors": [
{
"type": "variant-key-mismatch"
}
]
},
{
"src": ".input {$one :number} .match $one\n 1 2 {{Too many}}\n * {{Otherwise}}",
"expErrors": [
{
"type": "variant-key-mismatch"
}
]
},
{
"src": ".input {$one :number} .input {$two :number} .match $one $two \n 1 2 {{Two keys}}\n * {{Missing a key}}\n * * {{Otherwise}}",
"expErrors": [
{
"type": "variant-key-mismatch"
}
]
},
{
"src": ".input {$foo :x} .input {$bar :X} .match $foo $bar * {{foo}}",
"expErrors": [
{
"type": "variant-key-mismatch"
}
]
},
{
"src": ".input {$one :number} .match $one\n 1 {{Value is one}}\n 2 {{Value is two}}",
"expErrors": [
{
"type": "missing-fallback-variant"
}
]
},
{
"src": ".input {$one :number} .input {$two :number} .match $one $two\n 1 * {{First is one}}\n * 1 {{Second is one}}",
"expErrors": [
{
"type": "missing-fallback-variant"
}
]
},
{
"src": ".match $one\n 1 {{Value is one}}\n * {{Value is not one}}",
"expErrors": [
{
"type": "missing-selector-annotation"
}
]
},
{
"src": ".local $one = {|The one|}\n .match $one\n 1 {{Value is one}}\n * {{Value is not one}}",
"expErrors": [
{
"type": "missing-selector-annotation"
}
]
},
{
"src": ".input {$foo} .match $foo one {{one}} * {{other}}",
"expErrors": [
{
"type": "missing-selector-annotation"
}
]
},
{
"src": ".local $foo = {$bar} .match $foo one {{one}} * {{other}}",
"expErrors": [
{
"type": "missing-selector-annotation"
}
]
},
{
"src": ".local $x = {|1|} .input {$x :number} {{{$x}}}",
"expErrors": [
{
"type": "duplicate-declaration"
}
]
},
{
"src": ".input {$x :number} .input {$x :string} {{{$x}}}",
"expErrors": [
{
"type": "duplicate-declaration"
}
]
},
{
"src": "{:foo a=1 b=2 a=1}",
"expErrors": [
{
"type": "duplicate-option-name"
}
]
},
{
"src": "{:foo a=1 a=1}",
"expErrors": [
{
"type": "duplicate-option-name"
}
]
},
{
"src": "{:foo a=1 a=2}",
"expErrors": [
{
"type": "duplicate-option-name"
}
]
},
{
"src": "{|x| :foo a=1 a=2}",
"expErrors": [
{
"type": "duplicate-option-name"
}
]
}
]
}