@@ -6,25 +6,25 @@ import Paginator from '../src/lib/components/common/Paginator.svelte';
66describe ( 'Paginator' , ( ) => {
77 it ( 'display without ellipsis' , ( ) => {
88 const result = render ( Paginator , {
9- props : { pageSize : 10 , totalCount : 70 , currentPage : 4 , onPageChange : ( ) => { } }
9+ props : { pageSize : 10 , totalCount : 70 , currentPage : 4 , onPageChange : vi . fn ( ) }
1010 } ) ;
1111 expect ( getPageItems ( result ) ) . toEqual ( [ '«' , '1' , '2' , '3' , '4' , '5' , '6' , '7' , '»' ] ) ;
1212 } ) ;
1313 it ( 'display ellipsis at beginning' , ( ) => {
1414 const result = render ( Paginator , {
15- props : { pageSize : 10 , totalCount : 1000 , currentPage : 99 , onPageChange : ( ) => { } }
15+ props : { pageSize : 10 , totalCount : 1000 , currentPage : 99 , onPageChange : vi . fn ( ) }
1616 } ) ;
1717 expect ( getPageItems ( result ) ) . toEqual ( [ '«' , '1' , '...' , '96' , '97' , '98' , '99' , '100' , '»' ] ) ;
1818 } ) ;
1919 it ( 'display ellipsis at end' , ( ) => {
2020 const result = render ( Paginator , {
21- props : { pageSize : 10 , totalCount : 1000 , currentPage : 2 , onPageChange : ( ) => { } }
21+ props : { pageSize : 10 , totalCount : 1000 , currentPage : 2 , onPageChange : vi . fn ( ) }
2222 } ) ;
2323 expect ( getPageItems ( result ) ) . toEqual ( [ '«' , '1' , '2' , '3' , '4' , '5' , '...' , '100' , '»' ] ) ;
2424 } ) ;
2525 it ( 'display ellipsis both at beginning and end' , ( ) => {
2626 const result = render ( Paginator , {
27- props : { pageSize : 10 , totalCount : 1000 , currentPage : 50 , onPageChange : ( ) => { } }
27+ props : { pageSize : 10 , totalCount : 1000 , currentPage : 50 , onPageChange : vi . fn ( ) }
2828 } ) ;
2929 expect ( getPageItems ( result ) ) . toEqual ( [
3030 '«' ,
@@ -44,13 +44,13 @@ describe('Paginator', () => {
4444 } ) ;
4545 it ( 'omit ellipsis at end bewteen consecutive numbers' , ( ) => {
4646 const result = render ( Paginator , {
47- props : { pageSize : 10 , totalCount : 70 , currentPage : 3 , onPageChange : ( ) => { } }
47+ props : { pageSize : 10 , totalCount : 70 , currentPage : 3 , onPageChange : vi . fn ( ) }
4848 } ) ;
4949 expect ( getPageItems ( result ) ) . toEqual ( [ '«' , '1' , '2' , '3' , '4' , '5' , '6' , '7' , '»' ] ) ;
5050 } ) ;
5151 it ( 'omit ellipsis at begninning bewteen consecutive numbers' , ( ) => {
5252 const result = render ( Paginator , {
53- props : { pageSize : 10 , totalCount : 70 , currentPage : 5 , onPageChange : ( ) => { } }
53+ props : { pageSize : 10 , totalCount : 70 , currentPage : 5 , onPageChange : vi . fn ( ) }
5454 } ) ;
5555 expect ( getPageItems ( result ) ) . toEqual ( [ '«' , '1' , '2' , '3' , '4' , '5' , '6' , '7' , '»' ] ) ;
5656 } ) ;
@@ -81,29 +81,29 @@ describe('Paginator', () => {
8181 } ) ;
8282 it ( 'hide pages if total results is zero' , async ( ) => {
8383 const result = render ( Paginator , {
84- props : { pageSize : 10 , totalCount : 0 , currentPage : 3 , onPageChange : ( ) => { } }
84+ props : { pageSize : 10 , totalCount : 0 , currentPage : 3 , onPageChange : vi . fn ( ) }
8585 } ) ;
8686 expect ( result . queryByLabelText ( 'Previous' ) ) . toBeNull ( ) ;
8787 } ) ;
8888 it ( 'previous is disabled on first page' , async ( ) => {
8989 const result = render ( Paginator , {
90- props : { pageSize : 10 , totalCount : 13 , currentPage : 1 , onPageChange : ( ) => { } }
90+ props : { pageSize : 10 , totalCount : 13 , currentPage : 1 , onPageChange : vi . fn ( ) }
9191 } ) ;
9292 expect ( getPageItems ( result ) ) . toEqual ( [ '«' , '1' , '2' , '»' ] ) ;
93- expect ( result . queryByLabelText ( 'Previous' ) . disabled ) . true ;
93+ expect ( /** @type { HTMLLinkElement } */ ( result . queryByLabelText ( 'Previous' ) ) . disabled ) . true ;
9494 } ) ;
9595 it ( 'next is disabled on last page' , async ( ) => {
9696 const result = render ( Paginator , {
97- props : { pageSize : 10 , totalCount : 13 , currentPage : 2 , onPageChange : ( ) => { } }
97+ props : { pageSize : 10 , totalCount : 13 , currentPage : 2 , onPageChange : vi . fn ( ) }
9898 } ) ;
9999 expect ( getPageItems ( result ) ) . toEqual ( [ '«' , '1' , '2' , '»' ] ) ;
100- expect ( result . queryByLabelText ( 'Next' ) . disabled ) . true ;
100+ expect ( /** @type { HTMLLinkElement } */ ( result . queryByLabelText ( 'Next' ) ) . disabled ) . true ;
101101 } ) ;
102102} ) ;
103103
104104/**
105105 *
106- * @param {import('@testing-library/svelte').RenderResult } result
106+ * @param {import('@testing-library/svelte').RenderResult<any> } result
107107 */
108108function getPageItems ( result ) {
109109 const itemElements = result . getByRole ( 'list' ) . querySelectorAll ( '.page-item' ) ;
0 commit comments