diff --git a/packages/cli-kit/src/private/common/array.test.ts b/packages/cli-kit/src/private/common/array.test.ts new file mode 100644 index 00000000000..0f286746ee4 --- /dev/null +++ b/packages/cli-kit/src/private/common/array.test.ts @@ -0,0 +1,40 @@ +import {unionArrayStrategy} from './array.js' +import {describe, test, expect} from 'vitest' + +describe('unionArrayStrategy', () => { + test('combines two arrays and removes duplicates', () => { + // Given + const destination = ['a', 'b'] + const source = ['b', 'c'] + + // When + const result = unionArrayStrategy(destination, source) + + // Then + expect(result).toEqual(['a', 'b', 'c']) + }) + + test('handles empty arrays', () => { + // Given + const destination: unknown[] = [] + const source = [1, 2] + + // When + const result = unionArrayStrategy(destination, source) + + // Then + expect(result).toEqual([1, 2]) + }) + + test('handles non-overlapping arrays', () => { + // Given + const destination = [1, 2] + const source = [3, 4] + + // When + const result = unionArrayStrategy(destination, source) + + // Then + expect(result).toEqual([1, 2, 3, 4]) + }) +})