@@ -2,6 +2,7 @@ const gqlRequire = require('../src');
2
2
const gqlDefault = require ( '../src' ) . default ;
3
3
const loader = require ( '../loader' ) ;
4
4
const assert = require ( 'chai' ) . assert ;
5
+ const print = require ( 'graphql/language/printer' ) . print ;
5
6
6
7
[ gqlRequire , gqlDefault ] . forEach ( ( gql , i ) => {
7
8
describe ( `gql ${ i } ` , ( ) => {
@@ -438,6 +439,22 @@ const assert = require('chai').assert;
438
439
} ) ;
439
440
} ) ;
440
441
442
+ it ( 'returned ast toString returns query string' , ( ) => {
443
+ const query = `{ user(id: 5) { firstName lastName } }` ;
444
+ const doc = gql ( query ) ;
445
+
446
+ assert . equal ( doc . toString ( ) , print ( doc ) ) ;
447
+ } ) ;
448
+
449
+ it ( 'returned ast toString returns updated query string after ast mutation' , ( ) => {
450
+ const query = `{ user(id: 5) { firstName lastName } }` ;
451
+ const doc = gql ( query ) ;
452
+
453
+ assert . equal ( doc . toString ( ) . includes ( 'user' ) , true ) ;
454
+ doc . definitions [ 0 ] . selectionSet . selections [ 0 ] . name . value = 'employee' ;
455
+ assert . equal ( doc . toString ( ) . includes ( 'employee' ) , true ) ;
456
+ } ) ;
457
+
441
458
// How to make this work?
442
459
// it.only('can reference a fragment passed as a document via shorthand', () => {
443
460
// const ast = gql`
0 commit comments