public void CallCacheProviderSaveInCache_WithCorrectParameters_WhenCacheProviderProviderReturnsNull() { //Arrange var regions = new List <Region>(); var mockedMappingService = new Mock <IMappingService>(); var mockedRegionsService = new Mock <IRegionsService>(); mockedRegionsService.Setup(x => x.GetAllRegions()).Returns(regions); var mockedBarsService = new Mock <IBarsService>(); var mockedCacheProvider = new Mock <ICacheProvider>(); mockedCacheProvider.Setup(x => x.GetItem(It.IsAny <string>())).Returns(null); mockedCacheProvider.Setup(x => x.SaveInCache(It.IsAny <string>(), It.IsAny <object>(), 60)) .Verifiable(); var mockedServerProvider = new Mock <IServerProvider>(); var mockedPathProvider = new Mock <IPathProvider>(); var controller = new AddBarController(mockedMappingService.Object, mockedRegionsService.Object, mockedBarsService.Object, mockedCacheProvider.Object, mockedServerProvider.Object, mockedPathProvider.Object); //Act controller.Index(); //Assert mockedCacheProvider.Verify(x => x.SaveInCache("regions", regions, 60), Times.Once()); }
public void CallCacheProviderGetItemWithCorrectParameter_AndNotCallRegionsServiceGetAllRegions_WhenProviderReturnsItems() { //Arrange var regions = new List <Region>(); var mockedMappingService = new Mock <IMappingService>(); var mockedRegionsService = new Mock <IRegionsService>(); mockedRegionsService.Setup(x => x.GetAllRegions()).Verifiable(); var mockedBarsService = new Mock <IBarsService>(); var mockedCacheProvider = new Mock <ICacheProvider>(); mockedCacheProvider.Setup(x => x.GetItem(It.IsAny <string>())).Returns(regions); var mockedServerProvider = new Mock <IServerProvider>(); var mockedPathProvider = new Mock <IPathProvider>(); var controller = new AddBarController(mockedMappingService.Object, mockedRegionsService.Object, mockedBarsService.Object, mockedCacheProvider.Object, mockedServerProvider.Object, mockedPathProvider.Object); //Act controller.Index(); //Assert mockedCacheProvider.Verify(x => x.GetItem("regions"), Times.Once()); mockedRegionsService.Verify(x => x.GetAllRegions(), Times.Never()); }