module TPreProc ( testModule -- tests the module Preprocessor ) where -- imports -- import Test.HUnit import InterfaceDT as IDT import qualified Preprocessor as PreProc import qualified Data.Map as Map -- functions -- --testPreProc01 = "PreProc: " ~: IDT.IPL [] @=? PreProc.process (IDT.IIP "") --testPreProc02 = "PreProc: " ~: IDT.IPL [] @=? PreProc.process (IDT.IIP "a\nb\n") testPreProc03 = "PreProc: " ~: IDT.IPL [(convert ["$1"], 0), (convert ["$2"], 1)] @=? PreProc.process (IDT.IIP "$1\n$2\n") testPreProc04 = "PreProc: " ~: IDT.IPL [(convert ["$1"], 0), (convert ["$2 ", "", "", ""], 1), (convert ["$3 ", "", "", "", ""], 5)] @=? PreProc.process (IDT.IIP "$1\n$2\n\n\n\n$3\n\n\n\n\n") --testPreProc05 = "PreProc: " ~: IDT.IPL [["$2"]] @=? PreProc.process (IDT.IIP " $1\n$2\n") convert :: [String] -> Grid2D convert code = Map.fromList $ zip [0..] (map (Map.fromList . zip [0..]) code) testModule = [testPreProc03,testPreProc04]