I am using Distribution.TestSuite.QuickCheck
to run QuickCheck tests via cabal test
. My test module exports a single definition:
module MOS6502.Tests.Main (tests) where
import Distribution.TestSuite.QuickCheck as QC
import MOS6502.Tests
import MOS6502.Tests.Framework
tests :: IO [QC.Test]
tests = return [ testProperty (testLabel test) (runTest test) | test <- allTests ]
Whenever I have a failing test, I get the output that I'd expect anyway, e.g.
Running 1 test suites...
Test suite tests: RUNNING...
Test case BEQ: Fail "(after 91 tests): Branch correctly taken"
Test case BNE: Pass
Test case BVS: Fail "(after 75 tests): Branch correctly taken"
Test case JMP abs: Fail "(after 1 test): PC"
Test case JMP ind: Fail "(after 1 test): PC"
Test case STA zp: Pass
Test case STA zp,X: Pass
Test case STA abs: Pass
Test case STA abs,X: Pass
Test case STA abs,Y: Pass
Test case STA (zp,X): Pass
Test case STA (zp),Y: Pass
Test suite tests: FAIL
Test suite logged to: dist/test/mos6502-kansas-lava-0.0.0.0-tests.log
0 of 1 test suites (8 of 12 test cases) passed.
However, while the tests are running, I am getting no output (and I also only get minimal output at the end when all tests pass).
Is there a way to have cabal test
print out these Test case Foo
messages to give me an idea of the progress?