accelerate-examples-1.3.0.0: lib/Data/Array/Accelerate/Examples/Internal/TestFramework/Config.hs
{-# LANGUAGE KindSignatures #-}
{-# LANGUAGE TemplateHaskell #-}
-- |
-- Module: : Data.Array.Accelerate.Examples.Internal.TestFramework.Config
-- Copyright : [2014..2020] Trevor L. McDonell
-- License : BSD3
--
-- Maintainer : Trevor L. McDonell <trevor.mcdonell@gmail.com>
-- Stability : experimental
-- Portability : non-portable (GHC extensions)
--
module Data.Array.Accelerate.Examples.Internal.TestFramework.Config (
-- ** Test framework options
module Data.Array.Accelerate.Examples.Internal.TestFramework.Config
) where
import Data.Monoid
import Data.Label
import Data.Label.Derive
import Test.Framework ( RunnerOptions, RunnerOptions', TestOptions', optionsDescription, SuppliedRunnerOptions )
import System.Console.GetOpt
import Prelude
import Data.Array.Accelerate.Examples.Internal.Backend
$(mkLabelsNamed id [''RunnerOptions'])
$(mkLabelsNamed id [''TestOptions'])
type Config = RunnerOptions
defaultConfig :: Backend -> Config
defaultConfig b
= set ropt_threads (concurrentBackends b)
$ set ropt_test_options
( Just $ set topt_maximum_generated_tests (Just 1000)
$ set topt_maximum_unsuitable_generated_tests (Just 1000)
$ mempty)
$ mempty
defaultOptions :: [OptDescr SuppliedRunnerOptions]
defaultOptions = optionsDescription