public void MultipleImplementationAreRegisteredByTypeAsParameter_ResolvedCollectionContainsAllImplementations()
        {
            var adapter = new UnityContainerAdapter();

            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 UnityContainerAdapter();
            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);
        }