Fwd: [Haskell-cafe] Data.Tree.Zipper in the standard libraries
Ian Lynagh
igloo at earth.li
Sat May 31 07:16:58 EDT 2008
On Sat, May 31, 2008 at 10:44:40AM +0200, Krasimir Angelov wrote:
>
> I was silent for some time but in this time I created QuickCheck tests
> for Data.Tree.Zipper which achieve 100% coverage with HPC. I also
> created a ticket for it: Ticket #2324
>
> http://hackage.haskell.org/trac/ghc/ticket/2324
>
> The attached file is the current implementation and it contains the
> version updated from Iavor Diatchki. It has the advantage that it also
> works with forests, not just with trees.
>
> Initially I thought that complete testsuite for such a simple module
> might be overkill but actually I found a bug :-) in the splitChildren
> function which is now fixed.
So just to check, this proposal is to add Data.Tree.Zipper to containers
and the QC tests to the testsuite, right?
As I've explained before[1], I don't think that QuickCheck tests are a
good way to test libraries: They tend to test the same inputs (e.g. [])
or equivalent inputs (e.g. "insert 2 [3]" and "insert 3 [4]") many
times, meaning it takes much longer to get the same level of testing as
a few well-chosen unit tests. When you multiply this by all the
libraries the testsuite is meant to test, this is a significant amount
of time.
I also don't think that adding the tests but not running them
automatically is a good idea, as they will most likely just bitrot.
Adding a unit test for the bug you found is certainly a good idea,
though!
[1] http://www.haskell.org/pipermail/libraries/2008-April/009594.html
Thanks
Ian
More information about the Libraries
mailing list