Skip to content

Commit 364466a

Browse files
committed
Add tests for diff function
1 parent 34a669e commit 364466a

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

test/jasmine/tests/plot_api_test.js

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3094,6 +3094,47 @@ describe('plot_api helpers', function () {
30943094
expect(helpers.hasParent({ 'marker.line': 1 }, attr2)).toBe(true);
30953095
});
30963096
});
3097+
3098+
describe('hasCollectionChanged', () => {
3099+
it('Returns true if object collection has changed', () => {
3100+
expect(
3101+
helpers.hasCollectionChanged(
3102+
{ captain: 'Leela', deliveryBoy: 'Fry' },
3103+
{ captain: 'Leela', deliveryBoy: 'Bender' }
3104+
)
3105+
).toBe(true);
3106+
});
3107+
3108+
it("Returns false if object collection hasn't changed", () => {
3109+
expect(
3110+
helpers.hasCollectionChanged(
3111+
{ captain: 'Leela', deliveryBoy: 'Fry' },
3112+
{ captain: 'Leela', deliveryBoy: 'Fry' }
3113+
)
3114+
).toBe(false);
3115+
});
3116+
3117+
it('Returns true if array collection has changed', () => {
3118+
expect(helpers.hasCollectionChanged(['Zoidberg', 'Hermes'], ['Zoidberg', 'Leela'])).toBe(true);
3119+
});
3120+
3121+
it("Returns false if object collection hasn't changed", () => {
3122+
expect(helpers.hasCollectionChanged(['Zoidberg', 'Hermes'], ['Zoidberg', 'Hermes'])).toBe(false);
3123+
});
3124+
3125+
it('Handles nested objects', () => {
3126+
expect(
3127+
helpers.hasCollectionChanged(
3128+
{ level1: { captain: 'Leela', deliveryBoy: 'Fry' } },
3129+
{ level1: { captain: 'Leela', deliveryBoy: 'Bender' } }
3130+
)
3131+
).toBe(true);
3132+
});
3133+
3134+
it('Handles nested arrays', () => {
3135+
expect(helpers.hasCollectionChanged([['Zoidberg', 'Hermes']], [['Zoidberg', 'Leela']])).toBe(true);
3136+
});
3137+
});
30973138
});
30983139

30993140
describe('plot_api edit_types', function () {

0 commit comments

Comments
 (0)