Пример #1
0
        private IServiceProvider ConfigureSprocketWTW(IServiceCollection services)
        {
            SprocketWTWContainer       container = new SprocketWTWContainer();
            SprocketWTWServiceProvider provider  = new SprocketWTWServiceProvider(container);

            provider.Populate(services);
            return(provider);
        }
        public void RegisterComponentWithExplicitLifeCycle()
        {
            var moqMang  = GetMockLifetimeManagement();
            var moqCache = GetMockRegistrationCache();

            var container = new SprocketWTWContainer(moqMang.Object, moqCache.Object);

            Exception ex = Record.Exception(() => container.Register <ISimpleInterface, SimpleClass>(LifetimeEnum.Transient));

            Assert.Null(ex);
        }
        public void ResolveTypeNotRegisteredThrowsInvalidOperationException()
        {
            var moqMang  = GetMockLifetimeManagement();
            var moqCache = GetMockRegistrationCache();

            moqCache.Setup(t => t.Contains(typeof(ISimpleInterface))).Returns(false);

            var container = new SprocketWTWContainer(moqMang.Object, moqCache.Object);

            InvalidOperationException ex = Assert.Throws <InvalidOperationException>(() => { container.Resolve <ISimpleInterface>(); });

            Assert.NotNull(ex);
        }
 public SprocketWTWServiceProvider(SprocketWTWContainer container)
 {
     _container = container;
 }