From c2638957dd9aca90831e0b434fec9ccc05c77acc Mon Sep 17 00:00:00 2001 From: Brad Richardson Date: Thu, 15 Oct 2020 10:22:43 -0500 Subject: Add test for module source file name --- bootstrap/unit_test/ModuleSourceConstructionTest.hs | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'bootstrap/unit_test/ModuleSourceConstructionTest.hs') diff --git a/bootstrap/unit_test/ModuleSourceConstructionTest.hs b/bootstrap/unit_test/ModuleSourceConstructionTest.hs index cc6d079..fae7c89 100644 --- a/bootstrap/unit_test/ModuleSourceConstructionTest.hs +++ b/bootstrap/unit_test/ModuleSourceConstructionTest.hs @@ -9,7 +9,9 @@ import BuildModel ( RawSource(..) ) import Hedge ( Result , Test + , assertEquals , assertThat + , fail' , givenInput , then' , whenTransformed @@ -20,9 +22,13 @@ test :: IO (Test ()) test = return $ givenInput "a module" exampleModule - [ whenTransformed "processed to a source" - processRawSource - [then' "it is a Module" checkIsModule] + [ whenTransformed + "processed to a source" + processRawSource + [ then' "it is a Module" checkIsModule + , then' "its source file name is the same as the original" + checkModuleSourceFileName + ] ] exampleModule :: RawSource @@ -35,3 +41,8 @@ moduleSourceFileName' = "some" "file" "somewhere.f90" checkIsModule :: Source -> Result checkIsModule Module{} = assertThat True checkIsModule _ = assertThat False + +checkModuleSourceFileName :: Source -> Result +checkModuleSourceFileName m@(Module{}) = + assertEquals moduleSourceFileName' $ moduleSourceFileName m +checkModuleSourceFileName _ = fail' "wasn't a Module" -- cgit v1.2.3