public async Task VaccumsTheCache() { var apiClient = Substitute.For<IApiClient>(); var cache = Substitute.For<IBlobCache>(); cache.InvalidateAll().Returns(Observable.Return(Unit.Default)); var received = false; cache.Vacuum().Returns(x => { received = true; return Observable.Return(Unit.Default); }); var modelService = new ModelService(apiClient, cache, Substitute.For<IAvatarProvider>()); await modelService.InvalidateAll(); Assert.True(received); }
public async Task InvalidatesTheCache() { var apiClient = Substitute.For<IApiClient>(); var cache = new InMemoryBlobCache(); var modelService = new ModelService(apiClient, cache, Substitute.For<IAvatarProvider>()); var user = await modelService.InsertUser(new AccountCacheItem(CreateOctokitUser("octocat"))); Assert.Equal(1, (await cache.GetAllObjects<AccountCacheItem>()).Count()); await modelService.InvalidateAll(); Assert.Equal(0, (await cache.GetAllObjects<AccountCacheItem>()).Count()); }