Drop loadMappedFiles and move all loading code to progMain
This commit is contained in:
@@ -6,7 +6,6 @@ import Test.Hspec
|
||||
import TestUtils
|
||||
import qualified Data.Map as M
|
||||
import Dir
|
||||
import Data.Maybe
|
||||
|
||||
import Language.Haskell.GhcMod
|
||||
|
||||
@@ -44,21 +43,6 @@ spec = do
|
||||
getMMappedFiles
|
||||
show mappedFiles `shouldBe` show (M.fromList ([] :: [(FilePath, FileMapping)]))
|
||||
|
||||
describe "loadMappedFiles" $ do
|
||||
it "loads all file mappings passed as Options" $ do
|
||||
let fm = [("File.hs", RedirectedMapping "File_Redir.hs"), ("File2.hs", MemoryMapping Nothing)]
|
||||
mappedFiles <- run defaultOptions { fileMappings = fm } $
|
||||
loadMappedFiles >> getMMappedFiles
|
||||
dir <- getCurrentDirectory
|
||||
M.lookup (dir </> "File.hs") mappedFiles `shouldSatisfy` isJust
|
||||
M.lookup (dir </> "File2.hs") mappedFiles `shouldSatisfy` isJust
|
||||
it "prioritizes latter occurence of the same file" $ do
|
||||
let fm = [("File.hs", RedirectedMapping "File_Redir.hs"), ("File.hs", MemoryMapping Nothing)]
|
||||
mappedFiles <- run defaultOptions { fileMappings = fm } $
|
||||
loadMappedFiles >> getMMappedFiles
|
||||
dir <- getCurrentDirectory
|
||||
show (M.lookup (dir </> "File.hs") mappedFiles) `shouldBe` show (Just (MemoryMapping Nothing))
|
||||
|
||||
describe "withMappedFile" $ do
|
||||
it "checks if there is a redirected file and calls and action with its FilePath" $ do
|
||||
withDirectory_ "test/data/file-mapping" $ do
|
||||
@@ -85,15 +69,15 @@ spec = do
|
||||
it "checks redirected file if one is specified and outputs original filename" $ do
|
||||
withDirectory_ "test/data/file-mapping" $ do
|
||||
let fm = [("File.hs", RedirectedMapping "File_Redir.hs")]
|
||||
res <- run defaultOptions {fileMappings = fm} $ do
|
||||
loadMappedFiles
|
||||
res <- run defaultOptions $ do
|
||||
mapM_ (uncurry loadMappedFile) fm
|
||||
checkSyntax ["File.hs"]
|
||||
res `shouldBe` "File.hs:1:1:Warning: Top-level binding with no type signature: main :: IO ()\n"
|
||||
it "checks in-memory file if one is specified and outputs original filename" $ do
|
||||
withDirectory_ "test/data/file-mapping" $ do
|
||||
let fm = [("File.hs", MemoryMapping $ Just "main = putStrLn \"Hello World!\"\n")]
|
||||
res <- run defaultOptions {fileMappings = fm} $ do
|
||||
loadMappedFiles
|
||||
res <- run defaultOptions $ do
|
||||
mapM_ (uncurry loadMappedFile) fm
|
||||
checkSyntax ["File.hs"]
|
||||
res `shouldBe` "File.hs:1:1:Warning: Top-level binding with no type signature: main :: IO ()\n"
|
||||
it "lints redirected file if one is specified and outputs original filename" $ do
|
||||
|
||||
Reference in New Issue
Block a user