Saya agak baru dalam Unity dan injeksi ketergantungan. Saya mencoba menulis unit test yang berbunyi seperti ini:
[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...
}
Saat pengujian ini dijalankan, container melemparkan ArgumentNullException ke dalam metode RegisterInstance dengan pesan Value cannot be null. Parameter name: assignmentValueType.
Baris teratas pelacakan tumpukan adalah at Microsoft.Practices.Unity.Utility.Guard.TypeIsAssignable(Type assignmentTargetType, Type assignmentValueType, String argumentName)
.
Mengapa saya tidak bisa mendaftarkan MockInstance dengan UnityContainer, dan bagaimana cara mengatasinya?