morpheus-graphql 0.25.0 → 0.26.0
raw patch · 32 files changed
+11/−656 lines, 32 filesdep ~morpheus-graphql-appdep ~morpheus-graphql-code-gendep ~morpheus-graphql-corePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: morpheus-graphql-app, morpheus-graphql-code-gen, morpheus-graphql-core, morpheus-graphql-server, morpheus-graphql-subscriptions, morpheus-graphql-tests
API changes (from Hackage documentation)
- Data.Morpheus.NamedResolvers: [Ref] :: forall (m :: Type -> Type) a. ResolveNamed m a => m (Dep a) -> NamedResolverT m a
+ Data.Morpheus.NamedResolvers: [Ref] :: forall (m :: Type -> Type) a. ResolveNamed m (Target a) => m (Dependency a) -> NamedResolverT m a
- Data.Morpheus.NamedResolvers: [Refs] :: forall (m :: Type -> Type) a1. ResolveNamed m a1 => m [Dep a1] -> NamedResolverT m [a1]
+ Data.Morpheus.NamedResolvers: [Refs] :: forall (m :: Type -> Type) a1. ResolveNamed m (Target a1) => m [Dependency a1] -> NamedResolverT m [a1]
- Data.Morpheus.NamedResolvers: class ToJSON Dep a => ResolveNamed (m :: Type -> Type) a where {
+ Data.Morpheus.NamedResolvers: class ToJSON Dependency a => ResolveNamed (m :: Type -> Type) a where {
- Data.Morpheus.NamedResolvers: resolve :: forall m a b. (ResolveByType (RES_TYPE a b) m a b, Monad m) => m a -> NamedResolverT m b
+ Data.Morpheus.NamedResolvers: resolve :: forall m a b. (ResolveRef (NamedResolverTarget b) m a b, Monad m) => m a -> NamedResolverT m b
- Data.Morpheus.NamedResolvers: resolveBatched :: ResolveNamed m a => [Dep a] -> m [Maybe a]
+ Data.Morpheus.NamedResolvers: resolveBatched :: ResolveNamed m a => [Dependency a] -> m [Maybe a]
- Data.Morpheus.NamedResolvers: resolveNamed :: ResolveNamed m a => Dep a -> m a
+ Data.Morpheus.NamedResolvers: resolveNamed :: ResolveNamed m a => Dependency a -> m a
- Data.Morpheus.NamedResolvers: useBatched :: (ResolveNamed m a, MonadError GQLError m) => Dep a -> m a
+ Data.Morpheus.NamedResolvers: useBatched :: (ResolveNamed m a, MonadError GQLError m) => Dependency a -> m a
Files
- morpheus-graphql.cabal +11/−41
- test/Feature/NamedResolvers/API.hs +0/−15
- test/Feature/NamedResolvers/Deities.hs +0/−80
- test/Feature/NamedResolvers/Entities.hs +0/−76
- test/Feature/NamedResolvers/Realms.hs +0/−87
- test/Feature/NamedResolvers/deities.gql +0/−14
- test/Feature/NamedResolvers/realms.gql +0/−13
- test/Feature/NamedResolvers/tests/deities-ext/query.gql +0/−9
- test/Feature/NamedResolvers/tests/deities-ext/response.json +0/−20
- test/Feature/NamedResolvers/tests/deities/query.gql +0/−6
- test/Feature/NamedResolvers/tests/deities/response.json +0/−14
- test/Feature/NamedResolvers/tests/deity-by-id/query.gql +0/−6
- test/Feature/NamedResolvers/tests/deity-by-id/response.json +0/−8
- test/Feature/NamedResolvers/tests/deity-ext-by-id/query.gql +0/−9
- test/Feature/NamedResolvers/tests/deity-ext-by-id/response.json +0/−9
- test/Feature/NamedResolvers/tests/deity-simple/query.gql +0/−6
- test/Feature/NamedResolvers/tests/deity-simple/response.json +0/−5
- test/Feature/NamedResolvers/tests/entities/query.gql +0/−23
- test/Feature/NamedResolvers/tests/entities/response.json +0/−37
- test/Feature/NamedResolvers/tests/entity-by-id/query.gql +0/−18
- test/Feature/NamedResolvers/tests/entity-by-id/response.json +0/−16
- test/Feature/NamedResolvers/tests/entity-ext-by-id/query.gql +0/−24
- test/Feature/NamedResolvers/tests/entity-ext-by-id/response.json +0/−20
- test/Feature/NamedResolvers/tests/realm-by-id/query.gql +0/−5
- test/Feature/NamedResolvers/tests/realm-by-id/response.json +0/−7
- test/Feature/NamedResolvers/tests/realm-ext-by-id/query.gql +0/−15
- test/Feature/NamedResolvers/tests/realm-ext-by-id/response.json +0/−15
- test/Feature/NamedResolvers/tests/realm-simple/query.gql +0/−5
- test/Feature/NamedResolvers/tests/realm-simple/response.json +0/−5
- test/Feature/NamedResolvers/tests/realms/query.gql +0/−15
- test/Feature/NamedResolvers/tests/realms/response.json +0/−28
- test/Spec.hs +0/−5
morpheus-graphql.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack name: morpheus-graphql-version: 0.25.0+version: 0.26.0 synopsis: Morpheus GraphQL description: Build GraphQL APIs with your favourite functional language! category: web, graphql@@ -115,20 +115,6 @@ test/Feature/Input/default-values/intorspection/input-simple/query.gql test/Feature/Input/default-values/resolving/compound/query.gql test/Feature/Input/default-values/resolving/simple/query.gql- test/Feature/NamedResolvers/deities.gql- test/Feature/NamedResolvers/realms.gql- test/Feature/NamedResolvers/tests/deities-ext/query.gql- test/Feature/NamedResolvers/tests/deities/query.gql- test/Feature/NamedResolvers/tests/deity-by-id/query.gql- test/Feature/NamedResolvers/tests/deity-ext-by-id/query.gql- test/Feature/NamedResolvers/tests/deity-simple/query.gql- test/Feature/NamedResolvers/tests/entities/query.gql- test/Feature/NamedResolvers/tests/entity-by-id/query.gql- test/Feature/NamedResolvers/tests/entity-ext-by-id/query.gql- test/Feature/NamedResolvers/tests/realm-by-id/query.gql- test/Feature/NamedResolvers/tests/realm-ext-by-id/query.gql- test/Feature/NamedResolvers/tests/realm-simple/query.gql- test/Feature/NamedResolvers/tests/realms/query.gql test/Rendering/schema.gql test/Subscription/schema.gql test/Feature/Holistic/holistic/arguments/nameConflict/response.json@@ -224,18 +210,6 @@ test/Feature/Input/default-values/intorspection/input-simple/response.json test/Feature/Input/default-values/resolving/compound/response.json test/Feature/Input/default-values/resolving/simple/response.json- test/Feature/NamedResolvers/tests/deities-ext/response.json- test/Feature/NamedResolvers/tests/deities/response.json- test/Feature/NamedResolvers/tests/deity-by-id/response.json- test/Feature/NamedResolvers/tests/deity-ext-by-id/response.json- test/Feature/NamedResolvers/tests/deity-simple/response.json- test/Feature/NamedResolvers/tests/entities/response.json- test/Feature/NamedResolvers/tests/entity-by-id/response.json- test/Feature/NamedResolvers/tests/entity-ext-by-id/response.json- test/Feature/NamedResolvers/tests/realm-by-id/response.json- test/Feature/NamedResolvers/tests/realm-ext-by-id/response.json- test/Feature/NamedResolvers/tests/realm-simple/response.json- test/Feature/NamedResolvers/tests/realms/response.json source-repository head type: git@@ -258,10 +232,10 @@ , base >=4.7.0 && <5.0.0 , bytestring >=0.10.4 && <0.12.0 , containers >=0.4.2.1 && <0.7.0- , morpheus-graphql-app >=0.25.0 && <0.26.0- , morpheus-graphql-code-gen >=0.25.0 && <0.26.0- , morpheus-graphql-core >=0.25.0 && <0.26.0- , morpheus-graphql-server >=0.25.0 && <0.26.0+ , morpheus-graphql-app >=0.26.0 && <0.27.0+ , morpheus-graphql-code-gen >=0.26.0 && <0.27.0+ , morpheus-graphql-core >=0.26.0 && <0.27.0+ , morpheus-graphql-server >=0.26.0 && <0.27.0 , mtl >=2.0.0 && <3.0.0 , relude >=0.3.0 && <2.0.0 , template-haskell >=2.0.0 && <3.0.0@@ -277,10 +251,6 @@ other-modules: Feature.Holistic.API Feature.Input.DefaultValues- Feature.NamedResolvers.API- Feature.NamedResolvers.Deities- Feature.NamedResolvers.Entities- Feature.NamedResolvers.Realms Rendering.Schema Rendering.TestSchemaRendering Subscription.API@@ -298,12 +268,12 @@ , bytestring >=0.10.4 && <0.12.0 , containers >=0.4.2.1 && <0.7.0 , morpheus-graphql- , morpheus-graphql-app >=0.25.0 && <0.26.0- , morpheus-graphql-code-gen >=0.25.0 && <0.26.0- , morpheus-graphql-core >=0.25.0 && <0.26.0- , morpheus-graphql-server >=0.25.0 && <0.26.0- , morpheus-graphql-subscriptions >=0.25.0 && <0.26.0- , morpheus-graphql-tests >=0.25.0 && <0.26.0+ , morpheus-graphql-app >=0.26.0 && <0.27.0+ , morpheus-graphql-code-gen >=0.26.0 && <0.27.0+ , morpheus-graphql-core >=0.26.0 && <0.27.0+ , morpheus-graphql-server >=0.26.0 && <0.27.0+ , morpheus-graphql-subscriptions >=0.26.0 && <0.27.0+ , morpheus-graphql-tests >=0.26.0 && <0.27.0 , mtl >=2.0.0 && <3.0.0 , relude >=0.3.0 && <2.0.0 , tasty >=0.1.0 && <1.5.0
− test/Feature/NamedResolvers/API.hs
@@ -1,15 +0,0 @@-{-# LANGUAGE NoImplicitPrelude #-}--module Feature.NamedResolvers.API- ( app,- )-where--import Data.Morpheus (App)-import Feature.NamedResolvers.Deities (deitiesApp)-import Feature.NamedResolvers.Entities (entitiesApp)-import Feature.NamedResolvers.Realms (realmsApp)-import Relude--app :: App () IO-app = deitiesApp <> realmsApp <> entitiesApp
− test/Feature/NamedResolvers/Deities.hs
@@ -1,80 +0,0 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE DuplicateRecordFields #-}-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE TemplateHaskell #-}-{-# LANGUAGE TypeFamilies #-}-{-# LANGUAGE NoImplicitPrelude #-}--module Feature.NamedResolvers.Deities- ( deitiesApp,- )-where--import Control.Monad.Except-import Data.Morpheus (deriveApp)-import Data.Morpheus.Document- ( importGQLDocument,- )-import Data.Morpheus.NamedResolvers- ( NamedResolverT,- ResolveNamed (..),- resolve,- useBatched,- )-import Data.Morpheus.Types- ( App,- Arg (..),- GQLError,- ID,- NamedResolvers (..),- Undefined,- )-import Relude hiding (Undefined)--importGQLDocument "test/Feature/NamedResolvers/deities.gql"--getPower :: (Eq a, IsString a, Applicative f) => a -> f Power-getPower "sp" = pure Shapeshifting-getPower _ = pure Thunderbolt--getDeity :: (Eq a, Monad m, Applicative f, IsString a) => a -> f (Maybe (Deity (NamedResolverT m)))-getDeity "zeus" =- pure $- Just- Deity- { name = resolve (pure "Zeus"),- power = resolve (pure ["tb"])- }-getDeity "morpheus" =- pure $- Just- Deity- { name = resolve (pure "Morpheus"),- power = resolve (pure ["sp"])- }-getDeity _ = pure Nothing--instance Monad m => ResolveNamed m Power where- type Dep Power = ID- resolveNamed = getPower--instance MonadError GQLError m => ResolveNamed m (Deity (NamedResolverT m)) where- type Dep (Deity (NamedResolverT m)) = ID- resolveBatched = traverse getDeity- resolveNamed = useBatched--instance MonadError GQLError m => ResolveNamed m (Query (NamedResolverT m)) where- type Dep (Query (NamedResolverT m)) = ()- resolveNamed _ =- pure- Query- { deity = \(Arg uid) -> resolve (pure (Just uid)),- deities = resolve (pure ["zeus", "morpheus"])- }--deitiesApp :: App () IO-deitiesApp = deriveApp (NamedResolvers :: NamedResolvers IO () Query Undefined Undefined)
− test/Feature/NamedResolvers/Entities.hs
@@ -1,76 +0,0 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveAnyClass #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE TypeFamilies #-}--module Feature.NamedResolvers.Entities- ( entitiesApp,- )-where--import Control.Monad.Except-import Data.Morpheus (deriveApp)-import Data.Morpheus.NamedResolvers- ( NamedResolverT,- ResolveNamed (..),- resolve,- )-import Data.Morpheus.Types- ( App,- Arg (..),- GQLError,- GQLType (..),- ID,- NamedResolvers (..),- Undefined,- )-import Feature.NamedResolvers.Realms (Deity, Realm)-import GHC.Generics (Generic)---- Entity-data Entity m- = EntityDeity (m (Deity m))- | EntityRealm (m (Realm m))- deriving- ( Generic,- GQLType- )--getEntity :: (MonadError GQLError m) => ID -> m (Entity (NamedResolverT m))-getEntity "zeus" = pure $ EntityDeity (resolve $ pure "zeus")-getEntity "morpheus" = pure $ EntityDeity (resolve $ pure "morpheus")-getEntity x = pure $ EntityRealm (resolve $ pure x)--instance (MonadError GQLError m) => ResolveNamed m (Entity (NamedResolverT m)) where- type Dep (Entity (NamedResolverT m)) = ID- resolveNamed = getEntity---- QUERY-data Query m = Query- { entities :: m [Entity m],- entity :: Arg "id" ID -> m (Maybe (Entity m))- }- deriving- ( Generic,- GQLType- )--instance MonadError GQLError m => ResolveNamed m (Query (NamedResolverT m)) where- type Dep (Query (NamedResolverT m)) = ()- resolveNamed _ =- pure- Query- { entities = resolve (pure ["zeus", "morpheus", "olympus", "dreams"]),- entity = \(Arg uid) -> resolve (pure (Just uid))- }--entitiesApp :: App () IO-entitiesApp =- deriveApp- ( NamedResolvers ::- NamedResolvers IO () Query Undefined Undefined- )
− test/Feature/NamedResolvers/Realms.hs
@@ -1,87 +0,0 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE DuplicateRecordFields #-}-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE TemplateHaskell #-}-{-# LANGUAGE TypeFamilies #-}--module Feature.NamedResolvers.Realms- ( realmsApp,- Deity,- Realm,- )-where--import Control.Monad.Except-import Data.Morpheus- ( deriveApp,- )-import Data.Morpheus.Document- ( importGQLDocument,- )-import Data.Morpheus.NamedResolvers- ( NamedResolverT,- ResolveNamed (..),- resolve,- useBatched,- )-import Data.Morpheus.Types- ( App,- Arg (..),- GQLError,- ID,- NamedResolvers (..),- Undefined,- )-import Data.Text (Text)--importGQLDocument "test/Feature/NamedResolvers/realms.gql"--getRealm :: (MonadError GQLError m) => ID -> m (Maybe (Realm (NamedResolverT m)))-getRealm "olympus" =- pure $- Just- Realm- { name = resolve (pure "Mount Olympus"),- owner = resolve (pure "zeus")- }-getRealm "dreams" =- pure $- Just- Realm- { name = resolve (pure "Fictional world of dreams"),- owner = resolve (pure "morpheus")- }-getRealm _ = pure Nothing--instance MonadError GQLError m => ResolveNamed m (Realm (NamedResolverT m)) where- type Dep (Realm (NamedResolverT m)) = ID- resolveBatched = traverse getRealm- resolveNamed = useBatched--instance (MonadError GQLError m) => ResolveNamed m (Deity (NamedResolverT m)) where- type Dep (Deity (NamedResolverT m)) = ID- resolveBatched = traverse getDeity- resolveNamed = useBatched--getDeity :: (MonadError GQLError m) => ID -> m (Maybe (Deity (NamedResolverT m)))-getDeity "zeus" = pure $ Just Deity {realm = resolve (pure "olympus")}-getDeity "morpheus" = pure $ Just Deity {realm = resolve (pure "dreams")}-getDeity _ = pure Nothing--instance MonadError GQLError m => ResolveNamed m (Query (NamedResolverT m)) where- type Dep (Query (NamedResolverT m)) = ()- resolveNamed _ =- pure- Query- { realm = \(Arg arg) -> resolve (pure (Just arg)),- realms = resolve (pure ["olympus", "dreams"])- }--realmsApp :: App () IO-realmsApp =- deriveApp- (NamedResolvers :: NamedResolvers IO () Query Undefined Undefined)
− test/Feature/NamedResolvers/deities.gql
@@ -1,14 +0,0 @@-enum Power {- Shapeshifting- Thunderbolt-}--type Deity {- name: String!- power: [Power!]!-}--type Query {- deities: [Deity!]!- deity(id: ID!): Deity-}
− test/Feature/NamedResolvers/realms.gql
@@ -1,13 +0,0 @@-type Realm {- name: String!- owner: Deity!-}--type Deity {- realm: Realm!-}--type Query {- realms: [Realm!]!- realm(id: ID!): Realm-}
− test/Feature/NamedResolvers/tests/deities-ext/query.gql
@@ -1,9 +0,0 @@-query {- deities {- name- power- realm {- name- }- }-}
− test/Feature/NamedResolvers/tests/deities-ext/response.json
@@ -1,20 +0,0 @@-{- "data": {- "deities": [- {- "name": "Zeus",- "realm": {- "name": "Mount Olympus"- },- "power": ["Thunderbolt"]- },- {- "name": "Morpheus",- "realm": {- "name": "Fictional world of dreams"- },- "power": ["Shapeshifting"]- }- ]- }-}
− test/Feature/NamedResolvers/tests/deities/query.gql
@@ -1,6 +0,0 @@-query {- deities {- name- power- }-}
− test/Feature/NamedResolvers/tests/deities/response.json
@@ -1,14 +0,0 @@-{- "data": {- "deities": [- {- "name": "Zeus",- "power": ["Thunderbolt"]- },- {- "name": "Morpheus",- "power": ["Shapeshifting"]- }- ]- }-}
− test/Feature/NamedResolvers/tests/deity-by-id/query.gql
@@ -1,6 +0,0 @@-query {- deity(id: "zeus") {- name- power- }-}
− test/Feature/NamedResolvers/tests/deity-by-id/response.json
@@ -1,8 +0,0 @@-{- "data": {- "deity": {- "name": "Zeus",- "power": ["Thunderbolt"]- }- }-}
− test/Feature/NamedResolvers/tests/deity-ext-by-id/query.gql
@@ -1,9 +0,0 @@-query {- deity(id: "zeus") {- name- power- realm {- name- }- }-}
− test/Feature/NamedResolvers/tests/deity-ext-by-id/response.json
@@ -1,9 +0,0 @@-{- "data": {- "deity": {- "name": "Zeus",- "realm": { "name": "Mount Olympus" },- "power": ["Thunderbolt"]- }- }-}
− test/Feature/NamedResolvers/tests/deity-simple/query.gql
@@ -1,6 +0,0 @@-query {- deity(id: "") {- name- power- }-}
− test/Feature/NamedResolvers/tests/deity-simple/response.json
@@ -1,5 +0,0 @@-{- "data": {- "deity": null- }-}
− test/Feature/NamedResolvers/tests/entities/query.gql
@@ -1,23 +0,0 @@-query {- entities {- ... on Realm {- __typename- name- owner {- name- power- realm {- name- owner {- name- }- }- }- }- ... on Deity {- __typename- name- power- }- }-}
− test/Feature/NamedResolvers/tests/entities/response.json
@@ -1,37 +0,0 @@-{- "data": {- "entities": [- {- "name": "Zeus",- "__typename": "Deity",- "power": ["Thunderbolt"]- },- {- "name": "Morpheus",- "__typename": "Deity",- "power": ["Shapeshifting"]- },- {- "owner": {- "name": "Zeus",- "realm": { "owner": { "name": "Zeus" }, "name": "Mount Olympus" },- "power": ["Thunderbolt"]- },- "name": "Mount Olympus",- "__typename": "Realm"- },- {- "owner": {- "name": "Morpheus",- "realm": {- "owner": { "name": "Morpheus" },- "name": "Fictional world of dreams"- },- "power": ["Shapeshifting"]- },- "name": "Fictional world of dreams",- "__typename": "Realm"- }- ]- }-}
− test/Feature/NamedResolvers/tests/entity-by-id/query.gql
@@ -1,18 +0,0 @@-query {- zeus: entity(id: "zeus") {- __typename- ... on Deity {- name- power- }- }- olympus: entity(id: "olympus") {- __typename- ... on Realm {- name- owner {- name- }- }- }-}
− test/Feature/NamedResolvers/tests/entity-by-id/response.json
@@ -1,16 +0,0 @@-{- "data": {- "zeus": {- "__typename": "Deity",- "name": "Zeus",- "power": ["Thunderbolt"]- },- "olympus": {- "__typename": "Realm",- "name": "Mount Olympus",- "owner": {- "name": "Zeus"- }- }- }-}
− test/Feature/NamedResolvers/tests/entity-ext-by-id/query.gql
@@ -1,24 +0,0 @@-query {- zeus: entity(id: "zeus") {- ... on Deity {- __typename- name- power- }- }- olympus: entity(id: "olympus") {- ... on Realm {- name- owner {- name- power- realm {- name- owner {- name- }- }- }- }- }-}
− test/Feature/NamedResolvers/tests/entity-ext-by-id/response.json
@@ -1,20 +0,0 @@-{- "data": {- "zeus": {- "__typename": "Deity",- "name": "Zeus",- "power": ["Thunderbolt"]- },- "olympus": {- "name": "Mount Olympus",- "owner": {- "name": "Zeus",- "realm": {- "name": "Mount Olympus",- "owner": { "name": "Zeus" }- },- "power": ["Thunderbolt"]- }- }- }-}
− test/Feature/NamedResolvers/tests/realm-by-id/query.gql
@@ -1,5 +0,0 @@-query {- realm(id: "olympus") {- name- }-}
− test/Feature/NamedResolvers/tests/realm-by-id/response.json
@@ -1,7 +0,0 @@-{- "data": {- "realm": {- "name": "Mount Olympus"- }- }-}
− test/Feature/NamedResolvers/tests/realm-ext-by-id/query.gql
@@ -1,15 +0,0 @@-query {- realm(id: "olympus") {- name- owner {- name- power- realm {- name- owner {- name- }- }- }- }-}
− test/Feature/NamedResolvers/tests/realm-ext-by-id/response.json
@@ -1,15 +0,0 @@-{- "data": {- "realm": {- "owner": {- "name": "Zeus",- "realm": {- "owner": { "name": "Zeus" },- "name": "Mount Olympus"- },- "power": ["Thunderbolt"]- },- "name": "Mount Olympus"- }- }-}
− test/Feature/NamedResolvers/tests/realm-simple/query.gql
@@ -1,5 +0,0 @@-query {- realm(id: "") {- name- }-}
− test/Feature/NamedResolvers/tests/realm-simple/response.json
@@ -1,5 +0,0 @@-{- "data": {- "realm": null- }-}
− test/Feature/NamedResolvers/tests/realms/query.gql
@@ -1,15 +0,0 @@-query {- realms {- name- owner {- name- power- realm {- name- owner {- name- }- }- }- }-}
− test/Feature/NamedResolvers/tests/realms/response.json
@@ -1,28 +0,0 @@-{- "data": {- "realms": [- {- "owner": {- "name": "Zeus",- "realm": {- "owner": { "name": "Zeus" },- "name": "Mount Olympus"- },- "power": ["Thunderbolt"]- },- "name": "Mount Olympus"- },- {- "owner": {- "name": "Morpheus",- "realm": {- "owner": { "name": "Morpheus" },- "name": "Fictional world of dreams"- },- "power": ["Shapeshifting"]- },- "name": "Fictional world of dreams"- }- ]- }-}
test/Spec.hs view
@@ -6,11 +6,9 @@ ) where -import Data.Morpheus (runApp) import Data.Morpheus.Types (GQLRequest (..), GQLResponse (..)) import qualified Feature.Holistic.API as Holistic import qualified Feature.Input.DefaultValues as DefaultValues-import qualified Feature.NamedResolvers.API as NamedResolvers import Relude import Rendering.TestSchemaRendering (testSchemaRendering) import Subscription.Test (testSubscriptions)@@ -51,9 +49,6 @@ "Holistic" [ (Holistic.api, "holistic") ],- testFeatures- "NamedResolvers"- [(runApp NamedResolvers.app, "tests")], testSubscriptions, pure testSchemaRendering ]