|
4 | 4 | namespace GqlPlus.Merging; |
5 | 5 |
|
6 | 6 | public abstract class TestAliasedMerger<TAst> |
7 | | - : TestDescriptionsMerger<TAst> |
| 7 | + : TestAliasedMerger<TAst, string> |
| 8 | + where TAst : IGqlpAliased |
| 9 | +{ } |
| 10 | + |
| 11 | +public abstract class TestAliasedMerger<TAst, TInput> |
| 12 | + : TestDescriptionsMerger<TAst, TInput> |
8 | 13 | where TAst : IGqlpAliased |
9 | 14 | { |
10 | 15 | [Theory, RepeatData] |
11 | | - public void CanMerge_TwoAstsOneAlias_ReturnsGood(string name, string alias) |
12 | | - => CanMerge_Good([MakeAliased(name, []), MakeAliased(name, [alias])]); |
| 16 | + public void CanMerge_TwoAstsOneAlias_ReturnsGood(TInput input, string alias) |
| 17 | + => CanMerge_Good([MakeAliased(input, []), MakeAliased(input, [alias])]); |
13 | 18 |
|
14 | 19 | [Theory, RepeatData] |
15 | | - public void CanMerge_TwoAstsSameAlias_ReturnsGood(string name, string alias) |
16 | | - => CanMerge_Good([MakeAliased(name, [alias]), MakeAliased(name, [alias])]); |
| 20 | + public void CanMerge_TwoAstsSameAlias_ReturnsGood(TInput input, string alias) |
| 21 | + => CanMerge_Good([MakeAliased(input, [alias]), MakeAliased(input, [alias])]); |
17 | 22 |
|
18 | 23 | [Theory, RepeatData] |
19 | | - public void CanMerge_TwoAstsDifferentAliases_ReturnsGood(string name, string alias1, string alias2) |
20 | | - => CanMerge_Good([MakeAliased(name, [alias1]), MakeAliased(name, [alias2])]); |
| 24 | + public void CanMerge_TwoAstsDifferentAliases_ReturnsGood(TInput input, string alias1, string alias2) |
| 25 | + => CanMerge_Good([MakeAliased(input, [alias1]), MakeAliased(input, [alias2])]); |
21 | 26 |
|
22 | 27 | [Theory, RepeatData] |
23 | | - public void CanMerge_ThreeAstsOneAlias_ReturnsGood(string name1, string name2, string alias) |
| 28 | + public void CanMerge_ThreeAstsOneAlias_ReturnsGood(TInput input1, TInput input2, string alias) |
24 | 29 | => this |
25 | 30 | .SkipIf(SkipDifferentInput) |
26 | | - .CanMerge_Good([MakeAliased(name1, []), MakeAliased(name2, []), MakeAliased(name1, [alias])]); |
| 31 | + .CanMerge_Good([MakeAliased(input1, []), MakeAliased(input2, []), MakeAliased(input1, [alias])]); |
27 | 32 |
|
28 | 33 | [Theory, RepeatData] |
29 | | - public void CanMerge_ThreeAstsSameAlias_ReturnsErrors(string name1, string name2, string alias) |
| 34 | + public void CanMerge_ThreeAstsSameAlias_ReturnsErrors(TInput input1, TInput input2, string alias) |
30 | 35 | => this |
31 | 36 | .SkipIf(SkipDifferentInput) |
32 | | - .SkipEqual(name1, name2) |
33 | | - .CanMerge_Errors([MakeAliased(name1, []), MakeAliased(name2, [alias]), MakeAliased(name1, [alias])]); |
| 37 | + .SkipEqual(input1, input2) |
| 38 | + .CanMerge_Errors([MakeAliased(input1, []), MakeAliased(input2, [alias]), MakeAliased(input1, [alias])]); |
34 | 39 |
|
35 | 40 | [Theory, RepeatData] |
36 | | - public void CanMerge_ThreeAstsDifferentAliases_ReturnsGood(string name1, string name2, string alias1, string alias2) |
| 41 | + public void CanMerge_ThreeAstsDifferentAliases_ReturnsGood(TInput input1, TInput input2, string alias1, string alias2) |
37 | 42 | => this |
38 | 43 | .SkipIf(SkipDifferentInput) |
39 | | - .SkipEqual(name1, name2) |
| 44 | + .SkipEqual(input1, input2) |
40 | 45 | .SkipEqual(alias1, alias2) |
41 | | - .CanMerge_Good([MakeAliased(name1, []), MakeAliased(name2, [alias1]), MakeAliased(name1, [alias2])]); |
| 46 | + .CanMerge_Good([MakeAliased(input1, []), MakeAliased(input2, [alias1]), MakeAliased(input1, [alias2])]); |
42 | 47 |
|
43 | 48 | [Theory, RepeatData] |
44 | | - public void CanMerge_ThreeAstsTwoAliases_ReturnsGood(string name1, string name2, string alias1, string alias2) |
| 49 | + public void CanMerge_ThreeAstsTwoAliases_ReturnsGood(TInput input1, TInput input2, string alias1, string alias2) |
45 | 50 | => this |
46 | 51 | .SkipIf(SkipDifferentInput) |
47 | | - .SkipEqual(name1, name2) |
48 | | - .CanMerge_Good([MakeAliased(name1, [alias1]), MakeAliased(name2, []), MakeAliased(name1, [alias2])]); |
| 52 | + .SkipEqual(input1, input2) |
| 53 | + .CanMerge_Good([MakeAliased(input1, [alias1]), MakeAliased(input2, []), MakeAliased(input1, [alias2])]); |
49 | 54 |
|
50 | 55 | [Theory, RepeatData] |
51 | | - public void CanMerge_ThreeAstsMixedAliases_ReturnsErrors(string name1, string name2, string alias1, string alias2) |
| 56 | + public void CanMerge_ThreeAstsMixedAliases_ReturnsErrors(TInput input1, TInput input2, string alias1, string alias2) |
52 | 57 | => this |
53 | 58 | .SkipIf(SkipDifferentInput) |
54 | | - .SkipEqual(name1, name2) |
55 | | - .CanMerge_Errors([MakeAliased(name1, [alias1]), MakeAliased(name2, [alias2]), MakeAliased(name1, [alias1, alias2])]); |
| 59 | + .SkipEqual(input1, input2) |
| 60 | + .CanMerge_Errors([MakeAliased(input1, [alias1]), MakeAliased(input2, [alias2]), MakeAliased(input1, [alias1, alias2])]); |
56 | 61 |
|
57 | 62 | [Theory, RepeatData] |
58 | | - public void CanMerge_ThreeAstsManyAliases_ReturnsErrors(string name1, string name2, string alias1, string alias2) |
| 63 | + public void CanMerge_ThreeAstsManyAliases_ReturnsErrors(TInput input1, TInput input2, string alias1, string alias2) |
59 | 64 | => this |
60 | 65 | .SkipIf(SkipDifferentInput) |
61 | | - .SkipEqual(name1, name2) |
62 | | - .CanMerge_Errors([MakeAliased(name1, [alias1]), MakeAliased(name2, [alias1, alias2]), MakeAliased(name1, [alias2])]); |
| 66 | + .SkipEqual(input1, input2) |
| 67 | + .CanMerge_Errors([MakeAliased(input1, [alias1]), MakeAliased(input2, [alias1, alias2]), MakeAliased(input1, [alias2])]); |
63 | 68 |
|
64 | 69 | [Theory, RepeatData] |
65 | | - public void Merge_TwoAstsOneAlias_ReturnsExpected(string name, string alias) |
66 | | - => Merge_Expected([MakeAliased(name, []), MakeAliased(name, [alias])], MakeAliased(name, [alias])); |
| 70 | + public void Merge_TwoAstsOneAlias_ReturnsExpected(TInput input, string alias) |
| 71 | + => Merge_Expected([MakeAliased(input, []), MakeAliased(input, [alias])], MakeAliased(input, [alias])); |
67 | 72 |
|
68 | 73 | [Theory, RepeatData] |
69 | | - public void Merge_TwoAstsSameAlias_ReturnsExpected(string name, string alias) |
70 | | - => Merge_Expected([MakeAliased(name, [alias]), MakeAliased(name, [alias])], MakeAliased(name, [alias])); |
| 74 | + public void Merge_TwoAstsSameAlias_ReturnsExpected(TInput input, string alias) |
| 75 | + => Merge_Expected([MakeAliased(input, [alias]), MakeAliased(input, [alias])], MakeAliased(input, [alias])); |
71 | 76 |
|
72 | 77 | [Theory, RepeatData] |
73 | | - public void Merge_TwoAstsTwoAlias_ReturnsExpected(string name, string alias1, string alias2) |
| 78 | + public void Merge_TwoAstsTwoAlias_ReturnsExpected(TInput input, string alias1, string alias2) |
74 | 79 | => this |
75 | 80 | .SkipEqual(alias1, alias2) |
76 | 81 | .Merge_Expected( |
77 | | - [MakeAliased(name, [alias1]), MakeAliased(name, [alias2])], |
78 | | - MakeAliased(name, [alias1, alias2])); |
| 82 | + [MakeAliased(input, [alias1]), MakeAliased(input, [alias2])], |
| 83 | + MakeAliased(input, [alias1, alias2])); |
79 | 84 |
|
80 | 85 | [Theory, RepeatData] |
81 | | - public void Merge_ThreeAstsOneAlias_ReturnsExpected(string name1, string name2, string alias) |
| 86 | + public void Merge_ThreeAstsOneAlias_ReturnsExpected(TInput input1, TInput input2, string alias) |
82 | 87 | => this |
83 | 88 | .SkipIf(SkipDifferentInput) |
84 | | - .SkipEqual(name1, name2) |
| 89 | + .SkipEqual(input1, input2) |
85 | 90 | .Merge_Expected( |
86 | | - [MakeAliased(name1, []), MakeAliased(name2, []), MakeAliased(name1, [alias])], |
87 | | - MakeAliased(name1, [alias]), MakeAliased(name2, [])); |
| 91 | + [MakeAliased(input1, []), MakeAliased(input2, []), MakeAliased(input1, [alias])], |
| 92 | + MakeAliased(input1, [alias]), MakeAliased(input2, [])); |
88 | 93 |
|
89 | 94 | [Theory, RepeatData] |
90 | | - public void Merge_ThreeAstsDifferentAliases_ReturnsExpected(string name1, string name2, string alias1, string alias2) |
| 95 | + public void Merge_ThreeAstsDifferentAliases_ReturnsExpected(TInput input1, TInput input2, string alias1, string alias2) |
91 | 96 | => this |
92 | 97 | .SkipIf(SkipDifferentInput) |
93 | | - .SkipEqual(name1, name2) |
| 98 | + .SkipEqual(input1, input2) |
94 | 99 | .SkipEqual(alias1, alias2) |
95 | 100 | .Merge_Expected( |
96 | | - [MakeAliased(name1, []), MakeAliased(name2, [alias1]), MakeAliased(name1, [alias2])], |
97 | | - MakeAliased(name1, [alias2]), MakeAliased(name2, [alias1])); |
| 101 | + [MakeAliased(input1, []), MakeAliased(input2, [alias1]), MakeAliased(input1, [alias2])], |
| 102 | + MakeAliased(input1, [alias2]), MakeAliased(input2, [alias1])); |
98 | 103 |
|
99 | 104 | [Theory, RepeatData] |
100 | | - public void Merge_ThreeAstsTwoAliases_ReturnsExpected(string name1, string name2, string alias1, string alias2) |
| 105 | + public void Merge_ThreeAstsTwoAliases_ReturnsExpected(TInput input1, TInput input2, string alias1, string alias2) |
101 | 106 | => this |
102 | 107 | .SkipIf(SkipDifferentInput) |
103 | | - .SkipEqual(name1, name2) |
| 108 | + .SkipEqual(input1, input2) |
104 | 109 | .SkipEqual(alias1, alias2) |
105 | 110 | .Merge_Expected( |
106 | | - [MakeAliased(name1, [alias1]), MakeAliased(name2, []), MakeAliased(name1, [alias2])], |
107 | | - MakeAliased(name1, [alias1, alias2]), MakeAliased(name2, [])); |
| 111 | + [MakeAliased(input1, [alias1]), MakeAliased(input2, []), MakeAliased(input1, [alias2])], |
| 112 | + MakeAliased(input1, [alias1, alias2]), MakeAliased(input2, [])); |
108 | 113 |
|
109 | | - protected abstract TAst MakeAliased(string name, string[] aliases, string description = ""); |
110 | | - protected override TAst MakeDescribed(string name, string description = "") |
111 | | - => MakeAliased(name, [], description); |
| 114 | + protected abstract TAst MakeAliased(TInput input, string[] aliases, string description = ""); |
| 115 | + protected override TAst MakeDescribed(TInput input, string description = "") |
| 116 | + => MakeAliased(input, [], description); |
112 | 117 | } |
0 commit comments