Files
test-repo/tests/flow/more_path/Sigma.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

41 lines
559 B
JavaScript

/* @providesModule Sigma */
class A { a() {} }
class B extends A { b() {} }
class C extends B { c() {} }
function bar(x:B) {
if (x instanceof A) {
x.a();
x.c(); // error
} else {
x++; // TODO no error? since unreachable (x: B implies x: A)
}
}
function foo(x:A) {
if (x instanceof C) {
x.a();
x.b();
x.c();
x.d(); // error
} else {
x.a();
x.c(); // error
}
}
class D { d() {} }
function baz(x:D) {
if (x instanceof A) {
// unreachable, TODO: this shouldn't throw
}
}
module.exports = "sigma";