コード例 #1
0
ファイル: ResolverTests.cs プロジェクト: mwjackson/ioc
        public void Resolving_a_factory_function_should_get_back_the_same_object_we_registered()
        {
            var registeredObject = new ClassWithNoArguments();
            Func<IClass> factoryFunction = () => registeredObject;

            var registrar = new Registrar().Satisfy<IClass>().With(factoryFunction);

            var resolvedObject = new Resolver(registrar.Registrations).Resolve<IClass>();

            Assert.That(ReferenceEquals(registeredObject, resolvedObject), Is.True, "the 2 object references are not the same");
        }
コード例 #2
0
ファイル: ResolverTests.cs プロジェクト: mwjackson/ioc
        public void Resolving_an_existing_object_should_get_the_same_object_back_that_we_registered()
        {
            var registeredObject = new ClassWithNoArguments();

            var registrar = new Registrar().Satisfy<IClass>().With(registeredObject);

            var resolvedObject = new Resolver(registrar.Registrations).Resolve<IClass>();

            Assert.That(ReferenceEquals(registeredObject, resolvedObject), Is.True, "the 2 object references are not the same");
        }
コード例 #3
0
ファイル: ResolverTests.cs プロジェクト: mwjackson/ioc
        public void Resolving_an_object_with_argument_of_type_that_has_been_registered_should_resolve_that_type_also()
        {
            var dependency = new ClassWithNoArguments();
            var registrar = new Registrar().Satisfy<ClassWithSingleDependency>().With<ClassWithSingleDependency>()
                .Satisfy<ClassWithNoArguments>().With(dependency);

            var resolvedObject = new Resolver(registrar.Registrations).Resolve<ClassWithSingleDependency>();

            Assert.That(resolvedObject, Is.InstanceOf<ClassWithSingleDependency>(), "expected resolved object to be of type ClassWithSingleDependency");
            Assert.That(resolvedObject.Argument1, Is.EqualTo(dependency), "expected dependency to have been resolved also");
        }
コード例 #4
0
ファイル: ResolverTests.cs プロジェクト: mwjackson/ioc
 public ClassWithSingleDependency(ClassWithNoArguments argument1)
 {
     Argument1 = argument1;
 }