Continuous Integration
Jason House
jason.james.house at gmail.com
Thu Mar 27 18:33:47 PDT 2008
Sean Kelly wrote:
> == Quote from Jason House (jason.james.house at gmail.com)'s article
>> Sean Kelly wrote:
>> > == Quote from Jason House (jason.james.house at gmail.com)'s article
>> >> Lars Ivar Igesund Wrote:
>> >> > Jason House Wrote:
>> >> >
>> >> > > Sean Kelly wrote:
>> >> > >
>> >> > > > == Quote from Jason House (jason.james.house at gmail.com)'s
>> >> > > > article
>> >> > > >> I'd like to stay with the D style of unit tests. Maybe I
>> >> > > >> should check what
>> >> > > >> enhancement requests are in there. It'd be nice to be able to
>> >> > > >> hook in a unit test handler...
>> >> > > >
>> >> > > > Tango has one. Look at "moduleUnitTester" here:
>> >> > > >
>> >> > > >
>>
http://www.dsource.org/projects/tango/docs/current/tango.core.Runtime.html
>> >> > > >
>> >> > > >
>> >> > > > Sean
>> >> > >
>> >> > > See http://d.puremagic.com/issues/show_bug.cgi?id=1952 for the
>> >> > > enhancement
>> >> > > request. Per unit test customization (such as a unit test name)
>> >> > > is very
>> >> > > useful to have. I also don't see a way to tell the program to run
>> >> > > all unit tests (and just report the individual passes/failures)
>> >> >
>> >> > Here is a simple program that uses the above hook - note that you
>> >> > need to link one of the stacktrace libs (jive on linux) to actually
>> > get stacktraces printed on exceptions, not just assert line numbers.
>> > Also, I think it will be unable to continue after a segfault.:
>> >> Hmmm... There's some black magic in your sample. What's
>> >> "ModuleInfo"? Where is it documented?
>> >
>> > ModuleInfo is declared in the global object.di in Tango, and it isn't
>> > documented anywhere. Sorry about that. I need to look into
>> > documenting what's in object.di.
>> >
>> >> The code looks like it does not run unit tests one at a time, but I'll
>> >> wait for real analysis of the code until I know what's going on.
>> >
>> > Unfortunately, the compiler lumps all the unit tests in a particular
>> > module together. I would prefer if they were split out into a per-
>> > module list however, and this would have to happen for your enhancement
>> > request to go through.
>> >
>> >
>> > Sean
>> Please, please add the extra detail to the request! How should the
>> compiler do it?
>
> I'd like ModuleInfo to get something vaguely like this:
>
> alias void function() UnitTest;
> struct NamedPair { char[] name; UnitTest test; }
> NamedPair[] unitTests;
>
> Then executing the unit tests for a module could be done on a per-test
> basis,
> with the names you suggested visible as well. Of course, this means even
> more meta-data per module, but it would make unittest more flexible so...
>
>
> Sean
I was hoping those kind of thoughts would go into the feature request ;)
More information about the Digitalmars-d
mailing list