public void CachedServiceClient_does_not_return_NoCache_after_FailedResponse() { var client = GetCachedServiceClient(); FailsAfterOnce.Count = 0; var request = new FailsAfterOnce { ETag = "etag", CacheControl = CacheControl.NoCache }; var response = client.Get(request); Assert.That(client.ErrorFallbackHits, Is.EqualTo(0)); Assert.That(response, Is.EqualTo(request)); try { client.Get(request); Assert.Fail("Should throw"); } catch (Exception) {} }
public async Task CachedServiceClient_does_return_cached_after_FailedResponse_Async() { var client = GetCachedServiceClient(); FailsAfterOnce.Count = 0; var request = new FailsAfterOnce { ETag = "etag", MaxAge = TimeSpan.FromSeconds(0) }; var response = await client.GetAsync(request); Assert.That(client.ErrorFallbackHits, Is.EqualTo(0)); Assert.That(response, Is.EqualTo(request)); response = await client.GetAsync(request); Assert.That(client.ErrorFallbackHits, Is.EqualTo(1)); Assert.That(response, Is.EqualTo(request)); }