예제 #1
0
        public void ResolveEnumerable()
        {
            var volatileObject        = Create <List <IVolatileObject> >().Object;
            var componentRegistration = Create <Autofac.Core.IComponentRegistration>().Object;
            var componentRegistry     = Create <Autofac.Core.IComponentRegistry>();

            componentRegistry.Setup(o => o.TryGetRegistration(It.IsAny <Autofac.Core.TypedService>(), out componentRegistration)).Returns(true);
            var scope = Create <ILifetimeScope>();

            scope.Setup(o => o.ComponentRegistry).Returns(componentRegistry.Object);
            scope.Setup(o => o.ResolveComponent(componentRegistration, It.IsAny <Autofac.Core.Parameter[]>())).Returns(volatileObject);

            var container = new VolatileContainer(scope.Object);

            Assert.AreEqual(volatileObject, container.ResolveEnumerable <IVolatileObject>());
        }