Skip to content

Commit 39dc1ab

Browse files
authored
[Fusion] Migrated MergeSelectionSetRewriter Tests (#8040)
1 parent 31edeac commit 39dc1ab

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
using HotChocolate.Language;
2+
using HotChocolate.Types;
3+
using HotChocolate.Types.Mutable.Serialization;
4+
5+
namespace HotChocolate.Fusion.Rewriters;
6+
7+
public class MergeSelectionSetRewriterTests
8+
{
9+
[Fact]
10+
public void Merge_Two_SelectionSets()
11+
{
12+
// arrange
13+
var sourceText = FileResource.Open("schema1.graphql");
14+
var schemaDefinition = SchemaParser.Parse(sourceText);
15+
var productType = (IObjectTypeDefinition)schemaDefinition.Types["Product"];
16+
17+
var selectionSet1 = Utf8GraphQLParser.Syntax.ParseSelectionSet(
18+
"""
19+
{
20+
id
21+
name
22+
reviews {
23+
id
24+
}
25+
}
26+
""");
27+
28+
var selectionSet2 = Utf8GraphQLParser.Syntax.ParseSelectionSet(
29+
"""
30+
{
31+
reviews {
32+
body
33+
}
34+
name
35+
}
36+
""");
37+
38+
// act
39+
var rewriter = new MergeSelectionSetRewriter(schemaDefinition);
40+
var rewritten = rewriter.Merge([selectionSet1, selectionSet2], productType);
41+
42+
// assert
43+
rewritten.MatchInlineSnapshot(
44+
"""
45+
{
46+
id
47+
name
48+
reviews {
49+
id
50+
body
51+
}
52+
}
53+
""");
54+
}
55+
}

0 commit comments

Comments
 (0)