public void MultipleImplementationAreRegisteredByTypeAsParameter_ResolvedCollectionContainsAllImplementations() { var adapter = new ExtendedSimpleContainerAdapter(); adapter.RegisterCollection(typeof(ITestDependency), new[] { typeof(TestDependencyA), typeof(TestDependencyB) }); var collection = adapter.Resolve <IEnumerable <ITestDependency> >().ToArray(); var firstItem = collection.First(); var secondItem = collection.Last(); firstItem.Should().BeOfType <TestDependencyA>(); secondItem.Should().BeOfType <TestDependencyB>(); }
public void MultipleImplementationAreRegisteredByInstance_ResolvedCollectionContainsAllImplementations() { var adapter = new ExtendedSimpleContainerAdapter(); var instanceA = new TestDependencyA(); var instanceB = new TestDependencyB(); adapter.RegisterCollection(new ITestDependency[] { instanceA, instanceB }); var collection = adapter.Resolve <IEnumerable <ITestDependency> >().ToArray(); var firstItem = collection.First(); var secondItem = collection.Last(); firstItem.Should().BeSameAs(instanceA); secondItem.Should().BeSameAs(instanceB); }