55 filterHelperArgs ,
66 filterHelper ,
77 getIndexedFieldNames ,
8+ addFieldsWithOperator ,
9+ OPERATORS_FIELDNAME ,
810} from '../filter' ;
911import { UserModel } from '../../../__mocks__/userModel.js' ;
1012import { GraphQLInputObjectType , GraphQLNonNull } from 'graphql' ;
@@ -26,14 +28,34 @@ describe('Resolver helper `filter` ->', () => {
2628 } ) ;
2729 } ) ;
2830
31+ // describe('addFieldsWithOperator()', () => {
32+ // it('should add OPERATORS_FIELDNAME to filterType', () => {
33+ // const args = filterHelperArgs(UserTypeComposer, UserModel, {
34+ // filterTypeName: 'FilterUserType',
35+ // });
36+ // const inputTypeComposer = new InputTypeComposer(args.filter.type);
37+ // addFieldsWithOperator('testTypeName', inputTypeComposer, UserModel, {});
38+ // });
39+ // });
40+
2941 describe ( 'filterHelperArgs()' , ( ) => {
42+ it ( 'should throw error if first arg is not TypeComposer' , ( ) => {
43+ expect ( ( ) => filterHelperArgs ( { } ) )
44+ . to . throw ( 'should be instance of TypeComposer' ) ;
45+ } ) ;
46+
47+ it ( 'should throw error if second arg is not MongooseModel' , ( ) => {
48+ expect ( ( ) => filterHelperArgs ( UserTypeComposer , { } ) )
49+ . to . throw ( 'should be instance of MongooseModel' ) ;
50+ } ) ;
51+
3052 it ( 'should throw error if `filterTypeName` not provided in opts' , ( ) => {
31- expect ( ( ) => filterHelperArgs ( UserTypeComposer ) )
53+ expect ( ( ) => filterHelperArgs ( UserTypeComposer , UserModel ) )
3254 . to . throw ( 'provide non-empty `filterTypeName`' ) ;
3355 } ) ;
3456
3557 it ( 'should return filter field' , ( ) => {
36- const args = filterHelperArgs ( UserTypeComposer , {
58+ const args = filterHelperArgs ( UserTypeComposer , UserModel , {
3759 filterTypeName : 'FilterUserType' ,
3860 } ) ;
3961 expect ( args ) . has . property ( 'filter' ) ;
@@ -42,7 +64,7 @@ describe('Resolver helper `filter` ->', () => {
4264 } ) ;
4365
4466 it ( 'should for opts.isRequired=true return GraphQLNonNull' , ( ) => {
45- const args = filterHelperArgs ( UserTypeComposer , {
67+ const args = filterHelperArgs ( UserTypeComposer , UserModel , {
4668 filterTypeName : 'FilterUserType' ,
4769 isRequired : true ,
4870 } ) ;
@@ -52,7 +74,7 @@ describe('Resolver helper `filter` ->', () => {
5274 } ) ;
5375
5476 it ( 'should remove fields via opts.removeFields' , ( ) => {
55- const args = filterHelperArgs ( UserTypeComposer , {
77+ const args = filterHelperArgs ( UserTypeComposer , UserModel , {
5678 filterTypeName : 'FilterUserType' ,
5779 removeFields : [ 'name' , 'age' ] ,
5880 } ) ;
@@ -63,7 +85,7 @@ describe('Resolver helper `filter` ->', () => {
6385 } ) ;
6486
6587 it ( 'should set required fields via opts.requiredFields' , ( ) => {
66- const args = filterHelperArgs ( UserTypeComposer , {
88+ const args = filterHelperArgs ( UserTypeComposer , UserModel , {
6789 filterTypeName : 'FilterUserType' ,
6890 requiredFields : [ 'name' , 'age' ] ,
6991 } ) ;
@@ -73,17 +95,8 @@ describe('Resolver helper `filter` ->', () => {
7395 expect ( inputTypeComposer . getFieldType ( 'gender' ) ) . not . instanceof ( GraphQLNonNull ) ;
7496 } ) ;
7597
76- it ( 'should throw error if opts.onlyIndexed=true and opts.model not provided' , ( ) => {
77- expect ( ( ) => {
78- filterHelperArgs ( UserTypeComposer , {
79- filterTypeName : 'FilterUserType' ,
80- onlyIndexed : true ,
81- } ) ;
82- } ) . to . throw ( 'You should provide `model`' ) ;
83- } ) ;
84-
8598 it ( 'should leave only indexed fields if opts.onlyIndexed=true' , ( ) => {
86- const args = filterHelperArgs ( UserTypeComposer , {
99+ const args = filterHelperArgs ( UserTypeComposer , UserModel , {
87100 filterTypeName : 'FilterUserType' ,
88101 onlyIndexed : true ,
89102 model : UserModel ,
@@ -96,7 +109,7 @@ describe('Resolver helper `filter` ->', () => {
96109 } ) ;
97110
98111 it ( 'should opts.onlyIndexed=true and opts.removeFields works together' , ( ) => {
99- const args = filterHelperArgs ( UserTypeComposer , {
112+ const args = filterHelperArgs ( UserTypeComposer , UserModel , {
100113 filterTypeName : 'FilterUserType' ,
101114 onlyIndexed : true ,
102115 model : UserModel ,
0 commit comments