summaryrefslogtreecommitdiff
path: root/tests/Test/StarWars/Schema.hs
AgeCommit message (Collapse)Author
2020-06-19Fix list input coercionEugen Wissner
2020-06-13Coerce resultEugen Wissner
Fixes #45.
2020-06-07Add description to the enum type valuesEugen Wissner
2020-06-06Coerce argument values properlyEugen Wissner
Fixes #44.
2020-06-03Resolve abstract typesEugen Wissner
Objects that can be a part of an union or interface should return __typename as string.
2020-05-29Define resolvers on type fieldsEugen Wissner
Returning resolvers from other resolvers isn't supported anymore. Since we have a type system now, we define the resolvers in the object type fields and pass an object with the previous result to them.
2020-05-26Add Union and Interface type definitionsEugen Wissner
2020-05-25Split input/output types and values into 2 modulesEugen Wissner
2020-05-24Check pointEugen Wissner
2020-05-23Don't fail on invalid fragments and variablesEugen Wissner
2020-05-21Coerce variable valuesEugen Wissner
2020-05-14Add basic output object type supportEugen Wissner
2020-05-10Separate Query and Mutation resolversEugen Wissner
Fixes #33 .
2020-02-01Replace MonadIO constraint with just MonadEugen Wissner
And make the tests use Identity instead of IO.
2019-12-31Retrieve resolver arguments from the readerEugen Wissner
2019-11-03Move related modules to Language.GraphQL.ASTEugen Wissner
Fixes #18. - `Language.GraphQL.Encoder` moved to `Language.GraphQL.AST.Encoder`. - `Language.GraphQL.Parser` moved to `Language.GraphQL.AST.Parser`. - `Language.GraphQL.Lexer` moved to `Language.GraphQL.AST.Lexer`. - All `Language.GraphQL.AST.Value` data constructor prefixes were removed. The module should be imported qualified. - All `Language.GraphQL.AST.Core.Value` data constructor prefixes were removed. The module should be imported qualified. - `Language.GraphQL.AST.Transform` is now isn't exposed publically anymore.
2019-09-01Deprecate enum, enumA, wrappedEnum, wrappedEnumAEugen Wissner
These functions are from Language.GraphQL.Schema. There are actually only two generic types in GraphQL: Scalars and objects. Enum is a scalar value. According to the specification enums may be serailized to strings. And in the current implementation they used untyped strings anyway, so there is no point to have differently named functions with the same implementation as their scalar counterparts.
2019-08-30Deprecate Language.GraphQL.Execute.SchemaEugen Wissner
It is not a schema (at least not a complete one), but a resolver list, and the resolvers should be provided by the user separately, because the schema can originate from a GraphQL document. Schema name should be free to provide a data type for the real schema later.
2019-07-14Make all exports explicitEugen Wissner
2019-07-08Constrain the resolvers with MonadIOEugen Wissner
This replaces the most usages of MonadPlus, which is not appropriate for the resolvers, since a resolver is unambiguously chosen by the name (no need for 'mplus'), and the resolvers are often doing IO.
2019-07-07Change the main namespace to Language.GraphQLEugen Wissner
2019-07-05Allow resolvers to return arbitrary nested listsEugen Wissner
2019-07-03Add nullable typesEugen Wissner
2019-07-02Introduce monad transformer for resolversEugen Wissner
Now the errors in the resolvers can be handled and 3 tests throwing errors pass now. Another test fail but it requires distinguisching nullable and non-nullable values.
2019-06-28Replace Alternative with MonadPlusEugen Wissner
2017-03-01Implement type instrospection testsDanny Navarro
The main intention with this commit is to show a poor's man way to support type instrospection.
2017-01-30Define Schema using Core ASTDanny Navarro
Also, temporarily remove error reporting to simplify execution. This should be restored once the new execution model is nailed.
2017-01-28Split AST in 2Danny Navarro
One AST is meant to be a target parser and tries to adhere as much as possible to the spec. The other is a simplified version of that AST meant for execution. Also newtypes have been replaced by type synonyms and NonEmpty lists are being used where it makes sense.
2016-12-18Add homePlanet to test schemaDanny Navarro
2016-07-08add tests for errors in queries for queries in starwars testsPweaver (Paul Weaver)
2016-02-22Remove `StringValue` typeDanny Navarro
2016-02-19Simplify Schema definition APIDanny Navarro
Now there is one `Resolver` type and the `Output` and `Scalar` types have been removed. This should be closer to the final Schema definition API.
2016-02-18Overhaul Schema DSLDanny Navarro
Aside of making the definition of Schemas easier, it takes care of issues like nested aliases which previously wasn't possible. The naming of the DSL functions is still provisional.
2016-02-12Split StarWars tests in different modulesDanny Navarro