@@ -141,4 +141,49 @@ describe('(unit) dist/resolver.js', () => {
141
141
} ) ;
142
142
} )
143
143
} ) ;
144
+ describe ( 'info parameter' , ( ) => {
145
+ it ( 'info parameter should be an empty object' , ( ) => {
146
+ const r1 = {
147
+ handle : ( root , args , context , info ) => {
148
+ expect ( typeof info ) . to . equal ( 'object' )
149
+ expect ( Object . keys ( info ) . length ) . to . equal ( 0 )
150
+ } ,
151
+ } ;
152
+ const resolver = createResolver ( r1 . handle ) ;
153
+
154
+ resolver ( null , null , null )
155
+ } )
156
+ it ( 'should pass the info parameter' , ( ) => {
157
+ const r1 = {
158
+ handle : ( root , args , context , info ) => {
159
+ expect ( typeof info ) . to . equal ( 'object' )
160
+ expect ( info . info ) . to . equal ( 'info' )
161
+ } ,
162
+ } ;
163
+ const resolver = createResolver ( r1 . handle ) ;
164
+
165
+ resolver ( null , null , null , { info : 'info' } )
166
+ } )
167
+ it ( 'should pass the info parameter on a chained resolver' , ( ) => {
168
+ const r1 = {
169
+ handle : ( root , args , context , info ) => {
170
+ expect ( typeof info ) . to . equal ( 'object' )
171
+ expect ( info . info ) . to . equal ( 'info' )
172
+ } ,
173
+ } ;
174
+
175
+ const r2 = {
176
+ handle : ( root , args , context , info ) => {
177
+ expect ( typeof info ) . to . equal ( 'object' )
178
+ expect ( info . chained ) . to . equal ( 'info' )
179
+ } ,
180
+ } ;
181
+
182
+ const baseResolver = createResolver ( r1 . handle ) ;
183
+ const chainedResolver = createResolver ( r2 . handle )
184
+
185
+ baseResolver ( null , null , null , { info : 'info' } )
186
+ chainedResolver ( null , null , null , { chained : 'info' } )
187
+ } )
188
+ } )
144
189
} ) ;
0 commit comments