| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -145,6 +145,11 @@ public Builder directives(List<Directive> directives) { | |||
| 145 | 145 | return this; | |
| 146 | 146 | } | |
| 147 | 147 | ||
| 148 | + public Builder directive(Directive directive) { | ||
| 149 | + this.directives.add(directive); | ||
| 150 | + return this; | ||
| 151 | + } | ||
| 152 | + | ||
| 148 | 153 | public EnumTypeDefinition build() { | |
| 149 | 154 | EnumTypeDefinition enumTypeDefinition = new EnumTypeDefinition(name, enumValueDefinitions, directives, description, sourceLocation, comments); | |
| 150 | 155 | return enumTypeDefinition; | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -158,6 +158,11 @@ public Builder directives(List<Directive> directives) { | |||
| 158 | 158 | return this; | |
| 159 | 159 | } | |
| 160 | 160 | ||
| 161 | + public Builder directive(Directive directive) { | ||
| 162 | + this.directives.add(directive); | ||
| 163 | + return this; | ||
| 164 | + } | ||
| 165 | + | ||
| 161 | 166 | public Builder fieldDefinitions(List<FieldDefinition> fieldDefinitions) { | |
| 162 | 167 | this.fieldDefinitions = fieldDefinitions; | |
| 163 | 168 | return this; | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -160,20 +160,17 @@ TWO @second, | |||
| 160 | 160 | """ | |
| 161 | 161 | ||
| 162 | 162 | and: "expected schema" | |
| 163 | - def enumSchema = new EnumTypeDefinition("EnumName") | ||
| 164 | - enumSchema.getDirectives() | ||
| 165 | - .add(new Directive("enumDirective", [new Argument("a1", new VariableReference("v1"))])) | ||
| 166 | - enumSchema.getEnumValueDefinitions() | ||
| 167 | - .add(new EnumValueDefinition("ONE", [new Directive("first")])) | ||
| 168 | - enumSchema.getEnumValueDefinitions() | ||
| 169 | - .add(new EnumValueDefinition("TWO", [new Directive("second")])) | ||
| 163 | + def enumSchema = EnumTypeDefinition.newEnumTypeDefinition().name("EnumName") | ||
| 164 | + enumSchema.directive(new Directive("enumDirective", [new Argument("a1", new VariableReference("v1"))])) | ||
| 165 | + enumSchema.enumValueDefinition(new EnumValueDefinition("ONE", [new Directive("first")])) | ||
| 166 | + enumSchema.enumValueDefinition(new EnumValueDefinition("TWO", [new Directive("second")])) | ||
| 170 | 167 | ||
| 171 | 168 | when: | |
| 172 | 169 | def document = new Parser().parseDocument(input) | |
| 173 | 170 | ||
| 174 | 171 | then: | |
| 175 | 172 | document.definitions.size() == 1 | |
| 176 | - isEqual(document.definitions[0], enumSchema) | ||
| 173 | + isEqual(document.definitions[0], enumSchema.build()) | ||
| 177 | 174 | } | |
| 178 | 175 | ||
| 179 | 176 | def "object schema"() { | |
@@ -187,34 +184,32 @@ cmd(arg1:[Number]=[1] arg2:String @secondArg(cool:true)): Function | |||
| 187 | 184 | """ | |
| 188 | 185 | ||
| 189 | 186 | and: "expected schema" | |
| 190 | - def objSchema = new ObjectTypeDefinition("TypeName") | ||
| 191 | - objSchema.getImplements().add(new TypeName("Impl1")) | ||
| 192 | - objSchema.getImplements().add(new TypeName("Impl2")) | ||
| 193 | - objSchema.getDirectives() | ||
| 194 | - .add(new Directive("typeDirective", [new Argument("a1", new VariableReference("v1"))])) | ||
| 195 | - objSchema.getFieldDefinitions() | ||
| 196 | - .add(new FieldDefinition("one", new TypeName("Number"))) | ||
| 197 | - def two = new FieldDefinition("two", new TypeName("Number")) | ||
| 198 | - two.getDirectives().add(new Directive("second")) | ||
| 199 | - objSchema.getFieldDefinitions().add(two) | ||
| 200 | - | ||
| 201 | - def cmdField = new FieldDefinition("cmd", new TypeName("Function")) | ||
| 202 | - cmdField.getInputValueDefinitions() | ||
| 203 | - .add(new InputValueDefinition("arg1", | ||
| 187 | + def objSchema = ObjectTypeDefinition.newObjectTypeDefinition().name("TypeName") | ||
| 188 | + objSchema.implementz(new TypeName("Impl1")) | ||
| 189 | + objSchema.implementz(new TypeName("Impl2")) | ||
| 190 | + objSchema.directive(new Directive("typeDirective", [new Argument("a1", new VariableReference("v1"))])) | ||
| 191 | + objSchema.fieldDefinition(new FieldDefinition("one", new TypeName("Number"))) | ||
| 192 | + | ||
| 193 | + def two = FieldDefinition.newFieldDefintion().name("two").type(new TypeName("Number")) | ||
| 194 | + two.directive(new Directive("second")) | ||
| 195 | + objSchema.fieldDefinition(two.build()) | ||
| 196 | + | ||
| 197 | + def cmdField = FieldDefinition.newFieldDefintion().name("cmd").type(new TypeName("Function")) | ||
| 198 | + cmdField.inputValueDefinition(new InputValueDefinition("arg1", | ||
| 204 | 199 | new ListType(new TypeName("Number")), | |
| 205 | 200 | new ArrayValue([new IntValue(1)]))) | |
| 206 | - def arg2 = new InputValueDefinition("arg2", new TypeName("String")) | ||
| 207 | - arg2.getDirectives() | ||
| 208 | - .add(new Directive("secondArg", [new Argument("cool", new BooleanValue(true))])) | ||
| 209 | - cmdField.getInputValueDefinitions().add(arg2) | ||
| 210 | - objSchema.getFieldDefinitions().add(cmdField) | ||
| 201 | + def arg2 = InputValueDefinition.newInputValueDefinition().name("arg2").type(new TypeName("String")) | ||
| 202 | + arg2.directive(new Directive("secondArg", [new Argument("cool", new BooleanValue(true))])) | ||
| 203 | + cmdField.inputValueDefinition(arg2.build()) | ||
| 204 | + | ||
| 205 | + objSchema.fieldDefinition(cmdField.build()) | ||
| 211 | 206 | ||
| 212 | 207 | when: | |
| 213 | 208 | def document = new Parser().parseDocument(input) | |
| 214 | 209 | ||
| 215 | 210 | then: | |
| 216 | 211 | document.definitions.size() == 1 | |
| 217 | - isEqual(document.definitions[0], objSchema) | ||
| 212 | + isEqual(document.definitions[0], objSchema.build()) | ||
| 218 | 213 | } | |
| 219 | 214 | ||
| 220 | 215 | def "scalar schema"() { | |
| Back | FazBrowse Home | New Git URL |
0 commit comments