moy-fp
Version:
A functional programming library.
36 lines (30 loc) • 998 B
JavaScript
import __ from '../../src/Function/__'
/**
* [a] -> [a] -> [a]
*/
import union from '../../src/Relation/union'
test('union(not using __), first empty array', () => {
expect(
union([])([{a: 1}, {a: 2}, {a: 3}])
).toEqual([{a: 1}, {a: 2}, {a: 3}])
})
test('union(not using __), second empty array', () => {
expect(
union([{a: 1}, {a: 2}, {a: 3}])([])
).toEqual([{a: 1}, {a: 2}, {a: 3}])
})
test('union(not using __), no empty array', () => {
expect(
union([{a: 2}, {a: 4}])([{a: 1}, {a: 2}, {a: 3}, {a: 1}])
).toEqual([{a: 1}, {a: 2}, {a: 3}, {a: 4}])
})
test('union(not using __), no empty array and mix item type', () => {
expect(
union([false, 2, {a: 2}, [2], {a: 4}])(['false', {a: 1}, '2', {a: 3}, {a: 2}])
).toEqual(['false', {a: 1}, '2', {a: 3}, {a: 2}, false, 2, [2], {a: 4}])
})
test('union(using __), no empty array', () => {
expect(
union(__, [{a: 1}, {a: 2}, {a: 3}, {a: 1}])([{a: 2}, {a: 4}])
).toEqual([{a: 1}, {a: 2}, {a: 3}, {a: 4}])
})