コード例 #1
0
        public void Create_InAutoDiscoveryModeWhenNoCachingServiceIsRegistered_ThrowsException()
        {
            var serviceProvider           = new Mock <IServiceProvider>();
            var mode                      = CachingAdapterMode.AutomaticDiscovery;
            CachingAdapterFactory factory = new CachingAdapterFactory(serviceProvider.Object);


            var ex = Record.Exception(() => factory.Create(mode));


            Assert.NotNull(ex);
            Assert.IsType <InvalidOperationException>(ex);
            Assert.Equal("No cacing service is registered.", ex.Message);
        }
コード例 #2
0
        public void Create_ForANotSupportedMode_ThrowsException()
        {
            var serviceProvider           = new Mock <IServiceProvider>();
            var mode                      = (CachingAdapterMode)(-1);
            CachingAdapterFactory factory = new CachingAdapterFactory(serviceProvider.Object);


            var ex = Record.Exception(() => factory.Create(mode));


            Assert.NotNull(ex);
            Assert.IsType <NotSupportedException>(ex);
            Assert.Equal($"Caching adapter mode {mode} is not supprted.", ex.Message);
        }
コード例 #3
0
        public void Create_ForGivenMode_ReturnsExpectedAdapter(CachingAdapterMode mode, Type expectedInstanceType)
        {
            var serviceProvider = new Mock <IServiceProvider>();

            serviceProvider.Setup(x => x.GetService(typeof(IDistributedCache))).Returns(Mock.Of <IDistributedCache>());
            serviceProvider.Setup(x => x.GetService(typeof(IMemoryCache))).Returns(Mock.Of <IMemoryCache>());
            serviceProvider.Setup(x => x.GetService(typeof(ICachingAdapter))).Returns(new FakeCachingAdapter());

            CachingAdapterFactory factory = new CachingAdapterFactory(serviceProvider.Object);


            var adapter = factory.Create(mode);


            Assert.NotNull(adapter);
            Assert.IsType(expectedInstanceType, adapter);
        }