From 31c516927d75a5431c171f4d5dbd3bf0cd32956e Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Mon, 11 Nov 2019 15:46:52 +0100 Subject: Support nested fragments in any order Fix #19. --- tests/Test/FragmentSpec.hs | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'tests/Test/FragmentSpec.hs') diff --git a/tests/Test/FragmentSpec.hs b/tests/Test/FragmentSpec.hs index 6a49eb6..a102104 100644 --- a/tests/Test/FragmentSpec.hs +++ b/tests/Test/FragmentSpec.hs @@ -98,14 +98,37 @@ spec = describe "Inline fragment executor" $ do it "evaluates nested fragments" $ do let query = [r| { - ...hatFragment + ...circumferenceFragment + } + + fragment circumferenceFragment on Hat { + circumference } fragment hatFragment on Hat { ...circumferenceFragment } + |] + + actual <- graphql (circumference :| []) query + let expected = object + [ "data" .= object + [ "circumference" .= (60 :: Int) + ] + ] + in actual `shouldBe` expected + + it "evaluates fragments defined in any order" $ do + let query = [r| + { + ...circumferenceFragment + } fragment circumferenceFragment on Hat { + ...hatFragment + } + + fragment hatFragment on Hat { circumference } |] -- cgit v1.2.3