Exemplo n.º 1
0
        public void ShouldSupportTwoRegistrations()
        {
            ITargetContainer targets = new TargetContainer();
            var simpleType           = new NoCtor();

            ITarget target1 = Target.ForObject("hello world");
            ITarget target2 = Target.ForObject(new NoCtor());

            targets.Register(target1);
            targets.Register(target2);
            Assert.Same(target1, targets.Fetch(typeof(string)));
            Assert.Same(target2, targets.Fetch(typeof(NoCtor)));
        }
        public void AutoInjectedFunc_ShouldResolveSingle()
        {
            // Arrange
            var expectedInstance = new NoCtor();
            var targets          = CreateAutoFuncTargetContainer();

            targets.RegisterObject(expectedInstance);
            var container = CreateContainer(targets);

            // Act
            var func = container.Resolve <Func <NoCtor> >();

            // Assert
            Assert.NotNull(func);
            Assert.Same(expectedInstance, func());
        }
        public void AutoInjectedFunc_ShouldResolveAnEnumerable()
        {
            // Arrange
            var instances = new NoCtor[] { new NoCtor(), new NoCtor(), new NoCtor() };
            var targets   = CreateAutoFuncTargetContainer();

            targets.RegisterObject(instances[0]);
            targets.RegisterObject(instances[1]);
            targets.RegisterObject(instances[2]);
            var container = CreateContainer(targets);

            // Act
            var func = container.Resolve <Func <IEnumerable <NoCtor> > >();

            // Assert
            Assert.Equal(instances, func());
        }
Exemplo n.º 4
0
 public MultipleCtor(NoCtor cl)
 {
 }
Exemplo n.º 5
0
 public ValidClass(NoCtor cl)
 {
 }