@@ -9,6 +9,7 @@ import Control.Monad.IO.Class
9
9
import Data.Aeson
10
10
import Data.Default
11
11
import qualified Data.HashMap.Strict as HM
12
+ import qualified Data.Set as Set
12
13
import Data.Maybe
13
14
import Data.Monoid ((<>) )
14
15
import qualified Data.Text as T
@@ -546,7 +547,7 @@ hsImportSpec formatterName [e1, e2, e3] =
546
547
executeAllCodeActions doc wantedCodeActionTitles
547
548
548
549
contents <- documentContents doc
549
- liftIO $ T. lines contents `shouldBe` e3
550
+ liftIO $ Set. fromList ( T. lines contents) `shouldBe` Set. fromList e3
550
551
551
552
it " respects format config, multiple import-list" $ runSession hieCommand fullCaps " test/testdata" $ do
552
553
doc <- openDoc " CodeActionImportList.hs" " haskell"
@@ -561,18 +562,20 @@ hsImportSpec formatterName [e1, e2, e3] =
561
562
]
562
563
563
564
executeAllCodeActions doc wantedCodeActionTitles
564
-
565
+ let mainFunc = [ " main :: IO ()"
566
+ , " main ="
567
+ , " when True"
568
+ , " $ hPutStrLn stdout"
569
+ , " $ fromMaybe \" Good night, World!\" (Just \" Hello, World!\" )"
570
+ ]
565
571
contents <- documentContents doc
566
- liftIO $ T. lines contents `shouldBe`
567
- [ " import System.IO (stdout, hPutStrLn)"
568
- , " import Control.Monad (when)"
569
- , " import Data.Maybe (fromMaybe)"
570
- , " main :: IO ()"
571
- , " main ="
572
- , " when True"
573
- , " $ hPutStrLn stdout"
574
- , " $ fromMaybe \" Good night, World!\" (Just \" Hello, World!\" )"
575
- ]
572
+ liftIO $ Set. fromList (T. lines contents) `shouldBe`
573
+ Set. fromList
574
+ ([ " import System.IO (stdout, hPutStrLn)"
575
+ , " import Control.Monad (when)"
576
+ , " import Data.Maybe (fromMaybe)"
577
+ ] ++ mainFunc)
578
+ liftIO $ contents `shouldSatisfy` T. isSuffixOf (T. unlines mainFunc)
576
579
it " respects format config" $ runSession hieCommand fullCaps " test/testdata" $ do
577
580
doc <- openDoc " CodeActionImportBrittany.hs" " haskell"
578
581
_ <- waitForDiagnosticsSource " ghcmod"
0 commit comments