module Test.MuCheck.TestAdapter where import qualified Language.Haskell.Interpreter as I import Data.Typeable type InterpreterOutput a = Either I.InterpreterError (String, a) -- Class/Instance declaration type MutantFilename = String newtype Summary = Summary String class Typeable s => Summarizable s where testSummary :: [MutantFilename] -> [InterpreterOutput s] -> Summary isSuccess :: s -> Bool isFailure :: s -> Bool isFailure = not . isSuccess isOther :: s -> Bool isOther x = not (isSuccess x) && not (isFailure x)