66
77use ApiSkeletons \Doctrine \GraphQL \Config ;
88use ApiSkeletons \Doctrine \GraphQL \Driver ;
9+ use ApiSkeletons \Doctrine \GraphQL \Type \TypeManager ;
910use ApiSkeletonsTest \Doctrine \GraphQL \AbstractTest ;
1011use ApiSkeletonsTest \Doctrine \GraphQL \Entity \Performance ;
1112use GraphQL \GraphQL ;
@@ -19,6 +20,8 @@ public function testCriteriaTypeCollision(): void
1920 $ driver1 = new Driver ($ this ->getEntityManager ());
2021 $ driver2 = new Driver ($ this ->getEntityManager (), new Config (['group ' => 'ExcludeCriteriaTest ' ]));
2122
23+ $ driver2 ->set (TypeManager::class, $ driver1 ->get (TypeManager::class));
24+
2225 $ schema = new Schema ([
2326 'query ' => new ObjectType ([
2427 'name ' => 'query ' ,
@@ -43,11 +46,53 @@ public function testCriteriaTypeCollision(): void
4346 ]),
4447 ]);
4548
46- $ query = '{ one: performance1 ( filter: { id: { eq: 2 } } ) { edges { node { id } } }, two: performance2 ( filter: { id: { eq: 2 } } ) { edges { node { id } } } } ' ;
49+ $ query = '{
50+ one: performance1 (
51+ filter: {
52+ id: {
53+ eq: 2
54+ }
55+ }
56+ ) {
57+ edges {
58+ node {
59+ id
60+ }
61+ }
62+ pageInfo {
63+ hasNextPage
64+ }
65+ },
66+ two: performance2 (
67+ filter: {
68+ id: {
69+ eq: 2
70+ }
71+ }
72+ ) {
73+ edges {
74+ node {
75+ id
76+ }
77+ }
78+ pageInfo {
79+ hasNextPage
80+ }
81+ }
82+ } ' ;
4783 $ result = GraphQL::executeQuery ($ schema , $ query );
4884
4985 $ data = $ result ->toArray ()['data ' ];
5086
5187 $ this ->assertEquals ($ data ['one ' ]['edges ' ][0 ]['node ' ]['id ' ], $ data ['two ' ]['edges ' ][0 ]['node ' ]['id ' ]);
88+ $ this ->assertSame ($ driver1 ->get (TypeManager::class), $ driver2 ->get (TypeManager::class));
89+ $ this ->assertSame (
90+ $ driver1 ->get (TypeManager::class)->get ('pageinfo ' ),
91+ $ driver2 ->get (TypeManager::class)->get ('pageinfo ' ),
92+ );
93+ $ this ->assertSame (
94+ $ driver1 ->get (TypeManager::class)->get ('pagination ' ),
95+ $ driver2 ->get (TypeManager::class)->get ('pagination ' ),
96+ );
5297 }
5398}
0 commit comments