Skip to content

Commit b6e4a5b

Browse files
committed
ISSUE-10577: Fix reliability for function or symbol types in the serialization fallback case
1 parent a9f6e5b commit b6e4a5b

File tree

5 files changed

+333
-96
lines changed

5 files changed

+333
-96
lines changed

e2e/__tests__/__snapshots__/bigintInequality.test.ts.snap

Lines changed: 0 additions & 41 deletions
This file was deleted.
Lines changed: 215 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,215 @@
1+
// Jest Snapshot v1, https://goo.gl/fbAQLP
2+
3+
exports[`handles \`BigInt\` 1`] = `
4+
"FAIL __tests__/test-1.js
5+
● test
6+
7+
expect(received).toBe(expected) // Object.is equality
8+
9+
Expected: 73n
10+
Received: 42n
11+
12+
1 | it('test', () => {
13+
> 2 | expect(BigInt(42)).toBe(BigInt(73));
14+
| ^
15+
3 | });
16+
17+
at Object.toBe (__tests__/test-1.js:2:22)
18+
19+
FAIL __tests__/test-2.js
20+
● test
21+
22+
expect(received).toBe(expected) // Object.is equality
23+
24+
Expected: 73n
25+
Received: 42n
26+
27+
1 | it('test', () => {
28+
> 2 | expect(BigInt(42)).toBe(BigInt(73));
29+
| ^
30+
3 | });
31+
32+
at Object.toBe (__tests__/test-2.js:2:22)"
33+
`;
34+
35+
exports[`handles \`BigInt\` 2`] = `
36+
"Test Suites: 2 failed, 2 total
37+
Tests: 2 failed, 2 total
38+
Snapshots: 0 total
39+
Time: <<REPLACED>>
40+
Ran all test suites."
41+
`;
42+
43+
exports[`handles \`Map\` 1`] = `
44+
"FAIL __tests__/test-1.js
45+
● test
46+
47+
expect(received).toEqual(expected) // deep equality
48+
49+
- Expected - 1
50+
+ Received + 1
51+
52+
Map {
53+
- 1 => "3",
54+
+ 1 => "2",
55+
}
56+
57+
1 | it('test', () => {
58+
> 2 | expect(new Map([[1, "2"]])).toEqual(new Map([[1, "3"]]));
59+
| ^
60+
3 | });
61+
62+
at Object.toEqual (__tests__/test-1.js:2:31)
63+
64+
FAIL __tests__/test-2.js
65+
● test
66+
67+
expect(received).toEqual(expected) // deep equality
68+
69+
- Expected - 1
70+
+ Received + 1
71+
72+
Map {
73+
- 1 => "3",
74+
+ 1 => "2",
75+
}
76+
77+
1 | it('test', () => {
78+
> 2 | expect(new Map([[1, "2"]])).toEqual(new Map([[1, "3"]]));
79+
| ^
80+
3 | });
81+
82+
at Object.toEqual (__tests__/test-2.js:2:31)"
83+
`;
84+
85+
exports[`handles \`Map\` 2`] = `
86+
"Test Suites: 2 failed, 2 total
87+
Tests: 2 failed, 2 total
88+
Snapshots: 0 total
89+
Time: <<REPLACED>>
90+
Ran all test suites."
91+
`;
92+
93+
exports[`handles \`Symbol\` 1`] = `
94+
"FAIL __tests__/test-1.js
95+
● test
96+
97+
expect(received).toEqual(expected) // deep equality
98+
99+
Expected: Symbol(b)
100+
Received: Symbol(a)
101+
102+
1 | it('test', () => {
103+
> 2 | expect(Symbol('a')).toEqual(Symbol('b'));
104+
| ^
105+
3 | });
106+
107+
at Object.toEqual (__tests__/test-1.js:2:23)
108+
109+
FAIL __tests__/test-2.js
110+
● test
111+
112+
expect(received).toEqual(expected) // deep equality
113+
114+
Expected: Symbol(b)
115+
Received: Symbol(a)
116+
117+
1 | it('test', () => {
118+
> 2 | expect(Symbol('a')).toEqual(Symbol('b'));
119+
| ^
120+
3 | });
121+
122+
at Object.toEqual (__tests__/test-2.js:2:23)"
123+
`;
124+
125+
exports[`handles \`Symbol\` 2`] = `
126+
"Test Suites: 2 failed, 2 total
127+
Tests: 2 failed, 2 total
128+
Snapshots: 0 total
129+
Time: <<REPLACED>>
130+
Ran all test suites."
131+
`;
132+
133+
exports[`handles functions 1`] = `
134+
"FAIL __tests__/test-1.js
135+
● test
136+
137+
expect(received).toEqual(expected) // deep equality
138+
139+
Expected: [Function fn2]
140+
Received: [Function fn1]
141+
142+
2 | const fn1 = () => {};
143+
3 | const fn2 = () => {};
144+
> 4 | expect(fn1).toEqual(fn2);
145+
| ^
146+
5 | });
147+
148+
at Object.toEqual (__tests__/test-1.js:4:15)
149+
150+
FAIL __tests__/test-2.js
151+
● test
152+
153+
expect(received).toEqual(expected) // deep equality
154+
155+
Expected: [Function fn2]
156+
Received: [Function fn1]
157+
158+
2 | const fn1 = () => {};
159+
3 | const fn2 = () => {};
160+
> 4 | expect(fn1).toEqual(fn2);
161+
| ^
162+
5 | });
163+
164+
at Object.toEqual (__tests__/test-2.js:4:15)"
165+
`;
166+
167+
exports[`handles functions 2`] = `
168+
"Test Suites: 2 failed, 2 total
169+
Tests: 2 failed, 2 total
170+
Snapshots: 0 total
171+
Time: <<REPLACED>>
172+
Ran all test suites."
173+
`;
174+
175+
exports[`handles mixed structure 1`] = `
176+
"FAIL __tests__/test-1.js
177+
● test
178+
179+
expect(received).toEqual(expected) // deep equality
180+
181+
Expected: false
182+
Received: {"bigInt": 42n, "fn": [Function anonymous], "map": Map {1 => "2"}, "ref": [Circular], "symbol": Symbol(asd), Symbol(qwe): Symbol(zxc)}
183+
184+
11 | method() {}
185+
12 | }
186+
> 13 | expect(new Class()).toEqual(false);
187+
| ^
188+
14 | });
189+
190+
at Object.toEqual (__tests__/test-1.js:13:23)
191+
192+
FAIL __tests__/test-2.js
193+
● test
194+
195+
expect(received).toEqual(expected) // deep equality
196+
197+
Expected: false
198+
Received: {"bigInt": 42n, "fn": [Function anonymous], "map": Map {1 => "2"}, "ref": [Circular], "symbol": Symbol(asd), Symbol(qwe): Symbol(zxc)}
199+
200+
11 | method() {}
201+
12 | }
202+
> 13 | expect(new Class()).toEqual(false);
203+
| ^
204+
14 | });
205+
206+
at Object.toEqual (__tests__/test-2.js:13:23)"
207+
`;
208+
209+
exports[`handles mixed structure 2`] = `
210+
"Test Suites: 2 failed, 2 total
211+
Tests: 2 failed, 2 total
212+
Snapshots: 0 total
213+
Time: <<REPLACED>>
214+
Ran all test suites."
215+
`;

e2e/__tests__/bigintInequality.test.ts

Lines changed: 0 additions & 54 deletions
This file was deleted.

0 commit comments

Comments
 (0)