Re: [Haskell-cafe] Organizaing tests in Haskell

2012-09-24 Thread Heinrich Apfelmus
Simon Hengel wrote: On Sun, Sep 23, 2012 at 06:11:59PM +0200, Heinrich Apfelmus wrote: How do I access internal modules with cabal test , though? Last time I tried, I could not find a way to expose in the test section of the cabal file. It works, if you add the source directory to

[Haskell-cafe] Organizaing tests in Haskell

2012-09-23 Thread Jan Stolarek
Dear list, during many years of Java programming I've been faithful to TDD methology. Recently I've been trying to figure out how to do tests in Haskell. Thanks to RWH and help from great folks at #haskell I've managed to get on my feet. There is however one issue I wasn't able to solve. In

Re: [Haskell-cafe] Organizaing tests in Haskell

2012-09-23 Thread Simon Hengel
Hi, Is there any better solution to organize tests in Haskell? (Disclaimer: I'm the maintainer of Hspec ;) If you use Hspec[1] for testing, you do not have to assemble your individual tests manually into a test suit; hspec-discover[2] takes care of that. There is no comprehensive user's guide

Re: [Haskell-cafe] Organizaing tests in Haskell

2012-09-23 Thread Matthew West
On 23 Sep 2012, at 10:25, Jan Stolarek wrote: Dear list, during many years of Java programming I've been faithful to TDD methology. Recently I've been trying to figure out how to do tests in Haskell. Thanks to RWH and help from great folks at #haskell I've managed to get on my feet.

Re: [Haskell-cafe] Organizaing tests in Haskell

2012-09-23 Thread Simon Hengel
Of course others are still able to import your Internal modules That is not necessarily true. For libraries, you can list internal modules as other-modules (in contrast to exposed-modules) in you Cabal file. That way they are not part of the public interface of your library. However, that

Re: [Haskell-cafe] Organizaing tests in Haskell

2012-09-23 Thread Jan Stolarek
Thanks for replies. CPP approach seems to be what I would like to achieve, but it looks more like a hack than a real solution. That said, I like the idea of creating a module that acts as an external interface to the library and I I don't mind sacrificing encapsulation within the package

Re: [Haskell-cafe] Organizaing tests in Haskell

2012-09-23 Thread Heinrich Apfelmus
Simon Hengel wrote: Of course others are still able to import your Internal modules That is not necessarily true. For libraries, you can list internal modules as other-modules (in contrast to exposed-modules) in you Cabal file. That way they are not part of the public interface of your

Re: [Haskell-cafe] Organizaing tests in Haskell

2012-09-23 Thread Simon Hengel
On Sun, Sep 23, 2012 at 06:11:59PM +0200, Heinrich Apfelmus wrote: Simon Hengel wrote: Of course others are still able to import your Internal modules That is not necessarily true. For libraries, you can list internal modules as other-modules (in contrast to exposed-modules) in you Cabal

Re: [Haskell-cafe] Organizaing tests in Haskell

2012-09-23 Thread Simon Hengel
On Sun, Sep 23, 2012 at 04:10:56PM +0200, Jan Stolarek wrote: I don't mind sacrificing encapsulation within the package itself. If it works for project as big as Yesod it should work for me. Yesod uses the CPP solution, too (e.g. [1]). Cheers, Simon [1]