public void StringList() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Parser.Default.Parse(@" { stringList } "); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void VariableUsedInListInput() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Parser.Default.Parse(@" query queryWithListInput($value: Bool) { booleanList(booleanListArg: [ $value ]) }"); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void SkipDirectiveIsInTheRightPlace() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Utf8GraphQLParser.Parse(@" query a { field @skip(if: $foo) } "); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void AllInputObjectFieldsExist() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Parser.Default.Parse(@" { findDog(complex: { name: ""Fido"" }) } "); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void NoFieldAmbiguity() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Parser.Default.Parse(@" { findDog(complex: { name: ""A"", owner: ""B"" }) } "); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void NestedRequiredFieldsHaveValidValue() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Utf8GraphQLParser.Parse(@" { findDog2(complex: { name: ""Foo"" child: { name: ""123"" } }) } "); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void ArgOnOptional() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Parser.Default.Parse(@" fragment argOnOptional on Dog { isHousetrained(atOtherHomes: true) @include(if: true) } "); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void ArgOnRequiredArg() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Parser.Default.Parse(@" fragment argOnRequiredArg on Dog { doesKnowCommand(dogCommand: SIT) } "); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void InterfaceFieldSelectionOnPet() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Parser.Default.Parse(@" fragment interfaceFieldSelection on Pet { name } "); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void IntrospectionFieldsOnObject() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Utf8GraphQLParser.Parse(@" fragment interfaceFieldSelection on Cat { __typename } "); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void GoodBooleanArgDefault() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Parser.Default.Parse(@" fragment goodBooleanArgDefault on Arguments { booleanArgField } "); // act var validator = new RequiredArgumentRule(); QueryValidationResult result = validator.Validate(schema, query); // assert Assert.False(result.HasErrors); }
public void VariableUsedInComplexInput() { // arrange Schema schema = ValidationUtils.CreateSchema(); DocumentNode query = Parser.Default.Parse(@" query queryWithComplexInput($name: String) { findDog(complex: { name: $name }) { name } }"); // act QueryValidationResult result = Rule.Validate(schema, query); // assert Assert.False(result.HasErrors); }