@@ -26,6 +26,9 @@ data Test4T = Test4Ca Int |
26 Test4Cb Int
26 Test4Cb Int
27 deriving (Show, Generic, Eq, Binary, NFData, Atomable)
27 deriving (Show, Generic, Eq, Binary, NFData, Atomable)
29+data TestListT = TestListC [Int]
30+ deriving (Show, Generic, Eq, Binary, NFData, Atomable)
29data Test5T = Test5C {
32data Test5T = Test5C {
30 con1 :: Int,
33 con1 :: Int,
31 con2 :: Int
34 con2 :: Int
@@ -37,7 +40,7 @@ main = do
37 if errors tcounts + failures tcounts > 0 then exitFailure else exitSuccess
40 if errors tcounts + failures tcounts > 0 then exitFailure else exitSuccess
39testList :: Test
42testList :: Test
40−testList = TestList [testHaskell2DB, testADT1, testADT2, testADT3, testADT4, testADT5, testBasicMarshaling]
43+testList = TestList [testHaskell2DB, testADT1, testADT2, testADT3, testADT4, testADT5, testBasicMarshaling, testListInstance]
42-- test some basic data types like int, day, etc.
45-- test some basic data types like int, day, etc.
43testBasicMarshaling :: Test
46testBasicMarshaling :: Test
@@ -106,3 +109,9 @@ testADT5 = TestCase $ do
107checkExecuteDatabaseContextExpr :: SessionId -> Connection -> DatabaseContextExpr -> IO ()
110checkExecuteDatabaseContextExpr :: SessionId -> Connection -> DatabaseContextExpr -> IO ()
108checkExecuteDatabaseContextExpr sessionId dbconn expr = executeDatabaseContextExpr sessionId dbconn expr >>= maybe (pure ()) (\err -> assertFailure (show err))
111checkExecuteDatabaseContextExpr sessionId dbconn expr = executeDatabaseContextExpr sessionId dbconn expr >>= maybe (pure ()) (\err -> assertFailure (show err))
113+testListInstance :: Test
114+testListInstance = TestCase $ do
115+ let example = TestListC [3,4,5]
116+ traceShowM (toAtom example)
117+ assertEqual "List instance" example (fromAtom (toAtom example))