import { describe, it, expect } from 'vitest'; import { getPaginationLink } from '../get-pagination-link'; describe('getPaginationLink', () => { it('для первой страницы убирает префикс и отдаёт path', () => { const result = getPaginationLink(1, 'page', '/videos', { page: '3', sort: 'new' }); expect(result).toEqual({ path: '/videos', query: { sort: 'new' } }); }); it('для прочих страниц сохраняет query и проставляет номер (без path)', () => { const result = getPaginationLink(5, 'page', '/videos', { sort: 'new' }); expect(result).toEqual({ query: { sort: 'new', page: 5 } }); }); it('зажимает значение < 1 к первой странице', () => { const result = getPaginationLink(0, 'page', '/videos', { page: '2' }); expect(result).toEqual({ path: '/videos', query: {} }); }); it('перезаписывает существующий префикс', () => { const result = getPaginationLink(7, 'page', '/videos', { page: '2', q: 'x' }); expect(result).toEqual({ query: { page: 7, q: 'x' } }); }); });