public void TestVariableObject_InvalidType(string param) { var error1 = new ValidationError(null, VariablesAreInputTypesError.NUMBER, VariablesAreInputTypesError.UndefinedVarMessage("arg", "abcdefg")) { Code = "VARIABLES_ARE_INPUT_TYPES" }; error1.AddLocation(1, 7); var error2 = new ValidationError(null, KnownTypeNamesError.NUMBER, KnownTypeNamesError.UnknownTypeMessage("abcdefg", null)) { Code = "KNOWN_TYPE_NAMES" }; error2.AddLocation(1, 13); var error3 = new ValidationError(null, "5.8", "Variable \u0027$arg\u0027 is invalid. Variable has unknown type \u0027abcdefg\u0027") { Code = "INVALID_VALUE" }; error3.AddLocation(1, 7); var expected = CreateQueryResult(null, new ExecutionErrors { error1, error2, error3 }, executed: false); AssertQueryIgnoreErrors("query($arg: abcdefg) { test1 (arg: $arg) }", expected, inputs: $"{{ \"arg\": {param} }}".ToInputs(), expectedErrorCount: 3, renderErrors: true); }
public void unknown_type_names_are_invalid() { ShouldFailRule(_ => { _.Query = @" query Foo($var: JumbledUpLetters) { user(id: 4) { name pets { ... on Badger { name }, ...PetFields } } } fragment PetFields on Peettt { name } "; _.Error(KnownTypeNamesError.UnknownTypeMessage("JumbledUpLetters", null), 2, 35); _.Error(KnownTypeNamesError.UnknownTypeMessage("Badger", null), 5, 37); _.Error(KnownTypeNamesError.UnknownTypeMessage("Peettt", new[] { "Pet" }), 8, 41); }); }
public void unknown_nonnull_type_name_is_invalid() { ShouldFailRule(_ => { _.Query = @" query Foo($var: Abcd!) { user(id: 4) { pets { ... on Pet { name }, ...PetFields } } } fragment PetFields on Pet { name }"; _.Error(KnownTypeNamesError.UnknownTypeMessage("Abcd", null), 2, 37); _.Error("Variable '$var' is invalid. Variable has unknown type 'Abcd'", 2, 31); }); }