-
-
Notifications
You must be signed in to change notification settings - Fork 563
/
Copy pathIntegerFloatPrimitiveIntrospectionTest.php
81 lines (74 loc) · 2.29 KB
/
IntegerFloatPrimitiveIntrospectionTest.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?php declare(strict_types=1);
namespace GraphQL\Tests;
use GraphQL\Error\InvariantViolation;
use GraphQL\GraphQL;
use GraphQL\Type\Definition\ObjectType;
use GraphQL\Type\Definition\Type;
use GraphQL\Type\Schema;
use PHPUnit\Framework\TestCase;
final class IntegerFloatPrimitiveIntrospectionTest extends TestCase
{
/** @throws InvariantViolation */
public static function build(): Schema
{
$queryType = new ObjectType([
'name' => 'Query',
'fields' => [
'test' => [
'type' => Type::string(),
'args' => [
'index' => [
'description' => 'This fails',
'type' => Type::int(),
'defaultValue' => 3,
],
'another' => [
'description' => 'This fails',
'type' => Type::float(),
'defaultValue' => 3.14,
],
],
],
],
]);
return new Schema(['query' => $queryType]);
}
public function testDefaultValues(): void
{
$query = '{
__schema {
queryType {
fields {
name
args {
name
defaultValue
}
}
}
}
}';
$expected = [
'__schema' => [
'queryType' => [
'fields' => [
[
'name' => 'test',
'args' => [
[
'name' => 'index',
'defaultValue' => '3',
],
[
'name' => 'another',
'defaultValue' => '3.14',
],
],
],
],
],
],
];
self::assertSame(['data' => $expected], GraphQL::executeQuery(self::build(), $query)->toArray());
}
}