Files
test-repo/tests/more_path/__snapshots__/jsfmt.spec.js.snap
T
Christopher Chedeau 74bc9e7a4d Add newline for empty blocks {} (#205)
I find it weird to put `{}` together. So I figured I would change it to have an empty line and ask for feedback :)

![image](https://cloud.githubusercontent.com/assets/197597/21739279/062adc80-d44c-11e6-8bb7-5e0768f3ddde.png)

Beware: most of the test cases are not representative of real code, you almost never define blocks with no content in practice.
2017-01-16 11:31:32 -05:00

280 lines
3.8 KiB
Plaintext

exports[`test Condition.js 1`] = `
"/* @providesModule Condition */
function f(x:number) { }
function g() { return (42 || \"hello\"); }
var x = g();
if (typeof x === \"string\") {
x = 0;
}
f(x);
class A {}
function h() { return (42 || new A()); }
var y = h();
if (y instanceof A) {
y = 0;
}
//f(y);
function bar() { return true; }
class C { qux() { } }
function foo() {
var c = \"...\";
c = new C();
if (bar()) {
c.qux();
}
}
function goofy() {
var x = g();
if (typeof x == \'function\') {
x();
} else { // if (typeof x == \'number\') {
//f(x);
}
}
function goofy2() {
var o = {x : 0}
if (typeof o.x == \'function\') {
o.x();
}
var y = o.x;
if (typeof y == \'function\') {
y();
} else {
//f(y);
}
}
module.exports = true;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/* @providesModule Condition */
function f(x: number) {
}
function g() {
return 42 || \"hello\";
}
var x = g();
if (typeof x === \"string\") {
x = 0;
}
f(x);
class A {}
function h() {
return 42 || new A();
}
var y = h();
if (y instanceof A) {
y = 0;
}
//f(y);
function bar() {
return true;
}
class C {
qux() {
}
}
function foo() {
var c = \"...\";
c = new C();
if (bar()) {
c.qux();
}
}
function goofy() {
var x = g();
if (typeof x == \"function\") {
x();
} else {
}
}
function goofy2() {
var o = { x: 0 };
if (typeof o.x == \"function\") {
o.x();
}
var y = o.x;
if (typeof y == \"function\") {
y();
} else {
}
}
module.exports = true;
"
`;
exports[`test FlowSA.js 1`] = `
"
/* @providesModule FlowSA */
function check(x:string) { }
function FlowSA() {
var x = 0;
x = \"...\";
check(x);
}
module.exports = FlowSA;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/* @providesModule FlowSA */
function check(x: string) {
}
function FlowSA() {
var x = 0;
x = \"...\";
check(x);
}
module.exports = FlowSA;
"
`;
exports[`test Sigma.js 1`] = `
"
/* @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\";
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/* @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) {
}
}
module.exports = \"sigma\";
"
`;
exports[`test test.js 1`] = `
"class BaseClass {
baseProp: string;
}
class ChildClass extends BaseClass {
childProp: string;
}
function test(obj: BaseClass): string {
if (obj instanceof ChildClass) {
return obj.childProp_TYPO; // error (obj: ChildClass)
}
return obj.baseProp;
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class BaseClass {
baseProp: string;
}
class ChildClass extends BaseClass {
childProp: string;
}
function test(obj: BaseClass): string {
if (obj instanceof ChildClass) {
return obj.childProp_TYPO; // error (obj: ChildClass)
}
return obj.baseProp;
}
"
`;