www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Unittest in a library

reply Charles <csmith.ku2013 gmail.com> writes:
Is it possible to have unittest blocks if I'm compiling a library?

I've tried having this:

test.d:

     class Classy {
         unittest { assert(0, "failed test"); }
     }


and then build it with `dmd test.d -lib -unittest` and it doesn't 
fail the unittest.
Nov 05 2015
parent reply TheFlyingFiddle <borin.lukas gmail.com> writes:
On Friday, 6 November 2015 at 03:59:07 UTC, Charles wrote:
 Is it possible to have unittest blocks if I'm compiling a 
 library?

 I've tried having this:

 test.d:

     class Classy {
         unittest { assert(0, "failed test"); }
     }


 and then build it with `dmd test.d -lib -unittest` and it 
 doesn't fail the unittest.
You can test the unittests by using the -main switch. http://dlang.org/dmd-linux.html#switch-main
Nov 05 2015
parent Charles <csmith.ku2013 gmail.com> writes:
On Friday, 6 November 2015 at 04:34:28 UTC, TheFlyingFiddle wrote:
 On Friday, 6 November 2015 at 03:59:07 UTC, Charles wrote:
 Is it possible to have unittest blocks if I'm compiling a 
 library?

 I've tried having this:

 test.d:

     class Classy {
         unittest { assert(0, "failed test"); }
     }


 and then build it with `dmd test.d -lib -unittest` and it 
 doesn't fail the unittest.
You can test the unittests by using the -main switch. http://dlang.org/dmd-linux.html#switch-main
That's exactly what I was missing. Thanks!
Nov 06 2015