digitalmars.D.announce - Run your unit tests individually using Flute
- Robert Fraser (31/31) Dec 08 2007 Okay, it's not actually done, but since I'm changing the interface to a
- Kris (3/14) Dec 08 2007 Very, very nice ...
- Robert Fraser (6/24) Dec 08 2007 You don't have to name the tests; it's an option. If I choose to tie it
- Kris (5/8) Dec 08 2007 ??
- Robert Fraser (5/17) Dec 09 2007 Oh, I'm sorry I misunderstood. Thanks for the complement.
Okay, it's not actually done, but since I'm changing the interface to a network-based/socket one that will be less viable for command-line usage, I thought I'd announce the command-line version now. Flute is a natural extension of UnittestWalker which allows you to run unit tests one at a time, run only specific tests, track failures, errors, and passes, etc., etc. It integrates directly with D's unittest construct, so no additional coding on your part is necessary, just link in the Flute module and enjoy! If you want to name your tests, you will have to introduce a dependency on the naming module, however. Docs: http://www.dsource.org/projects/descent/browser/trunk/descent.unittest/flute/doc/flute.html?rev=938&format=raw Source: http://www.dsource.org/projects/descent/browser/trunk/descent.unittest/flute/src/org/dsource/descent/unittests/flute.d?rev=939&format=raw Naming module: http://www.dsource.org/projects/descent/browser/trunk/descent.unittest/flute/src/org/dsource/descent/unittests/naming.d?rev=938&format=raw If all you want to do is run all your unit tests & track whether they pass or fail, use UnittestWalker, which can already do that. Flute is better if you plan to run your unit tests one by one. Flute will hopefully soon be integrated with Descent which will give a UI for you to track & run specific unit tests, change the source and instantly re-run a particular test (hopefully with all the compilation, etc. being transparent), etc. However, since there's _not_ a UI right now, I'd suggest (once you get a feel for it), piping input to stdin so you can create your own test suites that run only particular tests, etc., since re-typing all those test names won't be fun. In its current form (which will likely be the final command-line form unless someone wants to fork it), it doesn't support D2. I've actually only tested it with DMD 1.020 on Windows. It should work on both Tango and Phobos, but again I've only tested it on Phobos 1.020 and Tango 0.99.2, so I'm not 100% on that.
Dec 08 2007
"Robert Fraser" <fraserofthenight gmail.com> wrote inFlute is a natural extension of UnittestWalker which allows you to run unit tests one at a time, run only specific tests, track failures, errors, and passes, etc., etc. It integrates directly with D's unittest construct, so no additional coding on your part is necessary, just link in the Flute module and enjoy! If you want to name your tests, you will have to introduce a dependency on the naming module, however....In its current form (which will likely be the final command-line form unless someone wants to fork it), it doesn't support D2. I've actually only tested it with DMD 1.020 on Windows. It should work on both Tango and Phobos, but again I've only tested it on Phobos 1.020 and Tango 0.99.2, so I'm not 100% on that.Very, very nice ...
Dec 08 2007
Kris wrote:"Robert Fraser" <fraserofthenight gmail.com> wrote inYou don't have to name the tests; it's an option. If I choose to tie it to the Descent front-end, I'll remove the binary naming altogether.Flute is a natural extension of UnittestWalker which allows you to run unit tests one at a time, run only specific tests, track failures, errors, and passes, etc., etc. It integrates directly with D's unittest construct, so no additional coding on your part is necessary, just link in the Flute module and enjoy! If you want to name your tests, you will have to introduce a dependency on the naming module, however....Okay, I can sense the sarcasm, but as I said this is a WIP, and I'm only releasing it because this is likely the last time it'll be useable without a frontend or telnet client.In its current form (which will likely be the final command-line form unless someone wants to fork it), it doesn't support D2. I've actually only tested it with DMD 1.020 on Windows. It should work on both Tango and Phobos, but again I've only tested it on Phobos 1.020 and Tango 0.99.2, so I'm not 100% on that.Very, very nice ...
Dec 08 2007
"Robert Fraser" <fraserofthenight gmail.com> wrote?? Woah there ... that was a sincere compliment, Robert. I truly think what you've done is awesome, just like the Descent work. Sorry if it came across any other way ...Very, very nice ...Okay, I can sense the sarcasm, but as I said this is a WIP,
Dec 08 2007
Kris wrote:"Robert Fraser" <fraserofthenight gmail.com> wroteOh, I'm sorry I misunderstood. Thanks for the complement. Tested it with Tango 0.99.1, 0.993 and Phobos in 1.024, works fine in all. Does NOT compile under D2 (likely under any version). I may add a version(CommandLine), so any updates can be usd in the CL version.?? Woah there ... that was a sincere compliment, Robert. I truly think what you've done is awesome, just like the Descent work. Sorry if it came across any other way ...Very, very nice ...Okay, I can sense the sarcasm, but as I said this is a WIP,
Dec 09 2007