Contract Verifiers in MbUnit v3.0.7

Jeff Brown has announced the release of Gallio v3.0.6. This new major version contains numerous new features and fixes which have been implemented during the last 5 months mostly by Jeff and Graham. (See the release note for more details)

We made some notable additions to the contract verifier namespace as well:

  • New syntax based on the declaration of a read-only field rather than an attribute of the test fixture (breaking change)

  • Two new contract verifiers for collection-based classes (ICollection<T> and IList<T>)

  • New experimental contract verifier that checks for some aspects of immutability in a cumstom types
But the work is far for being complete. Here is what you can expect in the future v3.0.7:
  • New contract verifier for implementations of the generic IDictionary interface.

  • New property tester to easily verify the consistency of a property getter/setter.

  • Better immutability contract verifier with additional tests and more possible customizations.

  • Improved stack trace data handling (so that double-clicking a failing test will lead you directly to the declaration of your contract field)

  • Better failure messages (with a new Assert.Explain helper method to decorate inner assertion failures, so we can provide more meaningful messages)

  • More documentation in the Gallio Book.

So, let's go back to work...