Rhino Mocks 3.3
Well, it has been a couple of months, but we have a new release of Rhino Mocks. I would like to thank Aaron Jensen, Ivan Krivyakov and Mike Winburn for contributing.
Probably the two big new features is the ability to call void methods using Expect.Call and the ability to use remoting proxies to mock classes that inherit from MarshalByRefObject. Rhino Mocks will now choose the appropriate mocking strategy based on the type you want.
Note: you cannot pass constructor arguments or create partial mocks with remoting proxies.
The change log is:
Bug Fixes:
- Fixing inconsistency in how Is.Equals handled ICollection instances, now it will compare them by their values, not their Equals()
- Fixing NASTY bug where setup result that were defined in a using(mocks.Ordered()) block were not registered properly.
Improvments:
- Changing error message to "are you calling a virtual (C#) / Overridable (VB) method?" - make it friendlier to VB guys.
- Exception for Record will not trigger a ReplayAll(), which can mask the exception.
- Adding a check for running on Mono to avoid calling Marshal.GetExceptionCode in that case.
New features:
- Adding support for calling void methods using Expect.Call
- Adding remoting proxies.
- Made IMethodOptions generic. Allows compile time type safety on Return.
- Adding a PublicFieldConstraint
As usual, you can get it here
Comments
Sweet!
Love the logo. Did you do that yourself?
Very nice, I was planning on talking about Mock objects at my next user group meeting anyway. This will help.
Kevin, no. :-)
I can't draw a straight line with a ruler.
Romeliz did it:
http://www.ayende.com/Blog/archive/2007/07/31/New-Rhino-Mocks-Logo.aspx
Great job! Thanks Oren and everyone else who contributed!
Good job Oren...
The delegate thing for void methods is clever. With the new language features, that'll reduce to a lambda.
() => SomeMethod();
Great! Thanks for the void method support. It bugs the crap out of me having to write extra lines to ignore the last call. This is going to reduce unnecessary code in the test codebase, which is always a good thing in my books.
Thanks a lot to the team!
Comment preview