Why me?

time to read 2 min | 207 words

I just chased a bug that basically resolved into:

static NHibernateNullablesSupport()
{
   tINullableType = Type.GetType("Nullables.INullableType, " + NullableAsm, false);
}

For those that are unfamiliar with GetType, the last parameter is bool throwOnError, passing false ensure that it wouldn't throw if it can't find the type. But it did.

Eventually I tracked it down to:

MbUnit.AddIn.MbUnitTestRunner.AssemblyResolveHandler

Which will try to resolve an assembly, but will throw if it is not found. Breaking the behavior of the above code. I don't mind the bug, it is reasonable action on the part of MbUnit, since I doubt that the implementer thought of this scenario. It is just I am starting to feeling that I usually have a very short time to bug finding in very wierd corner cases...