Skip to content

Commit 8f5f844

Browse files
committed
More dramatic update
1 parent b14e9ac commit 8f5f844

File tree

1 file changed

+27
-6
lines changed

1 file changed

+27
-6
lines changed

tests/performance/app/routes/update-with-same-state.js

+27-6
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ export default Route.extend({
1010
const initialPayload = await fetch('./fixtures/add-children-initial.json').then((r) => r.json());
1111
const initialPayload2 = structuredClone(initialPayload);
1212

13-
const minusOnePayload = structuredClone(initialPayload);
14-
minusOnePayload.data.relationships.children.data.pop();
15-
minusOnePayload.included.pop();
13+
const payloadWithRemoval = structuredClone(initialPayload);
14+
payloadWithRemoval.data.relationships.children.data.splice(0, 19000);
15+
payloadWithRemoval.included.splice(0, 19000);
1616

1717
performance.mark('start-push-initial-payload');
1818
this.store.push(initialPayload);
@@ -31,22 +31,43 @@ export default Route.extend({
3131
const parent = peekedParents[0];
3232
const children = await parent.children;
3333

34+
await logChildren(parent);
35+
3436
performance.mark('start-local-removal');
35-
const removedChild = children.pop();
37+
console.group('start-local-removal');
38+
const removedChildren = children.splice(0, 19000);
39+
await logChildren(parent);
40+
console.groupEnd();
3641

3742
performance.mark('start-push-minus-one-payload');
38-
this.store.push(minusOnePayload);
43+
console.group('start-push-minus-one-payload');
44+
this.store.push(payloadWithRemoval);
45+
await logChildren(parent);
46+
console.groupEnd();
3947

4048
performance.mark('start-local-addition');
41-
children.push(removedChild);
49+
console.group('start-local-addition');
50+
parent.children = children.concat(removedChildren);
51+
await logChildren(parent);
52+
console.groupEnd();
4253

4354
performance.mark('start-push-plus-one-payload');
55+
console.group('start-push-plus-one-payload');
4456
this.store.push(initialPayload2);
57+
await logChildren(parent);
58+
console.groupEnd();
4559

4660
performance.mark('end-push-plus-one-payload');
4761
},
4862
});
4963

64+
async function logChildren(parent) {
65+
const children = await parent.children;
66+
console.log(
67+
`children is an array of length ${children.length} of ids ${children.at(0).id}..${children.at(children.length - 1).id}`
68+
);
69+
}
70+
5071
function iterateChild(record, seen) {
5172
if (seen.has(record)) {
5273
return;

0 commit comments

Comments
 (0)