hbs2/miscellaneous/saltine/tests/Main.hs

52 lines
1.4 KiB
Haskell

{-# LANGUAGE OverloadedStrings #-}
module Main where
import SecretBoxProperties (testSecretBox)
import AEAD.ChaCha20Poly1305Properties (testAEADChaCha20)
import AEAD.ChaCha20Poly1305IETFProperties (testAEADIETF)
import AEAD.XChaCha20Poly1305Properties (testAEADXChaCha20)
import AEAD.AES256GCMProperties (testAEADAES)
import BoxProperties (testBox)
import SealedBoxProperties (testSealedBox)
import StreamProperties (testStream)
import AuthProperties (testAuth)
import OneTimeAuthProperties (testOneTimeAuth)
import SignProperties (testSign)
import HashProperties (testHash)
import ScalarMultProperties (testScalarMult)
import PasswordProperties (testPassword)
import UtilProperties (testUtils)
import Crypto.Saltine
import Test.Framework
runOpts :: RunnerOptions
runOpts = mempty { ropt_color_mode = Just ColorAlways
, ropt_test_options = Just testOpts
}
testOpts :: TestOptions
testOpts = mempty { topt_maximum_generated_tests = Just 20000 }
main :: IO ()
main = do
sodiumInit
flip defaultMainWithOpts runOpts [
testUtils,
testBox,
testSealedBox,
testSecretBox,
testAEADChaCha20,
testAEADIETF,
testAEADXChaCha20,
testAEADAES,
testStream,
testAuth,
testOneTimeAuth,
testSign,
testHash,
testScalarMult,
testPassword
]