diff options
| author | Eugen Wissner <belka@caraus.de> | 2020-05-13 16:21:48 +0200 |
|---|---|---|
| committer | Eugen Wissner <belka@caraus.de> | 2020-05-13 16:21:48 +0200 |
| commit | 4c19c88e98bea77ebccc786cd55b30e23ab6e897 (patch) | |
| tree | 0c4e745ecbed1914852a5dad109687ddf5f9229f /tests/Language | |
| parent | 9232e08eb96ff6613ee6987d746d530bf2b8e6b2 (diff) | |
| download | graphql-4c19c88e98bea77ebccc786cd55b30e23ab6e897.tar.gz | |
Accept resolvers given by the user as is
Diffstat (limited to 'tests/Language')
| -rw-r--r-- | tests/Language/GraphQL/SchemaSpec.hs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/Language/GraphQL/SchemaSpec.hs b/tests/Language/GraphQL/SchemaSpec.hs new file mode 100644 index 0000000..6804150 --- /dev/null +++ b/tests/Language/GraphQL/SchemaSpec.hs @@ -0,0 +1,31 @@ +{-# LANGUAGE OverloadedStrings #-} +module Language.GraphQL.SchemaSpec + ( spec + ) where + +import qualified Data.Aeson as Aeson +import qualified Data.Aeson.Types as Aeson +import qualified Data.Sequence as Sequence +import Data.Text (Text) +import Language.GraphQL.AST.Core +import Language.GraphQL.Error +import Language.GraphQL.Schema +import Test.Hspec (Spec, describe, it, shouldBe) + +spec :: Spec +spec = + describe "resolve" $ + it "ignores invalid __typename" $ do + let resolver = object "__typename" $ pure + [ scalar "field" $ pure ("T" :: Text) + ] + schema = resolversToMap [resolver] + fields = Sequence.singleton + $ SelectionFragment + $ Fragment "T" Sequence.empty + expected = Aeson.object + [ ("data" , Aeson.emptyObject) + ] + + actual <- runCollectErrs (resolve schema fields) + actual `shouldBe` expected |
