public void FieldInjectionFromSingleInstanceOfType() { ImplWithInstanceIndex.instanceCount = 0; BindingBuilder bb = new BindingBuilder(); bb.BindTypeToSingleInstance(typeof(ImplWithInstanceIndex)); Injector injector = UniInjectUtils.CreateInjector(); injector.AddBindings(bb); NeedsFieldInjection needsInjection1 = injector.CreateAndInject <NeedsFieldInjection>(); NeedsFieldInjection needsInjection2 = injector.CreateAndInject <NeedsFieldInjection>(); NeedsFieldInjection needsInjection3 = injector.CreateAndInject <NeedsFieldInjection>(); // Assert injection was successful Assert.NotNull(needsInjection1); Assert.NotNull(needsInjection2); Assert.NotNull(needsInjection3); // Assert only one instance was created Assert.AreEqual(1, needsInjection1.implWithInstanceCounter.instanceIndex); Assert.AreEqual(1, needsInjection2.implWithInstanceCounter.instanceIndex); Assert.AreEqual(1, needsInjection3.implWithInstanceCounter.instanceIndex); Assert.AreEqual(1, ImplWithInstanceIndex.instanceCount); }