import { describe, it, expect } from 'vitest'; import { getSelectedQuery } from '../get-selected-query'; describe('getSelectedQuery', () => { it('находит query по значению из route', () => { const route = { query: { sort: 'popular' } }; const items = [ { value: 'popular', key: 'sort', query: 'popular-query' }, { value: 'newest', key: 'sort', query: 'newest-query' }, ]; expect(getSelectedQuery(route as any, items as any)).toBe('popular-query'); }); it('не найдено → undefined', () => { const route = { query: { sort: 'unknown' } }; const items = [{ value: 'popular', key: 'sort', query: 'q' }]; expect(getSelectedQuery(route as any, items as any)).toBeUndefined(); }); it('элемент найден, но без query → undefined (сортировка не уходит в запрос)', () => { const route = { query: { sort: 'relevant' } }; const items = [ { value: 'relevant', key: 'sort' }, { value: 'newest', key: 'sort', query: '-created' }, ]; expect(getSelectedQuery(route as any, items as any)).toBeUndefined(); }); it('пустой items → undefined', () => { const route = { query: { sort: 'popular' } }; expect(getSelectedQuery(route as any, [])).toBeUndefined(); }); });