summaryrefslogtreecommitdiff
path: root/tests/Test/DirectiveSpec.hs
AgeCommit message (Collapse)Author
2020-10-07Collect types once the schema is createdEugen Wissner
2020-09-28Validate arguments are definedEugen Wissner
2020-09-04Collect types from the subscription rootEugen Wissner
2020-07-19Return a stream as well from graphql* functionsEugen Wissner
2020-07-15Respect subscriptions in the executorEugen Wissner
After the last commit there were a few places needed to be adjusted to support subscriptions. This is done and a test case is added. It is important to implement subscriptions now, because they require changes to the library API, and they are a big missing part to finish the executor. When the executor is finished, we can start to provide more stable API without breaking everything every release. Validation and introspection shouldn't require much changes to the API; AST would require some changes to report good errors after the validation - this is one thing I can think of. Fixes #5.
2020-07-14Support subscriptionsEugen Wissner
This is experimental support. The implementation is based on conduit and is boring. There is a new resolver data constructor that should create a source event stream. The executor receives the events, pipes them through the normal execution and puts them into the response stream which is returned to the user. - Tests are missing. - The executor should check field value resolver on subscription types. - The graphql function should probably return (Either ResponseEventStream Response), but I'm not sure about this. It will make the usage more complicated if no subscriptions are involved, but with the current API implementing subscriptions is more difficult than it should be.
2020-06-29Combine Resolver and ActionT in ResolverTEugen Wissner
2020-06-19Fix list input coercionEugen Wissner
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-13Accept resolvers given by the user as isEugen Wissner
2020-05-10Separate Query and Mutation resolversEugen Wissner
Fixes #33 .
2019-12-06Support directives (skip and include)Eugen Wissner
Fixes #24.