UNPKG

compare-by

Version:

A versatile utility library for sorting arrays of objects by one or multiple keys with customizable sort directions.

34 lines (30 loc) 1.29 kB
import { compareDates } from './compare-dates'; describe('compare dates', () => { describe('default order', () => { test('same values', () => { expect(compareDates(new Date(2023, 9, 23), new Date(2023, 9, 23))).toBe(0); }); test('different values', () => { expect(compareDates(new Date(2023, 9, 22), new Date(2023, 9, 23))).toBeLessThan(0); expect(compareDates(new Date(2023, 9, 23), new Date(2023, 9, 22))).toBeGreaterThan(0); }); }); describe('ascending order', () => { test('same values', () => { expect(compareDates(new Date(2023, 9, 23), new Date(2023, 9, 23), 'asc')).toBe(0); }); test('different values', () => { expect(compareDates(new Date(2023, 9, 22), new Date(2023, 9, 23), 'asc')).toBeLessThan(0); expect(compareDates(new Date(2023, 9, 23), new Date(2023, 9, 22), 'asc')).toBeGreaterThan(0); }); }); describe('descending order', () => { test('same values', () => { expect(compareDates(new Date(2023, 9, 23), new Date(2023, 9, 23), 'desc')).toBe(0); }); test('different values', () => { expect(compareDates(new Date(2023, 9, 22), new Date(2023, 9, 23), 'desc')).toBeGreaterThan(0); expect(compareDates(new Date(2023, 9, 23), new Date(2023, 9, 22), 'desc')).toBeLessThan(0); }); }); });