@@ -105,10 +105,6 @@ runTest conf test = do
105 -- don't touch the current directory as we want to run these things
105 -- don't touch the current directory as we want to run these things
106 -- in parallel in the future
106 -- in parallel in the future
107 let inTest s = test ++ "/" ++ s
107 let inTest s = test ++ "/" ++ s
108− -- just pretend that backslashes are slashes for comparison
109− -- purposes to avoid path problems, so don't write any tests
110− -- that depend on that distinction in other contexts
111− let norm s = map (\c -> if c=='\\' then '/' else c) s
112 t1 <- getCurrentTime
108 t1 <- getCurrentTime
113 (exitCode, output) <- runInShell test (idrOpts conf)
109 (exitCode, output) <- runInShell test (idrOpts conf)
114 t2 <- getCurrentTime
110 t2 <- getCurrentTime
@@ -128,6 +124,15 @@ runTest conf test = do
128 let dt = diffUTCTime t2 t1
124 let dt = diffUTCTime t2 t1
129 putStrLn $ "Duration of " ++ test ++ " was " ++ show dt
125 putStrLn $ "Duration of " ++ test ++ " was " ++ show dt
130 return res
126 return res
128+ -- just pretend that backslashes are slashes for comparison
129+ -- purposes to avoid path problems, so don't write any tests
130+ -- that depend on that distinction in other contexts.
131+ -- Also rewrite newlines for consistency.
132+ norm ('\r':'\n':xs) = '\n' : norm xs
133+ norm ('\\':xs) = '/' : norm xs
134+ norm (x : xs) = x : norm xs
132printStats :: Config -> [Status] -> IO ()
137printStats :: Config -> [Status] -> IO ()
133printStats conf stats = do
138printStats conf stats = do