May 2007 - Posts
After over 6 months of hard work the MbUnit 2.4 went to RTM tonight. Between the RC and the RTM.
- [MBUNIT-27] - ExpectedExceptionAttribute does not verify message
- [MBUNIT-79] - "Console.Out" tab not cleared on assembly reload
- [MBUNIT-103] - TD.Net doesn't report mismatched version
- [MBUNIT-104] - DataFixture ForEachTest XPath fails if it has a /
- [MBUNIT-105] - HTML Report encoding sucks
- [MBUNIT-107] - Assert.AreNotEqual() does not increment assertion count
- [MBUNIT-109] - AssemblyCleanup requires a static class
- [MBUNIT-112] - Failed Combinatorial Tests do not call tear down
- [MBUNIT-117] - Double-clicking .mbunit project file throws exception while loading assemblies into GUI
- [MBUNIT-121] - Error when report type is supplied but no report folder
- [MBUNIT-11] - FixtureSetUp Log missing in GUI
- [MBUNIT-77] - Tree order is not sorted
- [MBUNIT-122] - Console help should only be shown when necessary
- [MBUNIT-124] - Run button should not be enabled if no assemblies are loaded
- [MBUNIT-63] - RowTest and decimal parameters
- [MBUNIT-65] - Open MbUnit to Last Test
- [MBUNIT-118] - Extract Embedded Resource Attribute
- [MBUNIT-119] - Test non-public members of class. Also Test non-public classes.
- [MBUNIT-120] - Use DateTime in RowTests
- [MBUNIT-123] - Specify path for AutoRunner reports
My thanks to the folks that worked hard on this release, Graham Hay, Vadim Kreynin, Julian Hidalgo and Phil Haack.
In order for MbUnit to reach 2.4 the thanks once again to all the people that worked hard, Graham Hay, Vadim Kreynin, Julian Hidalgo, Phil Haack, Joey Calisay, Ben Hall, Jeff Brown, Tomáš Chaloupka, Albert Weinert, Marc Stober, Johan Appelgren, Cathal Connolly and Todd Menier.
- .NET 1.0 support dropped.
- .NET 1.1 support in 2.4 merged into the main line (No need for MbUnit.Framework.1.1.dll)
- Added greater support for .NET 2.0 including (MbUnit.Framework.2.0.dll)
- Database rollback (now no longer need COM+ if your using .NET 2.0).
- Private method testing (see Vadims articles here and here).
- Generics in certain Asserts.
- Support for NUnit style explicit attributes.
As well as a great deal of bug fixes and functional improvements.
The road ahead.
2.4 signals the end of major releases for 2.*, interim releases with tweaked functionality and bug fixes will still occur to 2.4 (starting with 2.4.1) but the next major release of MbUnit will be v3 codenamed MbUnit Gallio. In the coming weeks the core development team will be stepping up through the gears on MbUnit Gallio.
This month is so far shaping up to be the slowest blogging month ever, a combination of paying and oss work, and this last week a nasty lower back injury (from lifting a bag of sand). Cronic back pain is no fun (you can't sit, stand, walk or lie down) but its only muscle and not my spine (10x worst level of pain) and I am slowly getting back to normal.
Onto my post, the ASP.NET team announced the ASP.NET futures May CTP today. This CTP builds on the DLR work announced at Mix (and the support for IronPython and M-JScript in ASP.NET) as well as the all new Dynamic Data Controls. The DDC was talked about at Mix, see Maheshp and Polita's talk. So what is the DDC?
The DDC is very much like Rails scaffolding, lets get that out of the way right now :) DDC controls allow you to take a given db table schema and create a web GUI directly from that data. So for example we create a DDC page called Tasks.aspx which is matched to a DB table called Tasks, we then drop in say a DDC list control and the DDC will render a gridview of the data that is fully sorted and paged. What's more a DDC page behaves like any other ASP.NET page (so you can drop in a MasterPage styling etc). In this CTP several DDC controls are exposed for rendering your data, some of which you can chain together (say the list and insert controls) or if you wish you can use the DynamicDataControl to render a complete display, filter, navigation and insert interface for you. Under the the covers the DDC is using the DLR to work its magic, however you can work with the DDC with any ASP.NET supported language (C# to IronPython etc). What might have taken you 20/30 mins to write, now takes you a few mins!
This is the first CTP of the DDC and there is plenty yet to do, if you do have any questions leave them in the comments and I'll try where possible to seek out the answers (for what it is worth my own questions include custom styling\css mods of the DDC and can the DDC be connected to a Sproc or a LINQ query?).
Want to learn more? Check out the the Mix talk I mentioned as well the DDC section of the ASP.NET quick start examples.
Phil Haack has two great posts.
MbUnit 2.4 will thanks to its improved .NET 2.0 support support generics for collection asserts and the IsNotEmpty and IsEmpty tests via the GenericAssert class.
Roy and Ayende's cross blog debate about VSTS and OSS tools has struck a cord in my mind. If microsoft's customers want to extend the VSTS with OSS tools why should anything stand in their way (they have paid for it to meet there needs after all). What I would like to see is Microsoft openly enage the OSS tool teams in some discussion about how the product can better integrate with OSS tools and and vice-versa.