11import { Resolver , ResolverResolveParams } from 'graphql-compose' ;
22import { GraphQLInt } from 'graphql-compose/lib/graphql' ;
3- import { UserTC } from '../__mocks__/User' ;
4- import { preparePaginationResolver } from '../paginationResolver ' ;
3+ import { UserTC , countResolver , findManyResolver } from '../__mocks__/User' ;
4+ import { preparePaginationResolver } from '../pagination ' ;
55
6- describe ( 'paginationResolver ' , ( ) => {
7- const spyFindManyResolve = jest . spyOn ( UserTC . getResolver ( 'findMany' ) , 'resolve' ) ;
8- const spyCountResolve = jest . spyOn ( UserTC . getResolver ( 'count' ) , 'resolve' ) ;
6+ describe ( 'preparePaginationResolver() ' , ( ) => {
7+ const spyFindManyResolve = jest . spyOn ( findManyResolver , 'resolve' ) ;
8+ const spyCountResolve = jest . spyOn ( countResolver , 'resolve' ) ;
99 const paginationResolver = preparePaginationResolver ( UserTC , {
10- countResolverName : 'count' ,
11- findResolverName : 'findMany' ,
10+ countResolver ,
11+ findManyResolver ,
1212 perPage : 5 ,
1313 } ) ;
1414
@@ -25,38 +25,36 @@ describe('paginationResolver', () => {
2525 } ) . toThrowError ( 'should be instance of ObjectTypeComposer' ) ;
2626 } ) ;
2727
28- it ( 'should throw error if opts.countResolverName are empty' , ( ) => {
28+ it ( 'should throw error if opts.countResolverName are empty or wrong ' , ( ) => {
2929 expect ( ( ) => {
3030 const wrongArgs = [ UserTC , { } ] ;
3131 // @ts -expect-error
3232 preparePaginationResolver ( ...wrongArgs ) ;
33- } ) . toThrowError ( 'should have option `opts.countResolverName`' ) ;
34- } ) ;
33+ } ) . toThrowError ( "'opts.countResolver' must be a Resolver instance" ) ;
3534
36- it ( 'should throw error if resolver opts.countResolverName does not exists' , ( ) => {
3735 expect ( ( ) =>
3836 preparePaginationResolver ( UserTC , {
39- countResolverName : 'countDoesNotExists' ,
40- findResolverName : 'findMany' ,
37+ // @ts -expect-error
38+ countResolver : 'countDoesNotExists' ,
39+ findManyResolver,
4140 } )
42- ) . toThrowError ( "does not have resolver with name 'countDoesNotExists' " ) ;
41+ ) . toThrowError ( "'opts.countResolver' must be a Resolver instance " ) ;
4342 } ) ;
4443
45- it ( 'should throw error if opts.findResolverName are empty' , ( ) => {
44+ it ( 'should throw error if opts.findManyResolver are empty or wrong ' , ( ) => {
4645 expect ( ( ) => {
4746 const wrongArgs = [ UserTC , { countResolverName : 'count' } ] ;
4847 // @ts -expect-error
4948 preparePaginationResolver ( ...wrongArgs ) ;
50- } ) . toThrowError ( 'should have option `opts.findResolverName`' ) ;
51- } ) ;
49+ } ) . toThrowError ( "'opts.countResolver' must be a Resolver instance" ) ;
5250
53- it ( 'should throw error if resolver opts.countResolverName does not exists' , ( ) => {
5451 expect ( ( ) =>
5552 preparePaginationResolver ( UserTC , {
56- countResolverName : 'count' ,
57- findResolverName : 'findManyDoesNotExists' ,
53+ countResolver,
54+ // @ts -expect-error
55+ findManyResolver : 'findManyDoesNotExists' ,
5856 } )
59- ) . toThrowError ( "does not have resolver with name 'findManyDoesNotExists' " ) ;
57+ ) . toThrowError ( "'opts.findManyResolver' must be a Resolver instance " ) ;
6058 } ) ;
6159 } ) ;
6260
@@ -93,23 +91,19 @@ describe('paginationResolver', () => {
9391 beforeEach ( ( ) => {
9492 findManyResolverCalled = false ;
9593 countResolverCalled = false ;
96- const mockedFindMany = UserTC . getResolver ( 'findMany' ) . wrapResolve (
97- ( next ) => ( resolveParams ) => {
98- findManyResolverCalled = true ;
99- spyResolveParams = resolveParams ;
100- return next ( resolveParams ) ;
101- }
102- ) ;
103- const mockedCount = UserTC . getResolver ( 'findMany' ) . wrapResolve ( ( next ) => ( resolveParams ) => {
94+ const mockedFindMany = findManyResolver . wrapResolve ( ( next ) => ( resolveParams ) => {
95+ findManyResolverCalled = true ;
96+ spyResolveParams = resolveParams ;
97+ return next ( resolveParams ) ;
98+ } ) ;
99+ const mockedCount = countResolver . wrapResolve ( ( next ) => ( resolveParams ) => {
104100 countResolverCalled = true ;
105101 spyResolveParams = resolveParams ;
106102 return next ( resolveParams ) ;
107103 } ) ;
108- UserTC . setResolver ( 'mockedFindMany' , mockedFindMany ) ;
109- UserTC . setResolver ( 'mockedCount' , mockedCount ) ;
110104 mockedPaginationResolver = preparePaginationResolver ( UserTC , {
111- countResolverName : ' mockedCount' ,
112- findResolverName : ' mockedFindMany' ,
105+ countResolver : mockedCount ,
106+ findManyResolver : mockedFindMany ,
113107 } ) ;
114108 } ) ;
115109
0 commit comments