Safe Haskell | None |
---|---|
Language | Haskell2010 |
MuCheck base module
- mucheck :: (Summarizable a, Show a) => (Mutant -> TestStr -> InterpreterOutput a -> Summary) -> String -> String -> [TestStr] -> IO (MAnalysisSummary, [MutantSummary])
Documentation
:: (Summarizable a, Show a) | |
=> (Mutant -> TestStr -> InterpreterOutput a -> Summary) | The summarization function to use on test results |
-> String | The mutating function we are checking the test adequacy of. |
-> String | The module file where the mutating function was declared |
-> [TestStr] | The tests we can use to kill mutants |
-> IO (MAnalysisSummary, [MutantSummary]) | Returns a tuple of full summary, and individual mutant results. |
Perform mutation analysis using any of the test frameworks that support Summarizable (essentially, after running it on haskell, we should be able to distinguish a successful run without failures from one with failures.) E.g. using the mucheck-quickcheck adapter
tFn :: Mutant -> TestStr -> InterpreterOutput QuickCheckSummary` tFn = testSummary mucheck tFn "qsort" "Examples/QuickCheckTest.hs" ["quickCheckResult revProp"]