public function testWorksOnAnonymousInlineFragment()
{
// if false omits anonymous inline fragment
$q = '
query Q {
a
... @include(if: false) {
b
}
}
';
$this->assertEquals(['data' => ['a' => 'a']], $this->executeTestQuery($q));
// if true includes anonymous inline fragment
$q = '
query Q {
a
... @include(if: true) {
b
}
}
';
$this->assertEquals(['data' => ['a' => 'a', 'b' => 'b']], $this->executeTestQuery($q));
// unless false includes anonymous inline fragment
$q = '
query Q {
a
... @skip(if: false) {
b
}
}
';
$this->assertEquals(['data' => ['a' => 'a', 'b' => 'b']], $this->executeTestQuery($q));
// unless true includes anonymous inline fragment
$q = '
query Q {
a
... @skip(if: true) {
b
}
}
';
$this->assertEquals(['data' => ['a' => 'a']], $this->executeTestQuery($q));
}