Ejemplo n.º 1
0
        public void ShifterResolve_ARegisteredInterfaceIsResolved_TheInterfaceIsResolvedToADependedClass()
        {
            var shifter = new ShifterContainer();

            shifter.AddInstance(typeof(IResolveTest), new DefaultConstructorResolveTest());
            var resolvedClass = shifter.Resolve(typeof(IResolveTest)) as DefaultConstructorResolveTest;

            Assert.IsNotNull(resolvedClass);
            Assert.IsInstanceOfType(resolvedClass, typeof(DefaultConstructorResolveTest));
        }
Ejemplo n.º 2
0
        public void ShifterResolve_ARegisteredClassIsResolved_TheClassIsResolvedToADependedClass()
        {
            var shifter = new ShifterContainer();

            shifter.AddInstance(new RegisterClassBase().GetType(), new RegisterClassDerived());
            var resolvedClass = shifter.Resolve(typeof(RegisterClassBase)) as RegisterClassDerived;

            Assert.IsNotNull(resolvedClass);
            Assert.IsInstanceOfType(resolvedClass, typeof(RegisterClassDerived));
        }
Ejemplo n.º 3
0
        public void ShifterResolve_ARegisteredClassIsResolved_TheClassIsResolved()
        {
            var shifter = new ShifterContainer();

            shifter.AddInstance(new ResolveTestClass());
            var resolvedClass = shifter.Resolve(typeof(ResolveTestClass)) as ResolveTestClass;

            Assert.IsNotNull(resolvedClass);
            Assert.IsInstanceOfType(resolvedClass, typeof(ResolveTestClass));
        }
Ejemplo n.º 4
0
        public void WhenCallingResetItShouldBePossibleToRegisterInstancesAgain()
        {
            // Arrange
            var container = new ShifterContainer();

            // Act
            container.Reset();
            container.AddInstance("string");
            var resolvedValue = container.Resolve <string>();

            // Assert
            resolvedValue.Should().Be("string", "because we added it.");
        }
Ejemplo n.º 5
0
        public void AddNamedInstance_AnObjectIsRegisteredUnderAName_TheRegisteredObjectIsReturned()
        {
            container.AddNamedInstance("test", "Hello");

            Assert.AreSame("Hello", container.Resolve <string>("test"));
        }