prettier/tests/flow/undefined/__snapshots__/jsfmt.spec.js.snap

119 lines
2.4 KiB
Plaintext
Raw Normal View History

exports[`test issue-518.js 1`] = `
"function doSomethingAsync(): Promise<void> {
return new Promise((resolve, reject) => {
resolve(); // OK to leave out arg, same as resolve(undefined)
var anotherVoidPromise: Promise<void> = Promise.resolve();
resolve(anotherVoidPromise);
});
}
// simpler repro to show that too few args are fine when expecting void
function foo(x: void) { }
foo();
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2016-12-27 21:29:31 +03:00
function doSomethingAsync(): Promise<void> {
return new Promise((resolve, reject) => {
resolve();
// OK to leave out arg, same as resolve(undefined)
var anotherVoidPromise: Promise<void> = Promise.resolve();
resolve(anotherVoidPromise);
});
2016-12-27 21:29:31 +03:00
}
// simpler repro to show that too few args are fine when expecting void
function foo(x: void) {}
2017-01-11 18:16:38 +03:00
foo();
"
`;
exports[`test undefined.js 1`] = `
"function foo() {
var x;
x.foo();
}
function bar() {
var x:?{ bar():void; };
if (x) x.bar();
}
function qux(x?: number, y:string = \"\", z) { }
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2016-12-27 21:29:31 +03:00
function foo() {
var x;
x.foo();
}
2016-12-27 21:29:31 +03:00
function bar() {
var x: ?{ bar(): void };
if (x) x.bar();
2016-12-27 21:29:31 +03:00
}
function qux(x?: number, y: string = \"\", z) {}
2017-01-11 18:16:38 +03:00
"
`;
exports[`test undefined2.js 1`] = `
"// @flow
let tests = [
function(x: number) {
var id;
var name = id ? \'John\' : undefined;
(name: boolean); // error, string or void
const bar = [
undefined,
\'bar\',
];
(bar[x]: boolean); // error, string or void
},
function(x: number) {
var undefined = \'foo\';
(undefined: string); // ok
var x;
if (x !== undefined) {
x[0]; // should error, could be void
}
const bar = [
undefined,
\'bar\',
];
(bar[x]: boolean); // error, string only
},
];
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// @flow
let tests = [
function(x: number) {
var id;
var name = id ? \"John\" : undefined;
2016-12-27 21:29:31 +03:00
(name: boolean);
// error, string or void
const bar = [undefined, \"bar\"];
(bar[x]: boolean); // error, string or void
},
function(x: number) {
var undefined = \"foo\";
2016-12-27 21:29:31 +03:00
(undefined: string);
// ok
var x;
if (x !== undefined) {
x[0]; // should error, could be void
}
const bar = [undefined, \"bar\"];
(bar[x]: boolean); // error, string only
}
2017-01-11 18:16:38 +03:00
];
"
`;