Files
test-repo/tests/flow/switch/switch_default_fallthrough.js
T
Christopher Chedeau 3375cfe605 Move tests around (#454)
* new_tests

* move_all_clobbered_tests

* remove all the tests that no longer exist

* re-run flow tests

* Move all the flow tests to tests/flow and prettier to tests/

* Move prettier tests to their own folders

* Add jsfmt files

* run prettier snapshot tests
2017-01-24 14:35:37 -08:00

48 lines
940 B
JavaScript

/**
* @flow
*/
function foo(x : mixed): string {
var a = "";
var b = "";
switch (x) {
case "foo":
a = 0;
default:
b = 0;
}
// a is now string | number
(a : string); // error, string | number ~/> string
(a : number); // error, string | number ~/> number
// b is now number
(b : number); // ok
return b; // error, number ~/> string
}
function baz(x: mixed): number {
var a = "";
var b = "";
switch (x) {
case "baz":
a = 0;
break;
case "bar":
a = "";
default:
b = 0;
}
// a is now string | number
(a : string); // error, string | number ~/> string
(a : number); // error, string | number ~/> number
// b is now string | number
(b : string); // error, string | number ~/> string
(b : number); // error, string | number ~/> number
return a+b; // error, string ~/> number
}