Fix case-split spec for 706
This commit is contained in:
@@ -13,6 +13,7 @@ main = do
|
||||
spec :: Spec
|
||||
spec = do
|
||||
describe "case split" $ do
|
||||
#if __GLASGOW_HASKELL__ >= 708
|
||||
it "does not blow up on HsWithBndrs panic" $ do
|
||||
withDirectory_ "test/data/case-split" $ do
|
||||
res <- runD $ splits "Vect.hs" 24 10
|
||||
@@ -40,7 +41,36 @@ spec = do
|
||||
res `shouldBe` "38 21 38 59"++
|
||||
" \"mlReverse' Nil accum = _mlReverse_body\NUL"++
|
||||
" mlReverse' (Cons xs'1 xs'2) accum = _mlReverse_body\"\n"
|
||||
#else
|
||||
it "does not blow up on HsWithBndrs panic" $ do
|
||||
withDirectory_ "test/data/case-split" $ do
|
||||
res <- runD $ splits "Vect706.hs" 24 10
|
||||
res `shouldBe` "24 1 24 25"++
|
||||
" \"mlAppend Nil y = undefined\NUL"++
|
||||
"mlAppend (Cons x1 x2) y = undefined\"\n"
|
||||
|
||||
it "works with case expressions" $ do
|
||||
withDirectory_ "test/data/case-split" $ do
|
||||
res <- runD $ splits "Vect706.hs" 28 20
|
||||
res `shouldBe` "28 19 28 34"++
|
||||
" \"Nil -> undefined\NUL"++
|
||||
" (Cons x'1 x'2) -> undefined\"\n"
|
||||
|
||||
it "works with where clauses" $ do
|
||||
withDirectory_ "test/data/case-split" $ do
|
||||
res <- runD $ splits "Vect706.hs" 34 17
|
||||
res `shouldBe` "34 5 34 37"++
|
||||
" \"mlReverse' Nil accum = undefined\NUL"++
|
||||
" mlReverse' (Cons xs'1 xs'2) accum = undefined\"\n"
|
||||
|
||||
it "works with let bindings" $ do
|
||||
withDirectory_ "test/data/case-split" $ do
|
||||
res <- runD $ splits "Vect706.hs" 38 33
|
||||
res `shouldBe` "38 21 38 53"++
|
||||
" \"mlReverse' Nil accum = undefined\NUL"++
|
||||
" mlReverse' (Cons xs'1 xs'2) accum = undefined\"\n"
|
||||
|
||||
#endif
|
||||
it "doesn't crash when source doesn't make sense" $
|
||||
withDirectory_ "test/data/case-split" $ do
|
||||
res <- runD $ splits "Crash.hs" 4 6
|
||||
|
||||
Reference in New Issue
Block a user