blob: 0a4695aeba34112f65ee53646ddf304150a4ed1f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
import { expect, it } from "bun:test";
// Change
function expectInvalidCharacters(val) {
try {
atob(val);
throw new Error("Expected error");
} catch (error) {
expect(error.message).toBe("The string contains invalid characters.");
}
}
it("atob", () => {
expect(atob("YQ==")).toBe("a");
expect(atob("YWI=")).toBe("ab");
expect(atob("YWJj")).toBe("abc");
expect(atob("YWJjZA==")).toBe("abcd");
expect(atob("YWJjZGU=")).toBe("abcde");
expect(atob("YWJjZGVm")).toBe("abcdef");
expect(atob("zzzz")).toBe("Ï<ó");
expect(atob("")).toBe("");
expect(atob(null)).toBe("ée");
expect(atob("6ek=")).toBe("éé");
expect(atob("6ek")).toBe("éé");
expect(atob("gIE=")).toBe("");
expect(atob("zz")).toBe("Ï");
expect(atob("zzz")).toBe("Ï<");
expect(atob("zzz=")).toBe("Ï<");
expect(atob(" YQ==")).toBe("a");
expect(atob("YQ==\u000a")).toBe("a");
try {
atob();
} catch (error) {
expect(error.name).toBe("TypeError");
}
expectInvalidCharacters(undefined);
expectInvalidCharacters(" abcd===");
expectInvalidCharacters("abcd=== ");
expectInvalidCharacters("abcd ===");
expectInvalidCharacters("тест");
expectInvalidCharacters("z");
expectInvalidCharacters("zzz==");
expectInvalidCharacters("zzz===");
expectInvalidCharacters("zzz====");
expectInvalidCharacters("zzz=====");
expectInvalidCharacters("zzzzz");
expectInvalidCharacters("z=zz");
expectInvalidCharacters("=");
expectInvalidCharacters("==");
expectInvalidCharacters("===");
expectInvalidCharacters("====");
expectInvalidCharacters("=====");
});
it("btoa", () => {
expect(btoa("a")).toBe("YQ==");
expect(btoa("ab")).toBe("YWI=");
expect(btoa("abc")).toBe("YWJj");
expect(btoa("abcd")).toBe("YWJjZA==");
expect(btoa("abcde")).toBe("YWJjZGU=");
expect(btoa("abcdef")).toBe("YWJjZGVm");
expect(typeof btoa).toBe("function");
try {
btoa();
throw new Error("Expected error");
} catch (error) {
expect(error.name).toBe("TypeError");
}
var window = "[object Window]";
expect(btoa("")).toBe("");
expect(btoa(null)).toBe("bnVsbA==");
expect(btoa(undefined)).toBe("dW5kZWZpbmVk");
expect(btoa(window)).toBe("W29iamVjdCBXaW5kb3dd");
expect(btoa("éé")).toBe("6ek=");
expect(btoa("\u0080\u0081")).toBe("gIE=");
expect(btoa(Bun)).toBe(btoa("[object Bun]"));
});
|