diff options
Diffstat (limited to 'bootstrap/unit_test')
-rw-r--r-- | bootstrap/unit_test/ModuleSourceConstructionTest.hs | 10 | ||||
-rw-r--r-- | bootstrap/unit_test/ProgramSourceConstructionTest.hs | 5 |
2 files changed, 11 insertions, 4 deletions
diff --git a/bootstrap/unit_test/ModuleSourceConstructionTest.hs b/bootstrap/unit_test/ModuleSourceConstructionTest.hs index fd69844..20bc011 100644 --- a/bootstrap/unit_test/ModuleSourceConstructionTest.hs +++ b/bootstrap/unit_test/ModuleSourceConstructionTest.hs @@ -31,12 +31,13 @@ test = return $ givenInput , then' "its object file name is the 'flattened' path of the source file with '.o' appeneded" checkModuleObjectFileName + , then' "it knows what modules it uses directly" checkModuleModulesUsed ] ] exampleModule :: RawSource -exampleModule = - RawSource moduleSourceFileName' $ unlines ["module some_module", "end module"] +exampleModule = RawSource moduleSourceFileName' $ unlines + ["module some_module", " use module1", "USE MODULE2", "end module"] moduleSourceFileName' :: String moduleSourceFileName' = "some" </> "file" </> "somewhere.f90" @@ -55,3 +56,8 @@ checkModuleObjectFileName m@(Module{}) = assertEquals ("." </> "some_file_somewhere.f90.o") $ (moduleObjectFileName m) "." checkModuleObjectFileName _ = fail' "wasn't a Module" + +checkModuleModulesUsed :: Source -> Result +checkModuleModulesUsed m@(Module{}) = + assertEquals ["module1", "module2"] $ moduleModulesUsed m +checkModuleModulesUsed _ = fail' "wasn't a Module" diff --git a/bootstrap/unit_test/ProgramSourceConstructionTest.hs b/bootstrap/unit_test/ProgramSourceConstructionTest.hs index 91f0d90..6369965 100644 --- a/bootstrap/unit_test/ProgramSourceConstructionTest.hs +++ b/bootstrap/unit_test/ProgramSourceConstructionTest.hs @@ -7,7 +7,6 @@ import BuildModel ( RawSource(..) , Source(..) , processRawSource ) -import System.FilePath ( (</>) ) import Hedge ( Result , Test , assertEquals @@ -17,6 +16,7 @@ import Hedge ( Result , then' , whenTransformed ) +import System.FilePath ( (</>) ) test :: IO (Test ()) test = return $ givenInput @@ -64,5 +64,6 @@ checkProgramObjectFileName p@(Program{}) = checkProgramObjectFileName _ = fail' "wasn't a Program" checkProgramModulesUsed :: Source -> Result -checkProgramModulesUsed p@(Program{}) = assertEquals ["module1", "module2"] $ programModulesUsed p +checkProgramModulesUsed p@(Program{}) = + assertEquals ["module1", "module2"] $ programModulesUsed p checkProgramModulesUsed _ = fail' "wasn't a Program" |