bitcoin-hs-0.0.1: Bitcoin/TestSuite.hs
-- | Test-suite using Tasty.
module Main where
--------------------------------------------------------------------------------
import Test.Tasty
import Test.Tasty.QuickCheck
import Bitcoin.Test.Crypto.Word256 ( testgroup_Word256 )
import Bitcoin.Test.Crypto.FiniteField.NaiveFp ( testgroup_NaiveFp )
import Bitcoin.Test.Crypto.FiniteField.FastFp ( testgroup_FastFp )
import Bitcoin.Test.Crypto.Curve ( testgroup_Curve )
import Bitcoin.Test.Crypto.Projective ( testgroup_Projective )
import Bitcoin.Test.Crypto.Key ( testgroup_Key )
import Bitcoin.Test.Crypto.RFC6979 ( testgroup_RFC6979 )
import Bitcoin.Test.Protocol.Hash ( testgroup_ProtocolHash )
import Bitcoin.Test.Script.RunTests ( testgroup_Script )
import Bitcoin.Test.TxCheck ( testgroup_TxCheck )
--------------------------------------------------------------------------------
main :: IO ()
main = defaultMain tests
setN :: Int -> TestTree -> TestTree
setN n = localOption (QuickCheckTests n)
tests :: TestTree
tests
= setN 1000
$ testGroup "all tests"
[ testGroup "crypto"
[ testgroup_Word256
, testgroup_NaiveFp
, testgroup_FastFp
, setN 250 testgroup_Curve
, setN 250 testgroup_Projective
, testgroup_Key
, testgroup_RFC6979
]
, testGroup "protocol"
[ testgroup_ProtocolHash
]
, testgroup_Script
, testgroup_TxCheck
]
--------------------------------------------------------------------------------