public function testNullsAComplexTreeOfNullableFieldsThatReturnNull()
{
$doc = '
query Q {
nest {
sync
promise
nest {
sync
promise
}
promiseNest {
sync
promise
}
}
promiseNest {
sync
promise
nest {
sync
promise
}
promiseNest {
sync
promise
}
}
}
';
$ast = Parser::parse($doc);
$expected = ['data' => ['nest' => ['sync' => null, 'promise' => null, 'nest' => ['sync' => null, 'promise' => null], 'promiseNest' => ['sync' => null, 'promise' => null]], 'promiseNest' => ['sync' => null, 'promise' => null, 'nest' => ['sync' => null, 'promise' => null], 'promiseNest' => ['sync' => null, 'promise' => null]]]];
Executor::setPromiseAdapter(new ReactPromiseAdapter());
Executor::execute($this->schema, $ast, $this->nullingData, null, [], 'Q')->then(function ($actual) use($expected) {
$this->assertEquals($expected, $actual);
});
}