import { identity, escape, addStringsUTF16, addStrings } from "./macro.ts" assert { type: "macro" }; test("latin1 string", () => { expect(identity("©")).toBe("©"); }); test("ascii string", () => { expect(identity("abc")).toBe("abc"); }); test("escaping", () => { expect(identity("\\")).toBe("\\"); expect(identity("\f")).toBe("\f"); expect(identity("\n")).toBe("\n"); expect(identity("\r")).toBe("\r"); expect(identity("\t")).toBe("\t"); expect(identity("\v")).toBe("\v"); expect(identity("\0")).toBe("\0"); expect(identity("'")).toBe("'"); expect(identity('"')).toBe('"'); expect(identity("`")).toBe("`"); // prettier-ignore expect(identity("\'")).toBe("\'"); // prettier-ignore expect(identity('\"')).toBe('\"'); // prettier-ignore expect(identity("\`")).toBe("\`"); expect(identity("$")).toBe("$"); expect(identity("\x00")).toBe("\x00"); expect(identity("\x0B")).toBe("\x0B"); expect(identity("\x0C")).toBe("\x0C"); expect(identity("\\")).toBe("\\"); expect(escape()).toBe("\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C"); expect(addStrings("abc")).toBe("abc\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\n")).toBe("\n\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\r")).toBe("\r\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\t")).toBe("\t\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("©")).toBe("©\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\x00")).toBe("\x00\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\x0B")).toBe("\x0B\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\x0C")).toBe("\x0C\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\\")).toBe("\\\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\f")).toBe("\f\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\v")).toBe("\v\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("\0")).toBe("\0\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("'")).toBe("'\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings('"')).toBe('"\\\f\n\r\t\v\0\'"`$\x00\x0B\x0C©'); expect(addStrings("`")).toBe("`\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStrings("😊")).toBe("😊\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C©"); expect(addStringsUTF16("abc")).toBe("abc\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\n")).toBe("\n\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\r")).toBe("\r\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\t")).toBe("\t\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("©")).toBe("©\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\x00")).toBe("\x00\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\x0B")).toBe("\x0B\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\x0C")).toBe("\x0C\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\\")).toBe("\\\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\f")).toBe("\f\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\v")).toBe("\v\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("\0")).toBe("\0\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("'")).toBe("'\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16('"')).toBe('"\\\f\n\r\t\v\0\'"`$\x00\x0B\x0C😊'); expect(addStringsUTF16("`")).toBe("`\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); expect(addStringsUTF16("😊")).toBe("😊\\\f\n\r\t\v\0'\"`$\x00\x0B\x0C😊"); }); test("utf16 string", () => { expect(identity("😊 Smiling Face with Smiling Eyes Emoji")).toBe("😊 Smiling Face with Smiling Eyes Emoji"); }); // test("template string ascii", () => { // expect(identity(`A${""}`)).toBe("A"); // }); // test("template string latin1", () => { // expect(identity(`©${""}`)).toBe("©"); // }); ack-fulfilled-after-rejection Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/builtins/cpp/StreamInternalsBuiltins.h (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2022-07-04[internal] Fix duplicate symbol issueGravatar Jarred Sumner 1-3/+0
2022-07-04Fix npm peer dep issueGravatar Jarred Sumner 2-2/+3
2022-07-04[bench] Add a react ssr hello worldGravatar Jarred Sumner 2-0/+37
2022-07-04Update bun.lockbGravatar Jarred Sumner 1-0/+0
2022-07-04Update README.mdGravatar Jarred Sumner 1-15/+6
2022-07-04[resolver] Add a test for self-referencing package.json exportsGravatar Jarred Sumner 1-0/+44
2022-07-04Bump docker build of webkitGravatar Jarred Sumner 1-1/+1
2022-07-04[itnernal] Cleanup some of the streams codeGravatar Jarred Sumner 7-792/+846
2022-07-04[internal] Add a note explaining what to do if this failsGravatar Jarred Sumner 1-0/+4
2022-07-04[jsc] Handle promise ownership (might revert this)Gravatar Jarred Sumner 1-3/+8
2022-07-04[jsc] Run JSC's deferredWorkTimer sometimesGravatar Jarred Sumner 1-1/+1
2022-07-04[jsc] Attempt to make detecting ArrayBuffer/Uint8Array fasterGravatar Jarred Sumner 1-13/+128
2022-07-04[server] Clean up some of the logic for freeing ReadableStreamGravatar Jarred Sumner 1-3/+30
2022-07-04Update __global.zigGravatar Jarred Sumner 1-4/+4
2022-07-04[jsc] Make JSC own the memory for source code stringsGravatar Jarred Sumner 2-19/+40