@@ -212,61 +212,103 @@ describe('Execute: handles directives', () => {
212212 } ) ;
213213 } ) ;
214214
215- describe ( 'works on fragment' , ( ) => {
216- it ( 'if false omits fragment' , async ( ) => {
215+ describe ( 'works on anonymous inline fragment' , ( ) => {
216+ it ( 'if false omits anonymous inline fragment' , async ( ) => {
217217 var q = `
218218 query Q {
219219 a
220- ...Frag
220+ ... @include(if: false) {
221+ b
222+ }
221223 }
222- fragment Frag on TestType @include(if: false) {
223- b
224+ ` ;
225+ return expect ( await executeTestQuery ( q ) ) . to . deep . equal ( {
226+ data : { a : 'a' }
227+ } ) ;
228+ } ) ;
229+
230+ it ( 'if true includes anonymous inline fragment' , async ( ) => {
231+ var q = `
232+ query Q {
233+ a
234+ ... @include(if: true) {
235+ b
236+ }
237+ }
238+ ` ;
239+ return expect ( await executeTestQuery ( q ) ) . to . deep . equal ( {
240+ data : { a : 'a' , b : 'b' }
241+ } ) ;
242+ } ) ;
243+ it ( 'unless false includes anonymous inline fragment' , async ( ) => {
244+ var q = `
245+ query Q {
246+ a
247+ ... @skip(if: false) {
248+ b
249+ }
250+ }
251+ ` ;
252+ return expect ( await executeTestQuery ( q ) ) . to . deep . equal ( {
253+ data : { a : 'a' , b : 'b' }
254+ } ) ;
255+ } ) ;
256+ it ( 'unless true includes anonymous inline fragment' , async ( ) => {
257+ var q = `
258+ query Q {
259+ a
260+ ... @skip(if: true) {
261+ b
262+ }
224263 }
225264 ` ;
226265 return expect ( await executeTestQuery ( q ) ) . to . deep . equal ( {
227266 data : { a : 'a' }
228267 } ) ;
229268 } ) ;
230- it ( 'if true includes fragment' , async ( ) => {
269+ } ) ;
270+
271+ describe ( 'works on fragment' , ( ) => {
272+ it ( 'if false omits fragment' , async ( ) => {
231273 var q = `
232274 query Q {
233275 a
234276 ...Frag
235277 }
236- fragment Frag on TestType @include(if: true ) {
278+ fragment Frag on TestType @include(if: false ) {
237279 b
238280 }
239281 ` ;
240282 return expect ( await executeTestQuery ( q ) ) . to . deep . equal ( {
241- data : { a : 'a' , b : 'b' }
283+ data : { a : 'a' }
242284 } ) ;
243285 } ) ;
244- it ( 'unless false includes fragment' , async ( ) => {
286+ it ( 'if true includes fragment' , async ( ) => {
245287 var q = `
246288 query Q {
247289 a
248290 ...Frag
249291 }
250- fragment Frag on TestType @skip (if: false ) {
292+ fragment Frag on TestType @include (if: true ) {
251293 b
252294 }
253295 ` ;
254296 return expect ( await executeTestQuery ( q ) ) . to . deep . equal ( {
255297 data : { a : 'a' , b : 'b' }
256298 } ) ;
257299 } ) ;
258- it ( 'unless true omits fragment' , async ( ) => {
300+ it ( 'unless false includes fragment' , async ( ) => {
259301 var q = `
260302 query Q {
261303 a
262304 ...Frag
263305 }
264- fragment Frag on TestType @skip(if: true ) {
306+ fragment Frag on TestType @skip(if: false ) {
265307 b
266308 }
267309 ` ;
268310 return expect ( await executeTestQuery ( q ) ) . to . deep . equal ( {
269- data : { a : 'a' }
311+ data : { a : 'a' , b : 'b' }
270312 } ) ;
271313 } ) ;
272314 } ) ;
0 commit comments