1
votes

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?

1

1 Answers

0
votes

Try

cabal test --show-details=always

(See the Cabal User Guide for more information)