public function testRespectsTheIncludeDeprecatedParameterForEnumValues()
{
$TestEnum = new EnumType(['name' => 'TestEnum', 'values' => ['NONDEPRECATED' => ['value' => 0], 'DEPRECATED' => ['value' => 1, 'deprecationReason' => 'Removed in 1.0'], 'ALSONONDEPRECATED' => ['value' => 2]]]);
$TestType = new ObjectType(['name' => 'TestType', 'fields' => ['testEnum' => ['type' => $TestEnum]]]);
$schema = new Schema(['query' => $TestType]);
$request = '
{
__type(name: "TestEnum") {
name
trueValues: enumValues(includeDeprecated: true) {
name
}
falseValues: enumValues(includeDeprecated: false) {
name
}
omittedValues: enumValues {
name
}
}
}
';
$expected = ['data' => ['__type' => ['name' => 'TestEnum', 'trueValues' => [['name' => 'NONDEPRECATED'], ['name' => 'DEPRECATED'], ['name' => 'ALSONONDEPRECATED']], 'falseValues' => [['name' => 'NONDEPRECATED'], ['name' => 'ALSONONDEPRECATED']], 'omittedValues' => [['name' => 'NONDEPRECATED'], ['name' => 'ALSONONDEPRECATED']]]]];
$this->assertEquals($expected, GraphQL::execute($schema, $request));
}