我對Unity和依賴注入有點新。我試圖寫一個單元測試,是這樣的:在UnityContainer中註冊NUnit DynamicMock實例
[Test]
public void Test()
{
UnityContainer container = new UnityContainer();
DynamicMock myMock = new DynamicMock(typeof(IMyInterface));
container.RegisterInstance(typeof(IMyInterface), myMock.MockInstance); //Error here
// Continue unit test...
}
當這個測試執行,容器拋出RegisterInstance方法內部的ArgumentNullException與消息Value cannot be null. Parameter name: assignmentValueType.
堆棧的頂部一行跟蹤是at Microsoft.Practices.Unity.Utility.Guard.TypeIsAssignable(Type assignmentTargetType, Type assignmentValueType, String argumentName)
。
爲什麼我不能在UnityContainer中註冊MockInstance,我該如何解決這個問題?
相關:http://stackoverflow.com/questions/2098937/proper-way-to-mock-repository-objects-for-unit-tests-using-moq-and-unity/2102104 – 2010-04-11 07:04:16
你問過你的問題在Unity Codeplex網站上? http://unity.codeplex.com/你可能會在那裏得到答案。 – 2010-04-24 14:45:44