Exemplo n.º 1
0
        public void CreateInstance_Should_Throw_Exception_When_UnknownInstances_Has_More_Than_One_Entry_Of_The_Same_Type()
        {
            // Arrange
            var container        = ContainerFactory.Create();
            var unknownInstance1 = new ContainerUnknownInstanceTestClass();
            var unknownInstance2 = new ContainerUnknownInstanceTestClass();

            // Act
            // Assert
            ExceptionAssert.Thrown <ArgumentException>(
                () => container.CreateInstance <ContainerTestClassWithUnknownInstance>(unknownInstance1, unknownInstance2),
                $"unknownInstances has more than one entry of the same type.{Environment.NewLine}Parameter name: unknownInstances");
        }
Exemplo n.º 2
0
        public void CreateInstance_Should_Set_UnknownInstances()
        {
            // Arrange
            var container       = ContainerFactory.Create();
            var unknownInstance = new ContainerUnknownInstanceTestClass();

            // Act
            var instance = container.CreateInstance <ContainerTestClassWithUnknownInstance>(unknownInstance);

            // Assert
            Assert.AreSame(unknownInstance, instance.PropertyUnknownInstance);
            Assert.AreSame(unknownInstance, instance.ConstructorUnknownInstance);
        }
Exemplo n.º 3
0
        public void Get_Should_Set_UnknownInstances()
        {
            // Arrange
            var container = ContainerFactory.Create();

            container.RegisterImplementation <IContainerTestInterfaceWithUnknownInstance, ContainerTestClassWithUnknownInstance>();
            var unknownInstance = new ContainerUnknownInstanceTestClass();

            // Act
            var instance = container.Get <IContainerTestInterfaceWithUnknownInstance>(unknownInstance);

            // Assert
            Assert.AreSame(unknownInstance, instance.PropertyUnknownInstance);
            Assert.AreSame(unknownInstance, instance.ConstructorUnknownInstance);
        }
Exemplo n.º 4
0
 public ContainerTestClassWithUnknownInstance(ContainerUnknownInstanceTestClass constructorUnknownInstance)
 {
     _constructorUnknownInstance = constructorUnknownInstance;
 }