packages feed

synthesizer-llvm-0.6: testsuite/Test/Main.hs

module Main where

import qualified Test.Synthesizer.LLVM.RingBufferForward as RingBufferForward
import qualified Test.Synthesizer.LLVM.Helix as Helix
import qualified Test.Synthesizer.LLVM.Filter as Filter
import qualified Test.Synthesizer.LLVM.Packed as Packed

import qualified LLVM.Core as LLVM

import Data.Tuple.HT (mapFst, )


prefix :: String -> [(String, IO ())] -> [(String, IO ())]
prefix msg =
   map (mapFst (\str -> msg ++ "." ++ str))

main :: IO ()
main = do
   LLVM.initializeNativeTarget
   mapM_ (\(name,test) -> putStr (name ++ ": ") >> test) $
      concat $
      prefix "Helix" Helix.tests :
      prefix "RingBufferForward" RingBufferForward.tests :
      prefix "Filter" Filter.tests :
      prefix "Packed" Packed.tests :
      []