У меня есть следующий код, использующий контейнер IoC lightcore.
Но происходит сбой с «NUnit.Framework.AssertionException: содержащиеся объекты равны», который указывает, что объекты, которые должны быть переходными, не являются.
Это ошибка в Lightcore, или я делаю это неправильно? Мой немецкий недостаточно хорош, чтобы читать документацию.
[Test]
public void JellybeanDispenserHasNewInstanceEachTimeWithDefault()
{
var builder = new ContainerBuilder();
builder.DefaultControlledBy<TransientLifecycle>();
builder.Register<IJellybeanDispenser, VanillaJellybeanDispenser>();
builder.Register<SweetVendingMachine>().ControlledBy<TransientLifecycle>();
builder.Register<SweetShop>();
IContainer container = builder.Build();
SweetShop sweetShop = container.Resolve<SweetShop>();
SweetShop sweetShop2 = container.Resolve<SweetShop>();
Assert.IsFalse(ReferenceEquals(sweetShop, sweetShop2), "Root objects are equal");
Assert.IsFalse(ReferenceEquals(sweetShop.SweetVendingMachine, sweetShop2.SweetVendingMachine), "Contained objects are equal");
Assert.IsFalse(ReferenceEquals(sweetShop.SweetVendingMachine.JellybeanDispenser, sweetShop2.SweetVendingMachine.JellybeanDispenser), "services are equal");
}