shithub: MicroHs

Download patch

ref: ad8eefd7d8c41dfb5fb6e9c9c6ad81780a558cfd
parent: f1cfa71353fd2900455a3a201038b2baa9574041
author: Lennart Augustsson <lennart@augustsson.net>
date: Sat Dec 16 06:18:09 EST 2023

Split out serialization test.

--- a/tests/IOTest.hs
+++ b/tests/IOTest.hs
@@ -4,9 +4,6 @@
 import System.Environment
 import Debug.Trace
 
-f :: Int -> Int
-f x = x*2+1
-
 foo :: IO ()
 foo = do
   putStrLn "foo 1"
@@ -35,9 +32,6 @@
   writeFile "test2.tmp" "more\n"
   s <- readFile "test2.tmp"
   putStrLn (show s)
-  writeSerialized "f.tmp" f
-  g <- readSerialized "f.tmp"
-  putStrLn $ show $ (g (5::Int) :: Int)
   foo
   putStrLn $ show $ trace "tracing" (5::Int)
   as <- getArgs
--- a/tests/IOTest.ref
+++ b/tests/IOTest.ref
@@ -5,7 +5,6 @@
 +
 ('a','z')
 "more\n"
-11
 foo 1
 foo 2
 tracing
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -11,7 +11,8 @@
 
 test:
 	$(TMHS) Hello      && $(EVAL) > Hello.out      && diff Hello.ref Hello.out
-	$(TMHS) IOTest && (echo q | $(EVAL) a bb ccc | sed 's/^[0-9]*ms/1ms/' > IOTest.out) && diff IOTest.ref IOTest.out
+	$(TMHS) IOTest     && (echo q | $(EVAL) a bb ccc | sed 's/^[0-9]*ms/1ms/' > IOTest.out) && diff IOTest.ref IOTest.out
+	$(TMHS) Serdes     && $(EVAL) > Serdes.out     && diff Serdes.ref Serdes.out
 	$(TMHS) StringTest && $(EVAL) > StringTest.out && diff StringTest.ref StringTest.out
 	$(TMHS) ListTest   && $(EVAL) > ListTest.out   && diff ListTest.ref ListTest.out
 	$(TMHS) Fac        && $(EVAL) > Fac.out        && diff Fac.ref Fac.out
--- /dev/null
+++ b/tests/Serdes.hs
@@ -1,0 +1,14 @@
+module Serdes(main) where
+import Prelude
+import System.IO as IO
+import System.Environment
+import Debug.Trace
+
+f :: Int -> Int
+f x = x*2+1
+
+main :: IO ()
+main = do
+  writeSerialized "f.tmp" f
+  g <- readSerialized "f.tmp"
+  putStrLn $ show $ (g (5::Int) :: Int)
--- /dev/null
+++ b/tests/Serdes.ref
@@ -1,0 +1,1 @@
+11
--