Skip to content

Commit 32cd707

Browse files
committed
Add failing tests for new Set methods
1 parent c368f01 commit 32cd707

2 files changed

Lines changed: 68 additions & 1 deletion

File tree

.vscode/settings.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,5 +68,6 @@
6868
"source.fixAll.eslint": "explicit"
6969
},
7070
"debug.javascript.usePreviewAutoAttach": true,
71-
"debug.javascript.usePreview": true
71+
"debug.javascript.usePreview": true,
72+
"jest.runMode": "on-demand"
7273
}

src/apiTests/Set.test.ts

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,3 +154,69 @@ describe("Set tests", () => {
154154
`);
155155
});
156156
});
157+
158+
describe("new set methods", () => {
159+
test.failing("union", () => {
160+
const objectBuffer = createObjectBuffer<any>(1024, {});
161+
objectBuffer.setA = new Set([1, 2, 3]);
162+
objectBuffer.setB = new Set([3, 4, 5]);
163+
164+
const result = objectBuffer.setA.union(objectBuffer.setB);
165+
expect([...result]).toMatchInlineSnapshot(`[1, 2, 3, 4, 5]`);
166+
});
167+
168+
test.failing("intersection", () => {
169+
const objectBuffer = createObjectBuffer<any>(1024, {});
170+
objectBuffer.setA = new Set([1, 2, 3]);
171+
objectBuffer.setB = new Set([3, 4, 5]);
172+
173+
const result = objectBuffer.setA.intersection(objectBuffer.setB);
174+
expect([...result]).toMatchInlineSnapshot(`[3]`);
175+
});
176+
177+
test.failing("difference", () => {
178+
const objectBuffer = createObjectBuffer<any>(1024, {});
179+
objectBuffer.setA = new Set([1, 2, 3]);
180+
objectBuffer.setB = new Set([3, 4, 5]);
181+
182+
const result = objectBuffer.setA.difference(objectBuffer.setB);
183+
expect([...result]).toMatchInlineSnapshot(`[1, 2]`);
184+
});
185+
186+
test.failing("symmetricDifference", () => {
187+
const objectBuffer = createObjectBuffer<any>(1024, {});
188+
objectBuffer.setA = new Set([1, 2, 3]);
189+
objectBuffer.setB = new Set([3, 4, 5]);
190+
191+
const result = objectBuffer.setA.symmetricDifference(objectBuffer.setB);
192+
expect([...result]).toMatchInlineSnapshot(`[1, 2, 4, 5]`);
193+
});
194+
195+
test.failing("isSubsetOf", () => {
196+
const objectBuffer = createObjectBuffer<any>(1024, {});
197+
objectBuffer.setA = new Set([1, 2]);
198+
objectBuffer.setB = new Set([1, 2, 3]);
199+
200+
expect(objectBuffer.setA.isSubsetOf(objectBuffer.setB)).toBe(true);
201+
expect(objectBuffer.setB.isSubsetOf(objectBuffer.setA)).toBe(false);
202+
});
203+
204+
test.failing("isSupersetOf", () => {
205+
const objectBuffer = createObjectBuffer<any>(1024, {});
206+
objectBuffer.setA = new Set([1, 2, 3]);
207+
objectBuffer.setB = new Set([1, 2]);
208+
209+
expect(objectBuffer.setA.isSupersetOf(objectBuffer.setB)).toBe(true);
210+
expect(objectBuffer.setB.isSupersetOf(objectBuffer.setA)).toBe(false);
211+
});
212+
213+
test.failing("isDisjointFrom", () => {
214+
const objectBuffer = createObjectBuffer<any>(1024, {});
215+
objectBuffer.setA = new Set([1, 2, 3]);
216+
objectBuffer.setB = new Set([4, 5, 6]);
217+
objectBuffer.setC = new Set([3, 4, 5]);
218+
219+
expect(objectBuffer.setA.isDisjointFrom(objectBuffer.setB)).toBe(true);
220+
expect(objectBuffer.setA.isDisjointFrom(objectBuffer.setC)).toBe(false);
221+
});
222+
});

0 commit comments

Comments
 (0)