summaryrefslogtreecommitdiff
path: root/tests/Test
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2020-09-28 07:06:15 +0200
committerEugen Wissner <belka@caraus.de>2020-09-28 07:06:15 +0200
commit4602eb1df3a713989b155f0140ff8909eb0370cf (patch)
tree6c82cab7436516ba79e2c13454e9f47ecd2ec4b4 /tests/Test
parentced9b815db516ac4196856c535eedca85f4a1935 (diff)
downloadgraphql-4602eb1df3a713989b155f0140ff8909eb0370cf.tar.gz
Validate arguments are defined
Diffstat (limited to 'tests/Test')
-rw-r--r--tests/Test/DirectiveSpec.hs3
-rw-r--r--tests/Test/FragmentSpec.hs3
-rw-r--r--tests/Test/RootOperationSpec.hs9
-rw-r--r--tests/Test/StarWars/QuerySpec.hs4
-rw-r--r--tests/Test/StarWars/Schema.hs10
5 files changed, 12 insertions, 17 deletions
diff --git a/tests/Test/DirectiveSpec.hs b/tests/Test/DirectiveSpec.hs
index 800189e..c115163 100644
--- a/tests/Test/DirectiveSpec.hs
+++ b/tests/Test/DirectiveSpec.hs
@@ -19,8 +19,7 @@ import Test.Hspec.GraphQL
import Text.RawString.QQ (r)
experimentalResolver :: Schema IO
-experimentalResolver = Schema
- { query = queryType, mutation = Nothing, subscription = Nothing }
+experimentalResolver = schema queryType
where
queryType = Out.ObjectType "Query" Nothing []
$ HashMap.singleton "experimentalField"
diff --git a/tests/Test/FragmentSpec.hs b/tests/Test/FragmentSpec.hs
index 8ee1ad2..4fecad8 100644
--- a/tests/Test/FragmentSpec.hs
+++ b/tests/Test/FragmentSpec.hs
@@ -67,8 +67,7 @@ sizeFieldType
$ pure $ snd size
toSchema :: Text -> (Text, Value) -> Schema IO
-toSchema t (_, resolve) = Schema
- { query = queryType, mutation = Nothing, subscription = Nothing }
+toSchema t (_, resolve) = schema queryType
where
garmentType = Out.UnionType "Garment" Nothing [hatType, shirtType]
typeNameField = Out.Field Nothing (Out.NamedScalarType string) mempty
diff --git a/tests/Test/RootOperationSpec.hs b/tests/Test/RootOperationSpec.hs
index ea89279..33b5d3b 100644
--- a/tests/Test/RootOperationSpec.hs
+++ b/tests/Test/RootOperationSpec.hs
@@ -23,11 +23,12 @@ hatType = Out.ObjectType "Hat" Nothing []
$ ValueResolver (Out.Field Nothing (Out.NamedScalarType int) mempty)
$ pure $ Int 60
-schema :: Schema IO
-schema = Schema
+garmentSchema :: Schema IO
+garmentSchema = Schema
{ query = Out.ObjectType "Query" Nothing [] hatFieldResolver
, mutation = Just $ Out.ObjectType "Mutation" Nothing [] incrementFieldResolver
, subscription = Nothing
+ , directives = HashMap.empty
}
where
garment = pure $ Object $ HashMap.fromList
@@ -57,7 +58,7 @@ spec =
[ "circumference" .= (60 :: Int)
]
]
- actual <- graphql schema querySource
+ actual <- graphql garmentSchema querySource
actual `shouldResolveTo` expected
it "chooses Mutation" $ do
@@ -70,5 +71,5 @@ spec =
$ object
[ "incrementCircumference" .= (61 :: Int)
]
- actual <- graphql schema querySource
+ actual <- graphql garmentSchema querySource
actual `shouldResolveTo` expected
diff --git a/tests/Test/StarWars/QuerySpec.hs b/tests/Test/StarWars/QuerySpec.hs
index 8d744ab..f9b13d9 100644
--- a/tests/Test/StarWars/QuerySpec.hs
+++ b/tests/Test/StarWars/QuerySpec.hs
@@ -357,10 +357,10 @@ spec = describe "Star Wars Query Tests" $ do
testQuery :: Text -> Aeson.Value -> Expectation
testQuery q expected =
- let Right (Right actual) = graphql schema q
+ let Right (Right actual) = graphql starWarsSchema q
in Aeson.Object actual `shouldBe` expected
testQueryParams :: Aeson.Object -> Text -> Aeson.Value -> Expectation
testQueryParams f q expected =
- let Right (Right actual) = graphqlSubs schema Nothing f q
+ let Right (Right actual) = graphqlSubs starWarsSchema Nothing f q
in Aeson.Object actual `shouldBe` expected
diff --git a/tests/Test/StarWars/Schema.hs b/tests/Test/StarWars/Schema.hs
index 34a6a35..706d9b3 100644
--- a/tests/Test/StarWars/Schema.hs
+++ b/tests/Test/StarWars/Schema.hs
@@ -1,7 +1,7 @@
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE ScopedTypeVariables #-}
module Test.StarWars.Schema
- ( schema
+ ( starWarsSchema
) where
import Control.Monad.Catch (MonadThrow(..), SomeException)
@@ -17,12 +17,8 @@ import Prelude hiding (id)
-- See https://github.com/graphql/graphql-js/blob/master/src/__tests__/starWarsSchema.js
-schema :: Schema (Either SomeException)
-schema = Schema
- { query = queryType
- , mutation = Nothing
- , subscription = Nothing
- }
+starWarsSchema :: Schema (Either SomeException)
+starWarsSchema = schema queryType
where
queryType = Out.ObjectType "Query" Nothing [] $ HashMap.fromList
[ ("hero", heroFieldResolver)