NDbUnit Project Officially Updated to Handle FK Relations

For those of you who are long-time followers of my blog, you are probably aware that as long ago as this post from October of 2007 (originally from my blog’s former home on the Microsoft Live! Spaces site but since ported over here so I wouldn’t lose it when I declared my independence from Live! Spaces), I have been a user of the NDbUnit utility to assist me in the management of the state of my database content during integration tests of my data-access-layer code.

In that same post from way back then, I also indicated that I had come upon a real issue with the NDbUnit 1.1 code in re: the way it handled FK relations during INSERT and DELETE operations and also that I had incorporated a fix to the code into my own copy of the source and would make that available (in binary form) to anyone who was interested in it.

I’m happy to announce that I have now (finally!) gotten around to merging the content of my changes into the main NDbUnit project repository on Google Code so that anyone else interested can also go get this fix without having to ask me directly and wait for me to e-mail the binary to you.  Called v1.2, the source for this change as well as others that various people have sent to me over the last 18 months are now incorporated into the available source code for all to download and build.

Misc Cleanup

In addition to incorporating the specific FK-relation fixes, I also took the opportunity to do some other housekeeping on the code…

  • ported the code from .NET 1.1 to the 2.0 CLR (1.1 support is hereby abandoned in the project, sorry all you laggards still on 1.1 all these years later smile_tongue)
  • removed the very old version of NUnit from the tests and migrated them to MbUnit 3.x/Gallio (note that this has nothing to do with the NDbUnit project itself continuing to work with whatever unit test framework you choose — this is just about what unit test framework the project’s own internal tests are written against)
  • introduced various bug-fixes submitted to me over the years

Roadmap, contributions, etc.

If anyone is interested, I have also posted the project roadmap for the ‘official’ upcoming 1.2 release as well as the several planned future releases on a wiki page for you to see for yourself what’s planned next.  If anyone is more driven than myself to add support for additional database types to the project, feel free to submit a patch or two supporting your favorite DB platform.

Happy coding~!