Running unittests in a D library

Jonathan M Davis jmdavisProg at gmx.com
Wed Sep 19 12:34:18 PDT 2012


On Wednesday, September 19, 2012 20:50:08 Chris Molozian wrote:
> Hey all,
> 
> I'm sure that this is a rather daft question but I've tried to
> search the d.learn mailing list and must have missed a question
> about it.
> 
> I've read the unit testing documentation on dlang.org and I know
> that `unittest { /* some code */ }` blocks are compiled into the
> executable and executed after static initialization and before
> the main() function is called. This makes sense in an application
> but how does this apply to a library?
> 
> For example, writing a D library using DMD's `-lib` compiler
> flag, how do I run the unit tests in the generated library?

You don't build it as a library when your unit testing it. You create an empty 
main, compile it all as an executable, and run it. I believe that rdmd --main 
will do this for you (rdmd comes with dmd), but I haven't really used rdmd, so 
I'm not 100% certain.

- Jonathan M Davis


More information about the Digitalmars-d-learn mailing list