1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 19:37:36 +00:00

LibJS/Tests: Use eval() for toEvalTo(), not Function()

Since we have had eval() for a while now, we can finally use it here -
this allows us to get rid of the confusing return statements in tested
source code.
This commit is contained in:
Linus Groh 2021-06-18 19:09:17 +01:00
parent 2e9f665bda
commit 299c3069c1
5 changed files with 8 additions and 10 deletions

View file

@ -37,7 +37,7 @@ test("break/continue, variable declaration, do-while, and return asi", () => {
1; 1;
var curly/* semicolon inserted here */} var curly/* semicolon inserted here */}
return foo();`; foo();`;
expect(source).toEvalTo(undefined); expect(source).toEvalTo(undefined);
}); });
@ -55,7 +55,7 @@ for (let i = 0; i < 5; ++i) {
counter++; counter++;
} }
return counter;`; counter;`;
expect(source).toEvalTo(5); expect(source).toEvalTo(5);
}); });

View file

@ -7,7 +7,7 @@ var i = 0;
i++; i++;
*/ */
/**/ i++; /**/ i++;
return i;`; i;`;
expect(source).toEvalTo(1); expect(source).toEvalTo(1);
}); });
@ -22,7 +22,7 @@ i++;
--> i++; --> i++;
/**/ --> i++; /**/ --> i++;
j --> i++; j --> i++;
return i;`; i;`;
expect(source).toEvalTo(2); expect(source).toEvalTo(2);
}); });

View file

@ -16,5 +16,5 @@ test("object values", () => {
}); });
test("issue #4409, '?.' followed by decimal digit", () => { test("issue #4409, '?.' followed by decimal digit", () => {
expect("return false?.1:.2").toEvalTo(0.2); expect("false?.1:.2").toEvalTo(0.2);
}); });

View file

@ -333,13 +333,11 @@ test("toEval", () => {
expect("function foo() { return 1; }; foo();").toEval(); expect("function foo() { return 1; }; foo();").toEval();
}); });
// FIXME: Will have to change when this matcher changes to use the
// "eval" function
test("toEvalTo", () => { test("toEvalTo", () => {
expect("let a = 1").toEvalTo(); expect("let a = 1").toEvalTo();
expect("let a = 1").toEvalTo(undefined); expect("let a = 1").toEvalTo(undefined);
expect("return 10").toEvalTo(10); expect("10").toEvalTo(10);
expect("return 10").not.toEvalTo(5); expect("10").not.toEvalTo(5);
expect(() => { expect(() => {
expect("*^&%%").not.toEvalTo(); expect("*^&%%").not.toEvalTo();

View file

@ -354,7 +354,7 @@ class ExpectationError extends Error {
let result; let result;
try { try {
result = new Function(this.target)(); result = eval(this.target);
} catch (e) { } catch (e) {
throw new ExpectationError(); throw new ExpectationError();
} }