On May 11, 2011, at 10:34 AM, Ben Stabile wrote:
> As you know, one of the reasons I'm discovering these little
> "quirks" is because in converting to .NET I'm building a lot of unit
That's right, you're doing the .NET translation, I forgot.
> Obviously for a conversion, the unit tests are mandatory. Do you
> have internal test batteries that you run against these projects?
Nope, and it's a big failing. MASON and ECJ both badly need a testing
regimen. As they're academic projects, our major source of funding
for such things are grants. MASON's got a small NSF grant approved
for exactly, but with the budget cut at NSF it's looking unlikely to
be awarded. Which means that they'll have to wait unless others can
start pitching in.
Last year I built an extensive manual for ECJ, which required me to go
through ECJ with a fine-toothed comb, kicking up a variety of
(thankfully minor) bugs and misfeatures. It was an enormously
valuable exercise. I'm now doing the same thing with MASON but it's
taking quite a long time given my current academic schedule. So
anyway, it's high on the list.
> I would volunteer to build such batteries myself were it not for
> severe constraints on my time. Surely there are comp science
> students there who could be enlisted to practice formal testing
> techniques on your projects? ;-)
Tests for complex 70K system are nontrivial!
> In any case, I have a HUGE amount of work to do to translate the
> MASON code (Java3D, OpenGL, Swing, etc.). It is frankly quite
> daunting, and I'm still trying to find the best way to hook
> appropriately into WPF and Direct3D. Yikes!
As I've mentioned before, you are totally nuts. :-) Good luck!