Example #1
0
        public void SelectConstructor()
        {
            var constructorSelector = new LargestConstructorSelector();
            var selectedConstructor = constructorSelector.SelectConstructor(typeof(ConstructorSelectionTestComponent));

            Assert.Equal(3, selectedConstructor.GetParameters().Length);
        }
        public void PrepareToComposeUsingConstructorWithNullComponentType()
        {
            var container           = new ComponentContainer();
            var composer            = new ReflectionComponentComposer(container);
            var constructorSelector = new LargestConstructorSelector();

            Assert.Throws <ArgumentNullException>(() =>
                                                  composer.PrepareToComposeUsingConstructor(null, constructorSelector));
        }
        public void ComposeUsingConstructor()
        {
            var container           = new ComponentContainer();
            var composer            = new ReflectionComponentComposer(container);
            var constructorSelector = new LargestConstructorSelector();
            var component           = composer.ComposeUsingConstructor(typeof(TestComponent), true, constructorSelector);

            Assert.IsType <TestComponent>(component);
        }
        public void PrepareToComposeUsingConstructor()
        {
            var container           = new ComponentContainer();
            var composer            = new ReflectionComponentComposer(container);
            var constructorSelector = new LargestConstructorSelector();
            var componentType       = typeof(TestComponent);

            composer.PrepareToComposeUsingConstructor(componentType, constructorSelector);

            var isPrepared = composer.IsPreparedToComposeUsingConstructor(componentType, constructorSelector);

            Assert.True(isPrepared);
        }
 public ContainerComponentTests()
 {
     this.Container           = new ComponentContainer();
     this.Composer            = new ReflectionComponentComposer(this.Container);
     this.ConstructorSelector = new LargestConstructorSelector();
 }