Beispiel #1
0
        public void UsingInitialImplType_resolves_impl_from_resolver(IResolver resolver, ServiceImpl1 impl)
        {
            var sut = new AutofacDecoratorBuilder(resolver, typeof(IServiceInterface));

            Mock.Get(resolver)
            .Setup(x => x.Resolve(typeof(ServiceImpl1), It.IsAny <IEnumerable <Parameter> >()))
            .Returns(impl);

            var result = sut.UsingInitialImplType(typeof(ServiceImpl1));

            Assert.That(result?.Implementation, Is.SameAs(impl));
        }
Beispiel #2
0
        public void UsingInitialImplType_passes_params_to_resolver(IResolver resolver,
                                                                   ServiceImpl1 impl,
                                                                   Parameter[] parameters)
        {
            var sut = new AutofacDecoratorBuilder(resolver, typeof(IServiceInterface));

            Mock.Get(resolver)
            .Setup(x => x.Resolve(typeof(ServiceImpl1), parameters))
            .Returns(impl);

            var result = sut.UsingInitialImplType(typeof(ServiceImpl1), parameters);

            Assert.That(result?.Implementation, Is.SameAs(impl));
        }
Beispiel #3
0
        public void UsingInitialImplType_throws_exception_if_impl_type_does_not_derive_from_service(IResolver resolver)
        {
            var sut = new AutofacDecoratorBuilder(resolver, typeof(IServiceInterface));

            Assert.That(() => sut.UsingInitialImplType(typeof(DifferentImpl)), Throws.ArgumentException);
        }