Beispiel #1
0
        public void Get_ThrowsException_GivenComponentTypeForWhichThereIsNoFactoryAvailable()
        {
            // Arrange
            var factory = CreateFactory <TestComponent1>("Component 1");

            var factoryProvider = new ComponentFactoryProvider(new[] { factory });

            // Act
            // Assert
            Assert.That(() => factoryProvider.Get(typeof(TestComponent2)),
                        Throws.TypeOf <ComponentFactoryNotFoundException>()
                        .With.Message.Contains(typeof(TestComponent2).FullName)
                        .And.Message.Contains(typeof(TestComponent1).FullName));
        }
Beispiel #2
0
        public void Get_ShouldReturnFactory_GivenComponentType()
        {
            // Arrange
            var factory1 = CreateFactory <TestComponent1>("Component 1");
            var factory2 = CreateFactory <TestComponent2>("Component 2");
            var factory3 = CreateFactory <TestComponent3>("Component 3");

            var factoryProvider = new ComponentFactoryProvider(new[] { factory1, factory2, factory3 });

            // Act
            var actual = factoryProvider.Get(typeof(TestComponent2));

            // Assert
            Assert.That(actual, Is.EqualTo(factory2));
        }