sbv-7.0: SBVTestSuite/TestSuite/GenTest/GenTests.hs
-----------------------------------------------------------------------------
-- |
-- Module : TestSuite.GenTest.GenTests
-- Copyright : (c) Levent Erkok
-- License : BSD3
-- Maintainer : erkokl@gmail.com
-- Stability : experimental
--
-- Test-suite for generating tests
-----------------------------------------------------------------------------
module TestSuite.GenTest.GenTests(tests) where
import Data.SBV.Tools.GenTest
import System.Random
import Utils.SBVTestFramework
-- Test suite
tests :: TestTree
tests = testGroup "GenTest.GenTests"
[ goldenCapturedIO "tgen_haskell" $ render (Haskell "haskTest")
, goldenCapturedIO "tgen_c" $ render (C "CTest")
, goldenCapturedIO "tgen_forte" $ render (Forte "ForteTest" True ([32,32], [32,32,32]))
]
where simple = genTest 10 $ do x <- sWord32 "x"
y <- sWord32 "y"
return (x+y, x-y, x*y)
render s f = do setStdGen (mkStdGen 0) -- make sure we always get the same results!
r <- renderTest s <$> simple
writeFile f r