Unittest helper module?

Chad J gamerChad at _spamIsBad_gmail.com
Wed Aug 29 20:24:09 PDT 2007


So I was wondering if anyone has written or is writing something that I 
could use like so:

unittest
{
   int foo = 42;
   int bar = 5;
   char[] baz = "moo";

   UTester ut; // Unit Tester struct
   ut.verbose = true;
   ut.test("foo == bar");
   ut.test("foo > bar");
   ut.test("baz.length is 3");

   assert( ut.allPassed ); // assertion exception
}

prints:
"foo == bar": false.
   foo == 42
   bar == 5
"foo > bar": true.
   foo == 42
   bar == 5
"baz.length is 3": true.
   baz == "moo"
   baz.length == 3
Error: AssertError Failure ...



At some point I realized I was writing all of my unittest code 2 times. 
  Once in the form of using the tested code and dumping the output to 
the console, and then again in the form of using the tested code and 
comparing the output against expected values.  I initially dump the 
output to console so that if it fails, I know how so, and sometimes I 
don't know precisely what the expected value is.  Perhaps 
ut.show("..."); would be useful too.

I also gave a short shot at writing this, and realized that it would 
need a D expression evaluator, which I don't feel like writing right now.

I could have sworn I talked to someone at D con that was doing unittest 
stuff.

Well, anyone have this sorta thing laying around?


More information about the Digitalmars-d-learn mailing list