import { describe, it, expect } from 'vitest'; import { getMultipleQuery } from '../get-multiple-query'; describe('getMultipleQuery', () => { const route = { query: { duration: '10-30' } }; const items = [ { value: '0-10', key: 'duration', query: [0, 10] }, { value: '10-30', key: 'duration', query: [10, 30] }, { value: '30+', key: 'duration', query: 30 }, ]; it('массив query → min и max', () => { const result = getMultipleQuery(route as any, items as any, 'min', 'max'); expect(result).toEqual({ min: 10, max: 30 }); }); it('последний элемент → только min', () => { const r = { query: { duration: '30+' } }; const result = getMultipleQuery(r as any, items as any, 'min', 'max'); expect(result).toEqual({ min: 30 }); }); it('не массив и не последний → только max', () => { const r = { query: { duration: '0-10' } }; const shortItems = [ { value: '0-10', key: 'duration', query: 'ten' }, { value: '30+', key: 'duration', query: 30 }, ]; const result = getMultipleQuery(r as any, shortItems as any, 'min', 'max'); expect(result).toEqual({ max: 'ten' }); }); });