
Otherwise we crash the interpreter when an exception is thrown during evaluation of the while or do/while test expression - which is easily caused by a ReferenceError - e.g.: while (someUndefinedVariable) { // ... }
20 lines
389 B
JavaScript
20 lines
389 B
JavaScript
test("basic functionality", () => {
|
|
let number = 0;
|
|
do {
|
|
number++;
|
|
} while (number < 9);
|
|
expect(number).toBe(9);
|
|
});
|
|
|
|
test("no braces", () => {
|
|
let number = 0;
|
|
do number++;
|
|
while (number < 3);
|
|
expect(number).toBe(3);
|
|
});
|
|
|
|
test("exception in test expression", () => {
|
|
expect(() => {
|
|
do {} while (foo);
|
|
}).toThrow(ReferenceError);
|
|
});
|