Testing Collection Utility Functions Implementation in Parcel Bundler
This test suite validates collection utility functions in Parcel’s core utilities, focusing on sorted object entries and set operations. The tests ensure proper object key sorting and set difference calculations for data manipulation tasks.
Test Coverage Overview
Implementation Analysis
Technical Details
Best Practices Demonstrated
parcel-bundler/parcel
packages/core/utils/test/collection.test.js
// @flow
import assert from 'assert';
import {
objectSortedEntries,
objectSortedEntriesDeep,
setDifference,
} from '../src/collection';
describe('objectSortedEntries', () => {
it('returns a sorted list of key/value tuples', () => {
assert.deepEqual(
objectSortedEntries({foo: 'foo', baz: 'baz', bar: 'bar'}),
[
['bar', 'bar'],
['baz', 'baz'],
['foo', 'foo'],
],
);
});
});
describe('objectSortedEntriesDeep', () => {
it('returns a deeply sorted list of key/value tuples', () => {
assert.deepEqual(
objectSortedEntriesDeep({
foo: 'foo',
baz: ['d', 'c'],
bar: {g: 'g', b: 'b'},
}),
[
[
'bar',
[
['b', 'b'],
['g', 'g'],
],
],
['baz', ['d', 'c']],
['foo', 'foo'],
],
);
});
});
describe('setDifference', () => {
it('returns a setDifference of two sets of T type', () => {
assert.deepEqual(
setDifference(new Set([1, 2, 3]), new Set([3, 4, 5])),
new Set([1, 2, 4, 5]),
);
});
});