diff options
Diffstat (limited to 'tests/Test')
| -rw-r--r-- | tests/Test/StarWars/Data.hs | 2 | ||||
| -rw-r--r-- | tests/Test/StarWars/QuerySpec.hs | 12 | ||||
| -rw-r--r-- | tests/Test/StarWars/Schema.hs | 13 |
3 files changed, 15 insertions, 12 deletions
diff --git a/tests/Test/StarWars/Data.hs b/tests/Test/StarWars/Data.hs index bfbe836..427371b 100644 --- a/tests/Test/StarWars/Data.hs +++ b/tests/Test/StarWars/Data.hs @@ -184,7 +184,7 @@ getFriends :: Character -> [Character] getFriends char = catMaybes $ liftA2 (<|>) getDroid getHuman <$> friends char getEpisode :: Int -> Maybe Text -getEpisode 4 = pure "NEWHOPE" +getEpisode 4 = pure "NEW_HOPE" getEpisode 5 = pure "EMPIRE" getEpisode 6 = pure "JEDI" getEpisode _ = empty diff --git a/tests/Test/StarWars/QuerySpec.hs b/tests/Test/StarWars/QuerySpec.hs index 39d6a27..cf451f8 100644 --- a/tests/Test/StarWars/QuerySpec.hs +++ b/tests/Test/StarWars/QuerySpec.hs @@ -64,9 +64,9 @@ spec = describe "Star Wars Query Tests" $ do friends { name appearsIn - friends { - name - } + friends { + name + } } } } @@ -77,7 +77,7 @@ spec = describe "Star Wars Query Tests" $ do , "friends" .= [ Aeson.object [ "name" .= ("Luke Skywalker" :: Text) - , "appearsIn" .= ["NEWHOPE","EMPIRE","JEDI" :: Text] + , "appearsIn" .= ["NEW_HOPE", "EMPIRE", "JEDI" :: Text] , "friends" .= [ Aeson.object [hanName] , Aeson.object [leiaName] @@ -87,7 +87,7 @@ spec = describe "Star Wars Query Tests" $ do ] , Aeson.object [ hanName - , "appearsIn" .= [ "NEWHOPE","EMPIRE","JEDI" :: Text] + , "appearsIn" .= ["NEW_HOPE", "EMPIRE", "JEDI" :: Text] , "friends" .= [ Aeson.object [lukeName] , Aeson.object [leiaName] @@ -96,7 +96,7 @@ spec = describe "Star Wars Query Tests" $ do ] , Aeson.object [ leiaName - , "appearsIn" .= [ "NEWHOPE","EMPIRE","JEDI" :: Text] + , "appearsIn" .= ["NEW_HOPE", "EMPIRE", "JEDI" :: Text] , "friends" .= [ Aeson.object [lukeName] , Aeson.object [hanName] diff --git a/tests/Test/StarWars/Schema.hs b/tests/Test/StarWars/Schema.hs index 6296461..c9f1bed 100644 --- a/tests/Test/StarWars/Schema.hs +++ b/tests/Test/StarWars/Schema.hs @@ -42,7 +42,7 @@ heroObject = Out.ObjectType "Human" Nothing [] $ HashMap.fromList [ ("id", Out.Resolver idFieldType (idField "id")) , ("name", Out.Resolver nameFieldType (idField "name")) , ("friends", Out.Resolver friendsFieldType (idField "friends")) - , ("appearsIn", Out.Resolver appearsInFieldType (idField "appearsIn")) + , ("appearsIn", Out.Resolver appearsInField (idField "appearsIn")) , ("homePlanet", Out.Resolver homePlanetFieldType (idField "homePlanet")) , ("secretBackstory", Out.Resolver secretBackstoryFieldType (String <$> secretBackstory)) , ("__typename", Out.Resolver (Out.Field Nothing (Out.NamedScalarType string) mempty) (idField "__typename")) @@ -55,7 +55,7 @@ droidObject = Out.ObjectType "Droid" Nothing [] $ HashMap.fromList [ ("id", Out.Resolver idFieldType (idField "id")) , ("name", Out.Resolver nameFieldType (idField "name")) , ("friends", Out.Resolver friendsFieldType (idField "friends")) - , ("appearsIn", Out.Resolver appearsInFieldType (idField "appearsIn")) + , ("appearsIn", Out.Resolver appearsInField (idField "appearsIn")) , ("primaryFunction", Out.Resolver primaryFunctionFieldType (idField "primaryFunction")) , ("secretBackstory", Out.Resolver secretBackstoryFieldType (String <$> secretBackstory)) , ("__typename", Out.Resolver (Out.Field Nothing (Out.NamedScalarType string) mempty) (idField "__typename")) @@ -72,8 +72,11 @@ nameFieldType = Out.Field Nothing (Out.NamedScalarType string) mempty friendsFieldType :: Out.Field Identity friendsFieldType = Out.Field Nothing (Out.ListType $ Out.NamedObjectType droidObject) mempty -appearsInFieldType :: Out.Field Identity -appearsInFieldType = Out.Field Nothing (Out.ListType $ Out.NamedScalarType int) mempty +appearsInField :: Out.Field Identity +appearsInField = Out.Field (Just description) fieldType mempty + where + fieldType = Out.ListType $ Out.NamedEnumType episodeEnum + description = "Which movies they appear in." secretBackstoryFieldType :: Out.Field Identity secretBackstoryFieldType = Out.Field Nothing (Out.NamedScalarType string) mempty @@ -97,7 +100,7 @@ hero :: ActionT Identity Value hero = do episode <- argument "episode" pure $ character $ case episode of - Enum "NEWHOPE" -> getHero 4 + Enum "NEW_HOPE" -> getHero 4 Enum "EMPIRE" -> getHero 5 Enum "JEDI" -> getHero 6 _ -> artoo |
