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

43 lines
734 B
JavaScript

/***
* test env state tracking thru try/catch/finally
* @flow
*/
function foo() {
var x = 0;
var y;
try {
x = "";
} catch(e) {
x = false;
throw -1;
} finally {
y = {};
}
// here via [try; finally] only.
x(); // string ~/> function call (no num or bool error)
y(); // object ~/> function call (no uninitialized error)
}
function bar(response) {
var payload;
try {
payload = JSON.parse(response);
} catch (e) {
throw new Error('...');
}
// here via [try] only.
if (payload.error) { // ok
// ...
}
}
function qux() {
var x = 5;
try {
throw -1;
} finally {
}
x(); // unreachable
}