1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 05:18:12 +00:00

LibJS: Add String.raw

This commit is contained in:
Matthew Olsson 2020-05-06 17:49:48 -07:00 committed by Andreas Kling
parent b5f1df57ed
commit ab652fa1ee
3 changed files with 67 additions and 1 deletions

View file

@ -0,0 +1,35 @@
load("test-common.js")
try {
let str = String.raw`foo\nbar`;
assert(str.length === 8 && str === "foo\\nbar");
str = String.raw`foo ${1 + 9}\nbar${"hf!"}`;
assert(str === "foo 10\\nbarhf!");
str = String.raw`${10}${20}${30}`;
assert(str === "102030");
str = String.raw({ raw: ["foo ", "\\nbar"] }, 10, "hf!");
assert(str === "foo 10\\nbar");
str = String.raw({ raw: ["foo ", "\\nbar"] });
assert(str === "foo \\nbar");
str = String.raw({ raw: [] }, 10, "hf!");
assert(str === "");
str = String.raw({ raw: 1 });
assert(str === "");
assertThrowsError(() => {
String.raw({});
}, {
error: TypeError,
message: "Cannot convert property 'raw' to object from undefined",
});
console.log("PASS");
} catch (e) {
console.log("FAIL: " + e);
}