@@ -141,4 +141,49 @@ describe('(unit) dist/resolver.js', () => {
141141 } ) ;
142142 } )
143143 } ) ;
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+ } )
144189} ) ;
0 commit comments