Surefire Report

Summary

[Summary] [Package List] [Test Cases]



TestsErrors FailuresSkippedSuccess RateTime
106700299.813%10.783


Note: failures are anticipated and checked for with assertions while errors are unanticipated.



Package List

[Summary] [Package List] [Test Cases]



PackageTestsErrors FailuresSkippedSuccess RateTime
org.apache.http.client.cache29000100%0.383
org.apache.http.impl.client.cache.memcached29000100%0.121
org.apache.http.impl.client.cache.ehcache24000199.583%1.171
org.apache.http.impl.client.cache76900199.87%9.108


Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers.

org.apache.http.client.cache

ClassTestsErrors FailuresSkippedSuccess RateTime
TestHttpCacheEntry29000100%0.383

org.apache.http.impl.client.cache.memcached

ClassTestsErrors FailuresSkippedSuccess RateTime
TestMemcachedHttpCacheStorage20000100%0.107
TestSHA256HashingScheme1000100%0.002
TestMemcachedCacheEntryImpl6000100%0.012
TestMemcachedCacheEntryFactoryImpl1000100%0
TestPrefixKeyHashingScheme1000100%0

org.apache.http.impl.client.cache.ehcache

ClassTestsErrors FailuresSkippedSuccess RateTime
TestEhcacheProtocolRequirements23200199.569%1.123
TestEhcacheHttpCacheStorage8000100%0.048


Test Cases

[Summary] [Package List] [Test Cases]

TestCacheValidityPolicy

testCorrectContentLengthDoesntInvalidateEntry0.003
testResponseIsNotFreshIfFreshnessLifetimeEqualsCurrentAge0.001
testProxyRevalidateIsTrueWhenDirectiveIsPresent0.005
testMayReturnStaleIfErrorInResponseIsTrueWithinStaleness0.004
testFreshnessLifetimeIsSMaxAgeIfPresent0
testFreshnessLifetimeIsMaxAgeEvenIfExpiresIsPresent0.001
testMalformedCacheControlMaxAgeHeaderReturnsZero0.001
testMalformedContentLengthReturnsNegativeOne0.001
testApparentAgeIsMaxIntIfDateHeaderNotPresent0.001
testWrongContentLengthInvalidatesEntry0
testProxyRevalidateIsFalseIfDirectiveNotPresent0.001
testResponseIsNotFreshIfCurrentAgeExceedsFreshnessLifetime0.001
testHeuristicFreshnessLifetime0.001
testCorrectedReceivedAgeIsApparentAgeIfLarger0
testMustRevalidateIsTrueWhenDirectiveIsPresent0
testMayReturnStaleWhileRevalidatingIsFalseWhenPastStaleness0.001
testMayNotReturnStaleIfErrorInResponseAndAfterRequestWindow0.001
testCorrectedReceivedAgeIsAgeHeaderIfLarger0
testMayReturnStaleIfErrorInRequestIsTrueWithinStaleness0.001
testMustRevalidateIsFalseIfDirectiveNotPresent0
testResponseDelayIsDifferenceBetweenResponseAndRequestTimes0.001
testCacheEntryIsRevalidatableIfHeadersIncludeETag0
testMayReturnStaleWhileRevalidatingIsTrueWhenWithinStaleness0
testHeuristicFreshnessLifetimeDefaultsProperly0
testMayReturnStaleWhileRevalidatingIsFalseWhenDirectiveEmpty0.001
testCorrectedInitialAgeIsCorrectedReceivedAgePlusResponseDelay0
testMalformedExpirationDateReturnsNull0
testHeuristicFreshnessLifetimeIsNonNegative0
testMayReturnStaleWhileRevalidatingIsFalseWhenDirectiveIsAbsent0
testMalformedAgeHeaderValueReturnsMaxAge0
testFreshnessLifetimeIsMaxAgeIfPresent0
testMissingContentLengthDoesntInvalidateEntry0
testResidentTimeSecondsIsTimeSinceResponseTime0
testCurrentAgeIsCorrectedInitialAgePlusResidentTime0
testCacheEntryIsNotRevalidatableIfNoAppropriateHeaders0
testApparentAgeIsResponseReceivedTimeLessDateHeader0
testFreshnessLifetimeIsFromExpiresHeaderIfNoMaxAge0.001
testNullResourceInvalidatesEntry0
testFreshnessLifetimeIsMostRestrictiveOfMaxAgeAndSMaxAge0
testFreshnessLifetimeIsSMaxAgeEvenIfExpiresIsPresent0.001
testNegativeApparentAgeIsBroughtUpToZero0.001
testMayNotReturnStaleIfErrorInResponseAndAfterResponseWindow0
testNegativeAgeHeaderValueReturnsMaxAge0
testCacheEntryIsRevalidatableIfHeadersIncludeLastModifiedDate0
testResponseIsFreshIfFreshnessLifetimeExceedsCurrentAge0.001

TestMemcachedHttpCacheStorage

testCachePutThrowsIOExceptionIfCannotSerializeEntry0.064
testCacheUpdateCanUpdateExistingEntry0.005
testTreatsNullFromMemcachedAsCacheMiss0.002
testTreatsAsCacheMissIfCannotReconstituteEntry0.003
testCacheUpdateCanUpdateExistingEntryWithRetry0.004
testTreatsAsCacheMissIfCantHashStorageKey0.001
testCacheRemoveHandlesKeyHashingFailure0.001
testSuccessfulCacheGet0.002
testSuccessfulCachePut0.002
testCacheRemove0.001
testTreatsNoneByteArrayFromMemcachedAsCacheMiss0.002
testCacheUpdateThrowsExceptionsIfCASFailsEnoughTimes0.005
testUpdateThrowsIOExceptionIfMemcachedTimesOut0.002
testThrowsExceptionOnUpdateIfCannotHashStorageKey0.001
testCacheRemoveThrowsIOExceptionOnMemcachedTimeout0.001
testCachePutFailsSilentlyWhenWeCannotHashAKey0.002
testCacheUpdateOverwritesNonMatchingHashCollision0.003
testThrowsIOExceptionIfMemcachedTimesOutOnGet0.001
testCacheUpdateCanUpdateNullEntry0.003
testThrowsIOExceptionWhenMemcachedPutTimesOut0.002

TestExponentialBackingOffSchedulingStrategy

testScheduleWithFiveFailedAttempts0.013
testScheduleWithThreeFailedAttempts0
testScheduleWithSixFailedAttempts0
testScheduleWithOneFailedAttempt0.001
testScheduleWithFourFailedAttempts0.001
testScheduleWithMaxNumberOfFailedAttempts0.001
testScheduleWithTwoFailedAttempts0.001
testScheduleWithoutPreviousError0

TestBasicHttpCache

testRecognizesComplete200Response0
testDoNotFlushCacheEntriesOnOptions0.001
testEntryUpdate0.005
testOriginalResponseWithNoContentSizeHeaderIsReleased0.003
testDoNotFlushCacheEntriesOnTrace0.001
testGetVariantCacheEntriesReturnsAllVariants0.002
testIncompleteResponseErrorProvidesPlainTextErrorMessage0
testTooLargeResponsesAreNotCached0.001
testDoNotFlushContentLocationEntryIfSafeRequest0
testCanFlushCacheEntriesAtUri0.001
testStoreInCachePutsNonVariantEntryInPlace0.001
testIgnoresIncompleteNon200Or206Responses0
testResponsesWithUnparseableContentLengthHeaderAreComplete0
testNullResourcesAreComplete0.001
testGetCacheEntryReturnsNullIfNoVariantInCache0.001
testRecognizesIncomplete200Response0.001
testGetCacheEntryReturnsNullOnCacheMiss0
testFlushContentLocationEntryIfUnSafeRequest0.002
testRecognizesComplete206Response0
testDoNotFlushCacheEntriesOnGet0.001
testDoNotFlushCacheEntriesOnHead0.001
testCacheUpdateAddsVariantURIToParentEntry0.001
testIncompleteResponseErrorProvidesNonEmptyErrorMessage0
testGetCacheEntryFetchesFromCacheOnCacheHitIfNoVariants0.001
testSmallEnoughResponsesAreCached0.002
testGetCacheEntryReturnsVariantIfPresentInCache0.001
testResponsesWithoutExplicitContentLengthAreComplete0
testGetVariantCacheEntriesReturnsEmptySetOnNoVariants0.001

TestEhcacheProtocolRequirements

testMustIncludeProxyAuthenticateHeaderFromAnOrigin407Response0.028
testSharedCacheMayCacheAuthorizedResponsesWithCacheControlPublic0.009
testGenerates504IfCannotRevalidateAMustRevalidateEntry0.006
testCannotCombinePartialResponseIfCacheEntryDoesNotHaveACacheValidator0.003
testResponsesToTRACEsAreNotCached0.002
testOrderOfMultipleContentEncodingHeadersIsPreservedOnResponses0.003
testOrderOfMultipleAllowHeadersIsPreservedOnResponses0.002
testConditionalRequestWhereAllValidatorsMatchMayBeServedFromCache0.007
testHEADResponseWithUpdatedContentMD5FieldMakeACacheEntryStale0.01
testDoesNotModifyContentMD5HeaderOnRequest0.002
test205ResponsesDoNotContainMessageBodies0.002
testDoesNotAddContentLocationToRequestIfNotPresent0.001
testValidationMustUseETagIfProvidedByOriginServer0.009
testTransmitsAgeHeaderIfIncomingAgeHeaderTooBig0.003
testOrderOfMultipleViaHeadersIsPreservedOnRequests0.003
testStripsBadlyDatedWarningsFromForwardedResponses0.003
testDoesNotAddEtagToOriginResponse0.003
testCacheIsNotUsedWhenRespondingToRequestWithCacheControlNoCache0.006
test206ResponseToIfRangeWithStrongValidatorReturnsAllEntityHeaders0.008
test304ResponseGeneratedFromCacheIncludesExpiresCacheControlAndOrVaryIfResponseMightDiffer0.022
testForwardedTRACERequestsDoNotIncludeAnEntity0.002
testUpdatesWarningHeadersOnValidation0.005
testWarnDatesAreAddedToWarningsOnLowerProtocolVersions0.002
test206ContainsContentLocationIfA200ResponseWouldHaveIncludedIt0.005
testRequestsNotExpecting100ContinueBehaviorShouldNotSetExpectContinueHeader0.001
test206ResponseReturnedToClientMustHaveDateHeader0.002
testDoesNotAddContentTypeHeaderToCachedResponseWithNoTransformIfNotPresent0.004
testMustDiscardCachedPartialResponseIfCacheValidatorsDoNotStronglyMatchAndDateHeadersAreEqual0.003
testExpect100ContinueIsNotSentIfThereIsNoRequestBody0.002
testDoesNotForwardOPTIONSWhenMaxForwardsIsZeroOnAbsoluteURIRequest0.002
testDoesNotAddContentTypeToRequestIfNotPresent0.001
testUnknownHeadersOnResponsesAreForwarded0.003
testOrderOfMultipleContentEncodingHeadersIsPreservedOnRequests0.001
testDoesNotAddLastModifiedToRequestIfNotPresent0.002
test100ContinueResponsesAreNotForwardedTo1_0ClientsWhoDidNotAskForThem0.001
testRequestsWithLowerProtocolVersionsGetUpgradedTo1_10.003
testOrderOfMultipleAcceptHeaderValuesIsPreservedOnRequests0.003
testDoesNotModifyServerResponseHeader0.002
testDoesNotAddContentEncodingHeaderToCachedResponseWithNoTransformIfNotPresent0.006
testDELETERequestsAreWrittenThroughToOrigin0.003
testMustDiscardLeastRecentPartialResponseIfCacheValidatorsDoNotStronglyMatch0.005
testRemovesWarningHeaderIfAllWarnValuesAreBadlyDated0.003
testPostInvalidatesCacheForThatUriInContentLocationHeader0.009
testDoesNotAddContentTypeHeaderToRequestIfNotPresent0.001
test2xxWarningsAreNotDeletedAfterSuccessfulRevalidation0.007
testNoStoreOnResponseIsNotStoredInCache0.002
test302ResponseWithoutExplicitCacheabilityIsNotReturnedFromCache0.002
testExpiresHeaderMatchesDateIfAddedToCacheHit0.003
testLowerOriginResponsesUpgradedToOurVersion1_10.002
test206ResponseGeneratedFromCacheMustHaveContentRangeOrMultipartByteRangesContentType0.006
testSharedCacheMustUseNewRequestHeadersWhenRevalidatingAuthorizedResponsesWithMustRevalidate0.007
testProperlyFormattedViaHeaderIsAddedToResponses0.004
testHigher1_XProtocolVersionsDowngradeTo1_10.003
testExpectHeadersAreForwardedOnRequests0.001
testCacheMissOnGETUsesOriginResponse0.004
testOrderOfMultipleAcceptCharsetHeadersIsPreservedOnRequests0.003
testDELETEWithIfNoneMatchWeakETagIsNotAllowed0.002
testDoesNotModifyContentLocationHeaderOnRequest0.001
testPutDoesNotInvalidateCacheForUriInContentLocationHeadersFromOtherHosts0.005
test304ResponseGeneratedFromCacheIncludesContentLocationIfOriginResponseDid0.004
testOrderOfMultipleAcceptEncodingHeadersIsPreservedOnRequests0.002
testHEADResponseWithUpdatedLastModifiedFieldMakeACacheEntryStale0.009
testDeleteInvalidatesCacheForThatUriInLocationHeader0.004
testSubrangeGETWithWeakETagIsNotAllowed0.001
testOrderOfMultipleWWWAuthenticateHeadersIsPreservedOnResponses0.002
testCONNECTRequestsAreWrittenThroughToOrigin0.001
testCachedResponsesWithMissingDateHeadersShouldBeAssignedOne0.002
testExpiresHeaderEqualToDateHeaderIsTreatedAsStale0.006
testDoesNotTransmitNoCacheDirectivesWithFieldsDownstream0.001
testExpiresHeaderMatchesDateIfAddedToOriginResponse0.002
testNoCacheOnFieldIsNotReturnedWithoutRevalidation0.002
test206ResponseIsNotCombinedWithPreviousContentIfETagDoesNotMatch0.008
testSubrangeGETMustUseStrongComparisonForCachedResponse0.003
testOrderOfMultipleWarningHeadersIsPreservedOnRequests0.004
testMustNotAddMultipartByteRangeContentTypeTo416Response0.001
testCacheControlPrivateIsNotCacheableBySharedCache0.003
testOrderOfMultiplePragmaHeadersIsPreservedOnRequests0.002
testSharedCacheMustRevalidateAuthorizedResponsesWhenSMaxAgeIsZero0.008
test206ResponseIsNotCombinedWithPreviousContentIfLastModifiedDoesNotMatch0.008
testPutDoesNotInvalidateCacheForUriInLocationHeadersFromOtherHosts0.008
testMultiHeadersAreSuccessfullyReplacedOn304Validation0.01
testResponsesToPUTsAreNotCached0.002
testCacheWithoutSupportForRangeAndContentRangeHeadersDoesNotCacheA206Response0.002
testNoStoreOnResponseIsNotStoredInCacheEvenWithContraryIndicators0.001
testDoesNotModifyContentLocationHeaderFromOrigin0.002
testOrderOfMultipleViaHeadersIsPreservedOnResponses0.002
testNoCacheCannotSatisfyASubsequentRequestWithoutRevalidationEvenWithContraryIndications0.002
testMustDiscardLeastRecentPartialResponseIfCachedResponseDoesNotHaveCacheValidator0.003
test1xxWarningsAreDeletedAfterSuccessfulRevalidation0.006
testDoesNotAddContentRangeHeaderToCachedResponseWithNoTransformIfNotPresent0.004
testOrderOfMultipleContentEncodingHeaderValuesIsPreserved0.002
testDoesNotAddContentMD5ToRequestIfNotPresent0.001
testDoesNotModifyContentEncodingHeaderOnCachedResponseWithNoTransform0.005
test206ResponseToConditionalRangeRequestDoesNotIncludeOtherEntityHeaders0.004
test206ResponseGeneratedFromCacheMustHaveDateHeader0.004
testDoesNotModifyAllowHeaderWithUnknownMethods0.002
testStaleEntryWithMustRevalidateIsNotUsedWithoutRevalidatingWithOrigin0.006
testOrderOfMultipleCacheControlHeadersIsPreservedOnResponses0.002
testSharedCacheMustUseNewRequestHeadersWhenRevalidatingAuthorizedResponsesWithSMaxAge0.006
testPutInvalidatesCacheForThatUriInRelativeContentLocationHeader0.001
testNoStoreOnRequestIsNotStoredInCacheEvenIfResponseMarkedCacheable0.001
testMustReturnAFreshEnoughCacheEntryIfItHasIt0.001
testDoesNotModifyContentLocationFromOriginOnCacheHit0.004
testPutInvalidatesCacheForThatUriInLocationHeader0.004
testUnknownHeadersOnRequestsAreForwarded0.001
testOrderOfMultipleCacheControlHeadersIsPreservedOnRequests0.002
testIncompleteResponseMustNotBeReturnedToClientWithoutMarkingItAs2060.001
testDoesNotModifyLastModifiedFromOriginOnCacheHit0.004
testDoesNotAddContentRangeHeaderToRequestIfNotPresent0.001
testDELETEWithIfMatchWeakETagIsNotAllowed0.001
testDoesNotModifyContentMD5HeaderFromOrigin0.002
test303ResponsesAreNotCached0.001
testResponsesToDELETEsAreNotCached0.001
testConditionalRequestWhereNotAllValidatorsMatchCannotBeServedFromCache0.005
testMustDiscardLeastRecentPartialResponseIfIncomingRequestDoesNotHaveCacheValidator0.002
testCacheIsNotUsedWhenRespondingToRequestWithPragmaNoCache0.004
testOrderOfMultiplePragmaHeadersIsPreservedOnResponses0.002
testCannotCombinePartialResponseIfCacheValidatorsDoNotStronglyMatch0.002
testDoesNotModifyExpiresHeaderFromOrigin0.001
testExpiresZeroHeaderIsTreatedAsStale0.007
testPUTWithIfNoneMatchWeakETagIsNotAllowed0
testResponseToAHEADRequestMustNotHaveABody0.002
testOrderOfMultipleExpectHeadersIsPreservedOnRequests0.001
testUnknownResponseStatusCodesAreNotCached0.403
testDoesNotAddContentRangeToRequestIfNotPresent0.001
testDoesNotAddContentLocationToOriginResponse0.002
testHEADResponseWithUpdatedContentLengthFieldMakeACacheEntryStale0.007
testDoesNotModifyContentRangeHeaderOnCachedResponseWithNoTransform0.005
testDoesNotAddContentMD5ToOriginResponse0.001
testDoesNotAddETagHeaderOnCacheHit0.003
testAgeHeaderPopulatedFromCacheEntryCurrentAge0.001
testViaHeaderOnResponseProperlyRecordsOriginProtocol0.002
testMustServeAppropriateErrorOrWarningIfNoOriginCommunicationPossible0.001
test206ResponseGeneratedFromCacheMustHaveABodyThatMatchesContentLengthHeaderIfPresent0.003
testPostDoesNotInvalidateCacheForUriInContentLocationHeadersFromOtherHosts0.004
testNonmatchingVariantCannotBeServedFromCacheUnlessConditionallyValidated0.007
test304ResponseGeneratedFromCacheIncludesEtagIfOriginResponseDid0.004
testForwardsUnknownHeadersOnRequestsFromHigherProtocolVersions0.001
testWarning110IsAddedToStaleResponses0.004
testPOSTRequestsAreWrittenThroughToOrigin0.001
testGenerates504IfSharedCacheCannotRevalidateAProxyRevalidateEntry0.003
testDoesNotModifyETagHeaderOnRequest0.001
testPUTRequestsAreWrittenThroughToOrigin0.001
testMalformedExpiresHeaderIsTreatedAsStale0.004
testDoesNotAddETagToRequestIfNotPresent0.001
test304ResponseGeneratedFromCacheIncludesDateHeader0.004
testSharedCacheMayCacheAuthorizedResponsesWithMustRevalidate0.004
testStaleEntryWithProxyRevalidateOnSharedCacheIsNotUsedWithoutRevalidatingWithOrigin0.005
testCannotServeFromCacheForVaryStar0.002
test206ResponsesAreNotCachedIfTheCacheDoesNotSupportRangeAndContentRangeHeaders0.001
test204ResponsesDoNotContainMessageBodies0.001
testDoesNotAddContentTypeHeaderToOriginResponseWithNoTransformIfNotPresent0.002
testOrderOfMultipleTransferEncodingsInSingleHeadersIsPreserved0.002
testPutInvalidatesCacheForThatUriInContentLocationHeader0.003
testUnknownMethodRequestsAreWrittenThroughToOrigin0.001
testDoesNotAddAMaxForwardsHeaderToForwardedOPTIONSRequests0.001
testDeleteInvalidatesCacheForThatUriInRelativeContentLocationHeader0.003
testStripsBadlyDatedWarningsFromStoredResponses0.002
testCannotCombinePartialResponseIfIncomingResponseDoesNotHaveACacheValidator0.002
testDeleteDoesNotInvalidateCacheForUriInLocationHeadersFromOtherHosts0.003
test304GeneratedFromCacheOnWeakValidatorDoesNotIncludeOtherEntityHeaders0.003
testPUTWithIfMatchWeakETagIsNotAllowed0.001
testOrderOfMultipleTransferEncodingHeadersIsPreserved0.001
testDoesNotAddContentEncodingHeaderToOriginResponseWithNoTransformIfNotPresent0.002
testDoesNotModifyContentTypeHeaderFromOriginResponseWithNoTransform0.001
testOrderOfMultipleContentLanguageHeadersIsPreservedOnResponses0.002
testHEADResponseWithUpdatedETagFieldMakeACacheEntryStale0.006
testDoesNotAddLastModifiedToOriginResponse0.002
testPostDoesNotInvalidateCacheForUriInLocationHeadersFromOtherHosts0.004
testDeleteToUriInvalidatesCacheForThatUri0.004
testDoesNotModifyLastModifiedHeaderFromOrigin0.002
test200ResponseToOPTIONSWithNoBodyShouldIncludeContentLengthZero0.001
testUpdatedEndToEndHeadersFrom304ArePassedOnResponseAndUpdatedInCacheEntry0.007
testDoesNotModifyContentMD5FromOriginOnCacheHit0.003
testPostInvalidatesCacheForThatUriInLocationHeader0.006
testAttachesWarningHeaderWhenGeneratingStaleResponse0.001
testMustDiscardLeastRecentPartialResponseIfCacheValidatorsDoNotStronglyMatchEvenIfResponsesOutOfOrder0.002
testHigherMajorProtocolVersionsOnRequestSwitchToTunnelBehavior0.001
testDoesNotAddContentLocationHeaderOnCacheHit0.004
testDoesNotAddContentMD5HeaderOnCacheHit0.003
testPostToUriInvalidatesCacheForThatUri0.004
testOPTIONSRequestsAreWrittenThroughToOrigin 0
skipped
test304ResponseWithDateHeaderForwardedFromOriginIncludesDateHeader0.001
testMustReturnACacheEntryIfItCanRevalidateIt0.001
testNoStoreOnRequestIsNotStoredInCache0.001
testDeleteDoesNotInvalidateCacheForUriInContentLocationHeadersFromOtherHosts0.003
testHeuristicCacheOlderThan24HoursHasWarningAttached0.001
testPostInvalidatesCacheForRelativeUriInContentLocationHeader0.003
testDoesNotModifyContentEncodingHeaderFromOriginResponseWithNoTransform0.002
testDoesNotModifyContentRangeHeaderFromOriginResponseWithNoTransform0.001
testTransferCodingsAreNotSentToAnHTTP_1_0Client0.001
testDoesNotAddContentEncodingHeaderToRequestIfNotPresent0
testOrderOfMultipleContentLanguageHeadersIsPreservedOnRequests0.001
testNotModifiedOfNonCachedEntityShouldRevalidateWithUnconditionalGET0.005
testCacheControlPrivateOnFieldIsNotReturnedBySharedCache0.002
testDoesNotModifyExpiresHeaderFromOriginOnCacheHit0.003
testCacheEntryIsUpdatedWithNewFieldValuesIn304Response0.004
testDoesNotModifyContentTypeHeaderOnCachedResponseWithNoTransform0.003
testDoesNotAddContentEncodingToRequestIfNotPresent0.002
testNoCacheCannotSatisfyASubsequentRequestWithoutRevalidation0.001
testMustIncludeAllowHeaderFromAnOrigin405Response0.002
testDoesNotModifyLastModifiedHeaderOnRequest0.001
testResponsesToPOSTWithoutCacheControlOrExpiresAreNotCached0
testVaryStarIsNotGeneratedByProxy0.003
testDoesNotModifyEtagFromOriginOnCacheHit0.003
testViaHeaderOnRequestProperlyRecordsClientProtocol0.001
testTRACERequestsAreWrittenThroughToOrigin0
testDecrementsMaxForwardsWhenForwardingOPTIONSRequest0.001
testMustIncludeWWWAuthenticateHeaderOnAnOrigin401Response0.001
testRetainsWarningHeadersReceivedFromUpstream0.002
testOrderOfMultipleAllowHeadersIsPreservedOnRequests0.001
testPutToUriInvalidatesCacheForThatUri0.003
testDeleteInvalidatesCacheForThatUriInContentLocationHeader0.004
testProperlyFormattedViaHeaderIsAddedToRequests0.002
testRequestsExpecting100ContinueBehaviorShouldSetExpectHeader0.001
testResponsesToOPTIONSAreNotCacheable0.001
testCannotUseVariantCacheEntryIfNotAllSelectingRequestHeadersMatch0.007
testOrderOfMultipleParametersInContentEncodingHeaderIsPreserved0.002
testDoesNotAddLastModifiedHeaderOnCacheHit0.003
test206ResponseIncludesVariantHeadersIfValueMightDiffer0.009
testSharedCacheMustNotNormallyCacheAuthorizedResponses0.002
testKeepsMostRecentDateHeaderForFreshResponse0.005
testDoesNotModifyEtagHeaderFromOrigin0.002
testResponseToA1_0RequestShouldUse1_10.002
testOrderOfMultipleAcceptLanguageHeadersIsPreservedOnRequests0.002
test304ResponseDoesNotContainABody0
testSharedCacheMayCacheAuthorizedResponsesWithSMaxAgeHeader0.004
testDoesNotAddContentRangeHeaderToOriginResponseWithNoTransformIfNotPresent0.002
testCacheDoesNotAssumeContentLocationHeaderIndicatesAnotherCacheableResource0.003
test206ContainsETagIfA200ResponseWouldHaveIncludedIt0.003
testResponseIncludesCacheEntryEndToEndHeadersForResponseAfter304Validation0.005
testMustNotUseMultipartByteRangeContentTypeOnCacheGenerated416Responses0.002

TestImmediateSchedulingStrategy

testRequestScheduledImmediately0.008

TestCacheInvalidator

flushesEntrySpecifiedByContentLocationIfEntryHasNoDate0.007
flushesEntryIfFresherAndSpecifiedByContentLocation0.003
doesNotFlushEntrySpecifiedByContentLocationIfEtagsMatch0.001
testInvalidatesUrisInLocationHeadersOnPUTs0.004
testDoesNotInvalidateGETCacheEntryIfSubsequentGETRequestsAreMadeToTheSameURI0.002
flushesEntryIfFresherAndSpecifiedByRelativeContentLocation0.002
testVariantURIsAreFlushedAlso0.003
testCacheFlushException0.002
testDoesNotInvalidateUrisInContentLocationHeadersOnPUTsToDifferentHosts0.005
doesNotFlushEntryForUnsuccessfulResponse0
testInvalidatesUrisInContentLocationHeadersOnPUTs0.003
testDoesNotInvalidateHEADCacheEntry0.001
doesNotFlushEntrySpecifiedByContentLocationIfResponseHasNoEtag0.001
flushesEntryIfFresherAndSpecifiedByLocation0.002
testInvalidatesHEADCacheEntryIfSubsequentGETRequestsAreMadeToTheSameURI0.003
doesNotFlushEntryIfContentLocationFromDifferentHost0.002
testInvalidatesRelativeUrisInContentLocationHeadersOnPUTs0.002
doesNotFlushEntrySpecifiedByContentLocationIfEntryHasNoEtag0.002
flushesEntryIfFresherAndSpecifiedByNonCanonicalContentLocation0.001
flushesEntrySpecifiedByContentLocationIfEntryHasMalformedDate0.003
testDoesNotInvalidateHEADCacheEntryIfSubsequentHEADRequestsAreMadeToTheSameURI0.001
doesNotFlushForResponsesWithoutContentLocation0.001
flushesEntrySpecifiedByContentLocationIfResponseHasMalformedDate0.003
testDoesNotInvalidateHEADRequest0
doesNotFlushEntryIfNotInCache0
doesNotFlushEntrySpecifiedByContentLocationIfOlder0
testInvalidatesVariantHEADCacheEntriesIfSubsequentGETRequestsAreMadeToTheSameURI0.004
testDoesNotInvalidateGETRequest0.001
testInvalidatesRequestsThatArentGETorHEAD0.003
testDoesNotInvalidateRequestsWithClientCacheControlHeaders0.001
flushesEntrySpecifiedByContentLocationIfResponseHasNoDate0.003
testDoesNotInvalidateRequestsWithClientPragmaHeaders0.001

TestResponseCachingPolicy

test303WithExplicitCachingHeadersUnderDefaultBehavior0
testPlain303ResponseCodeIsNotCacheableEvenIf303CachingEnabled0
testPlain303ResponseCodeIsNotCacheableUnderDefaultBehavior0
testIsArbitraryMethodCacheableUsingSharedPublicCache0
testIsHeadCacheable0.007
testResponsesToGETWithQueryParamsAndExplicitCachingAreCacheable0.002
testIsArbitraryMethodCacheable0
test410ResponseCodeIsCacheable0
test206ResponseCodeIsNotCacheable0
testNon206WithSMaxAgeIsCacheable0.003
testNon206WithPrivateCacheControlIsNotCacheableBySharedCache0.001
testIsGetWithAnyCacheControlCacheable0
headsWithQueryParametersFrom1_0OriginsViaExplicitProxiesCanNotBeCacheableEvenWithExpires0.001
getsWithQueryParametersFrom1_0OriginsViaProxiesAreCacheableWithExpires0.002
testResponsesWithMultipleExpiresHeadersAreNotCacheable0.001
testIsHeadWithNoCacheEmbeddedInListCacheable0.001
headsWithQueryParametersDirectlyFrom1_0OriginsAreCacheableWithExpires0.001
testIsHeadWithAnyCacheControlCacheable0.001
testVaryStarIsNotCacheableUsingSharedPublicCache0
testIsHeadWithVaryHeaderCacheable0
testAuthorizedResponsesWithCacheControlPublicAreCacheable0
testPlain302ResponseCodeIsNotCacheable0
testResponsesToHEADWithQueryParamsAndExplicitCachingAreCacheable0.001
notCacheableIfExpiresPrecedesDateAndNoCacheControl0
headsWithQueryParametersFrom1_0OriginsViaProxiesAreNotCacheable0
test302WithExplicitCachingHeaders0.001
test303WithExplicitCachingHeadersWhenPermittedByConfig0
testResponsesToHEADWithQueryParamsButNoExplicitCachingAreNotCacheableEvenWhen1_0QueryCachingDisabled0.001
test206ResponseCodeIsNotCacheableUsingSharedPublicCache0
headsWithQueryParametersFrom1_0OriginsViaProxiesCanNotBeCacheableEvenWithExpires0
testResponsesWithMalformedDateHeadersAreNotCacheableUsingSharedPublicCache0.001
testIsGetWithNoCacheEmbeddedInListCacheable0
notCacheableIfExpiresEqualsDateAndNoCacheControl0
testResponsesToRequestsWithNoStoreAreNotCacheable0
testResponsesWithoutDateHeadersAreNotCacheable0
testResponsesToHEADWithQueryParamsButNoExplicitCachingAreNotCacheable0
testIsGetWithNoStoreCacheable0
testIsGetWithNoCacheCacheable0
testPlain307ResponseCodeIsNotCacheable0
getsWithQueryParametersDirectlyFrom1_0OriginsAreNotCacheable0
test307WithExplicitCachingHeaders0
testResponsesToRequestsWithAuthorizationHeadersAreCacheableByNonSharedCache0.001
testNon206WithMustRevalidateIsCacheable0
getsWithQueryParametersDirectlyFrom1_0OriginsAreNotCacheableEvenWithSetting0
testResponsesWithMalformedDateHeadersAreNotCacheable0
testResponsesWithMultipleDateHeadersAreNotCacheableUsingSharedPublicCache0.001
testResponsesWithMultipleAgeHeadersAreNotCacheableUsingSharedPublicCache0
testResponsesWithMultipleExpiresHeadersAreNotCacheableUsingSharedPublicCache0
headsWithQueryParametersFrom1_0OriginsViaExplicitProxiesAreCacheableWithExpires0.001
testIsHeadWithout200Cacheable0
testResponsesToRequestsWithAuthorizationHeadersAreNotCacheableBySharedCache0
getsWithQueryParametersDirectlyFrom1_0OriginsAreCacheableWithExpires0.001
testIsHeadWithNoStoreCacheable0
testResponsesToHEADWithQueryParamsAndExplicitCachingAreCacheableEvenWhen1_0QueryCachingDisabled0
testIsGetWithNoCacheEmbeddedInListAfterFirstHeaderCacheable0.001
testIsHeadWithNoCacheCacheable0
headsWithQueryParametersFrom1_0OriginsViaProxiesAreCacheableWithExpires0.001
test203ResponseCodeIsCacheable0
testIsGetWithNoStoreEmbeddedInListAfterFirstHeaderCacheable0
test301ResponseCodeIsCacheable0
testNon206WithExplicitExpiresIsCacheable0
headsWithQueryParametersDirectlyFrom1_0OriginsCanBeNotCacheableEvenWithExpires0
testResponsesWithMultipleDateHeadersAreNotCacheable0
test300ResponseCodeIsCacheable0.001
testNon206WithMaxAgeIsCacheable0
testResponsesToGETWithQueryParamsAndExplicitCachingAreCacheableEvenWhen1_0QueryCachingDisabled0
getsWithQueryParametersFrom1_0OriginsViaProxiesCanNotBeCacheableEvenWithExpires0.001
test200ResponseWithPrivateCacheControlIsCacheableByNonSharedCache0
testAuthorizedResponsesWithCacheControlMaxAgeAreNotCacheable0
getsWithQueryParametersFrom1_0OriginsViaExplicitProxiesCanNotBeCacheableEvenWithExpires0.001
getsWithQueryParametersDirectlyFrom1_0OriginsCanBeNotCacheableEvenWithExpires0
testResponsesWithMultipleAgeHeadersAreNotCacheable0
headsWithQueryParametersFrom1_1OriginsVia1_0ProxiesAreCacheableWithExpires0.001
testIsGetWithVaryHeaderCacheable0
testResponsesToGETWithQueryParamsButNoExplicitCachingAreNotCacheableEvenWhen1_0QueryCachingDisabled0
getsWithQueryParametersFrom1_1OriginsVia1_0ProxiesAreCacheableWithExpires0.001
testResponseThatHasTooMuchContentIsNotCacheable0
testAuthorizedResponsesWithSMaxAgeAreCacheable0
getsWithQueryParametersFrom1_0OriginsViaProxiesAreNotCacheable0
testIsHeadWithNoStoreEmbeddedInListCacheable0.001
testResponsesThatAreSmallEnoughAreCacheable0
testNon206WithPublicCacheControlIsCacheable0
testResponseThatHasTooMuchContentIsNotCacheableUsingSharedPublicCache0
testIsGetWithNoStoreEmbeddedInListCacheable0
getsWithQueryParametersFrom1_0OriginsViaExplicitProxiesAreCacheableWithExpires0
testIsHeadWithNoCacheEmbeddedInListAfterFirstHeaderCacheable0.001
testVaryStarIsNotCacheable0
testIsGetCacheable0
testIsHeadWithNoStoreEmbeddedInListAfterFirstHeaderCacheable0
testAuthorizedResponsesWithMustRevalidateAreCacheable0
testIsGetWithout200Cacheable0
testNon206WithProxyRevalidateIsCacheable0
testResponsesToGETWithQueryParamsButNoExplicitCachingAreNotCacheable0
otherStatusCodesAreCacheableWithExplicitCachingHeaders0
headsWithQueryParametersDirectlyFrom1_0OriginsAreNotCacheable0.001
headsWithQueryParametersDirectlyFrom1_0OriginsAreNotCacheableEvenWithSetting0

TestHttpCacheJiraNumber1147

testIssue11470.006

TestCombinedEntity

testCombinedEntityBasics0

TestAsynchronousValidationRequest

testRunGracefullyHandlesProtocolException0.109
testRunGracefullyHandlesIOException0.003
testRunCallsCachingClientAndRemovesIdentifier0.003
testRunGracefullyHandlesRuntimeException0.002
testRunReportsJobFailedForStaleResponse0.005
testRunReportsJobFailedForServerError0.003

TestConditionalRequestBuilder

testCacheEntryWithProxyRevalidateDoesEndToEndRevalidation0
testBuildConditionalRequestWithLastModified0
testBuildUnconditionalRequestDoesNotUseIfMatch0
testBuildUnconditionalRequestDoesNotUseIfRange0
testBuildUnconditionalRequestAddsPragmaNoCache0.001
testBuildUnconditionalRequestDoesNotUseIfUnmodifiedSince0
testConditionalRequestForEntryWithLastModifiedAndEtagIncludesBothAsValidators0
testBuildUnconditionalRequestAddsCacheControlNoCache0
testBuildUnconditionalRequestCarriesOtherRequestHeaders0.001
testBuildUnconditionalRequestUsesRequestUri0
testBuildConditionalRequestWithETag0
testBuildUnconditionalRequestUsesHTTP_1_10
testBuildUnconditionalRequestDoesNotUseIfNoneMatch0
testBuildUnconditionalRequestUsesGETMethod0
testBuildUnconditionalRequestDoesNotUseIfModifiedSince0
testBuildConditionalRequestFromVariants0
testCacheEntryWithMustRevalidateDoesEndToEndRevalidation0

TestCacheKeyGenerator

testGetVariantURIHandlesMultipleLineRequestHeaders0.011
testIntermidateDotSegementsAreEquivalent0.001
testGetURIWithQueryParameters0
testGetVariantURIHandlesMultipleVaryHeaders0.002
testEmptyPortEquivalentToDefaultPortForHttpsAbsoluteURI0
testIntermidateDotDotSegementsAreEquivalent0
testGetVariantURIAlphabetizesWithMultipleVaryingHeaders0.002
testSchemeNameComparisonsAreCaseInsensitive0
testExtraDotDotSegmentsAreIgnored0.001
testExtraDotSegmentsAreIgnored0
testExtractsUriFromAbsoluteUriInRequest0.001
testGetVariantURIWithNoVaryHeaderReturnsNormalURI0
testNotProvidedPortEquivalentToDefaultPortForHttp0.001
testGetVariantURIWithSingleValueVaryHeaderPrepends0.001
testEmptyPortEquivalentToDefaultPortForHttp0.001
testHostNameComparisonsAreCaseInsensitive0
testIntermidateEncodedDotDotSegementsAreEquivalent0.001
testEquivalentPathEncodingsAreEquivalent0
testEquivalentExtraPathEncodingsWithPercentAreEquivalent0.001
testEmptyPortEquivalentToDefaultPortForHttps0
testGetURIWithDifferentScheme0.001
testEquivalentExtraPathEncodingsAreEquivalent0.001
testEmptyAbsPathIsEquivalentToSlash0
testGetURIWithDefaultPortAndScheme0
testGetURIWithDifferentPortAndScheme0
testNotProvidedPortEquivalentToDefaultPortForHttpsAbsoluteURI0
testGetURIWithDifferentPort0
testGetVariantURIWithMissingRequestHeader0.001

TestSHA256HashingScheme

canHash0.002

TestWarningValue

testConstructWarnValueWithRFC1123WarnDate0
testMidHeaderParseErrorRecovery0
testParseMultipleWarnValues0
testConstructWarnValueWithTextWithCommas0
testConstructWarnValueWithTextWithSpaces0
testConstructWarnValueWithIPv4Address0
testConstructWarnValueWithHostnameAndPort0
testConstructWarnValueWithIPv4AddressAndPort0.001
testConstructWarnValueWithAscTimeWarnDate0
testParseSingleWarnValue0
testConstructWarnValueWithHostname0
testConstructWarnValueWithTextWithEscapedQuotes0
testTrickyCommaMidHeaderParseErrorRecovery0
testParseErrorRecoveryAtEndOfHeader0
testConstructSingleWarnValue0
testConstructWarnValueWithRFC850WarnDate0
testConstructWarnValueWithPseudonym0.001

TestDefaultFailureCache

testResetErrorCount0
testMaxSize0
testIncrementErrorCount0.001

TestCachedResponseSuitabilityChecker

testNotSuitableIfContentLengthHeaderIsWrong0.002
testNotSuitableIfStaleButTooStaleForRequestMaxStale0
testNotSuitableIfRequestHasNoCache0
testNotSuitableIfAgeExceedsRequestMaxAge0
testSuitableIfRequestMethodisHEAD0
testSuitableIfFreshAndFreshnessLifetimeGreaterThanRequestMinFresh0.001
testNotSuitableIfFreshnessLifetimeLessThanRequestMinFresh0.001
testMalformedCacheControlMinFreshRequestHeaderCausesUnsuitableEntry0.001
testNotSuitableIfCacheEntryIsNotFresh0.001
testSuitableForGETIfHeadResponseCachingEnabledAndEntryDoesNotSpecifyARequestMethodButContains204Response0
testMalformedCacheControlMaxAgeRequestHeaderCausesUnsuitableEntry0
testSuitableIfCacheEntryIsHeuristicallyFreshEnoughByDefault0.001
testSuitableEvenIfStaleButPermittedByRequestMaxStale0.001
testNotSuitableIfRequestMethodIsGETAndEntryResourceIsNull0
testNotSuitableForGETIfEntryDoesNotSpecifyARequestMethodOrEntity0.001
testSuitableIfFreshAndAgeIsUnderRequestMaxAge0.001
testSuitableForGETIfEntryDoesNotSpecifyARequestMethodButContainsEntity0
testSuitableIfCacheEntryIsHeuristicallyFreshEnough0.001
testSuitableForHEADIfHeadResponseCachingEnabledAndEntryDoesNotSpecifyARequestMethod0
testSuitableIfCacheEntryIsFresh0.001

TestMemcachedCacheEntryImpl

knowsItsCacheEntry0
knowsItsCacheKey0
canBeSerialized0.005
canBeReconstitutedFromByteArray0.006
canBeCreatedEmpty0
cannotReconstituteFromGarbage0.001

TestHttpCacheEntrySerializers

canSerializeEntriesWithVariantMaps0.002

TestCachingExec

testRevalidationCallsHandleBackEndResponseWhenNot200Or3040.443
testUnsuitableValidatableCacheEntryCausesRevalidation0.006
testRequestThatCannotBeServedFromCacheCausesBackendRequest0.005
testUnsuitableUnvalidatableCacheEntryCausesBackendRequest0.006
testCallBackendMakesBackEndRequestAndHandlesResponse0.003
testRevalidationUpdatesCacheEntryAndPutsItToCacheWhen304ReturningCachedResponse0.003
testCacheMissCausesBackendRequest0.003
testRevalidationRewritesAbsoluteUri0.009
testEndlessResponsesArePassedThrough0.032
testReturns304ForIfNoneMatchPassesIfRequestServedFromOrigin0.009
testSetsRouteInContextOnCacheHit0.015
testVariantsMissServerReturns304CacheReturns3040.156
testReturns304ForIfModifiedSinceHeaderIfRequestServedFromCache0.016
testReturns304ForIfNoneMatchHeaderIfRequestServedFromCache0.01
testIfOnlyIfCachedAndNoCacheEntryBackendNotCalled0.005
testSocketTimeoutExceptionIsNotSilentlyCatched0.018
testIfOnlyIfCachedAndEntryNotSuitableBackendNotCalled0.004
testSetsModuleGeneratedResponseContextForCacheOptionsResponse0.004
testTreatsCacheIOExceptionsAsCacheMiss0.005
testReturns200ForIfNoneMatchHeaderFails0.01
testSetsViaHeaderOnResponseIfRequestServedFromCache0.006
testSetsCacheMissContextIfRequestNotServableFromCache0.005
testReturns200ForOptionsFollowedByGetIfAuthorizationHeaderAndSharedCache0.007
testDoesNotSetConnectionInContextOnCacheHit0.007
testNonCompliantRequestWrapsAndReThrowsProtocolException0.004
testSetsResponseInContextOnCacheHit0.005
testReturns304ForIfNoneMatchHeaderAndIfModifiedSinceIfRequestServedFromCache0.004
testReturns200ForIfNoneMatchFailsIfRequestServedFromOrigin0.005
testNewerCacheableResponsesReplaceExistingCacheEntry0.006
testReturns200ForIfModifiedSinceDateIsInvalid0.006
testSetViaHeaderIfValidationFailsButNotRequired0.003
testSetsModuleResponseContextIfValidationFailsButNotRequired0.003
testDoesNotSend304ForNonConditionalRequest0.005
testIfOnlyIfCachedAndEntryExistsAndIsSuitableReturnsEntry0.003
testNoEntityForIfNoneMatchRequestNotYetInCache0.004
testSetsCacheHitContextIfRequestServedFromCache0.004
testCanCacheAResponseWithoutABody0.003
testSetsRequestInContextOnCacheHit0.004
testResponseIsGeneratedWhenCacheEntryIsUsable0.003
testSetsModuleResponseContextIfValidationRequiredButFailed0.004
testUsesVirtualHostForCacheKey0.005
testReturns304ForIfModifiedSinceHeaderIf304ResponseInCache0.007
testSetsViaHeaderOnResponseIfRequestNotServableFromCache0.003
testVariantMissServerIfReturns304CacheReturns2000.007
testSetsRequestSentInContextOnCacheHit0.003
testIsSharedCache0.002
testSetsModuleGeneratedResponseContextForFatallyNoncompliantRequest0.002
testReturns200ForIfModifiedSinceDateIsLess0.006
testOlderCacheableResponsesDoNotGoIntoCache0.007
testSuitableCacheEntryDoesNotCauseBackendRequest0.003
testNotModifiedResponseUpdatesCacheEntryWhenNoEntity0.005
testSetsViaHeaderOnResponseForCacheMiss0.004
testSetsTargetHostInContextOnCacheHit0.004
testNonCacheableResponseIsNotCachedAndIsReturnedAsIs0.003
testSetsViaHeaderIfRequestWasSuccessfullyValidated0.008
testReturns200ForIfNoneMatchHeaderFailsIfModifiedSinceIgnored0.009
testCacheableResponsesGoIntoCache0.007
testNotModifiedResponseWithVaryUpdatesCacheEntryWhenNoEntity0.005
testSetsValidatedContextIfRequestWasSuccessfullyValidated0.006
testReturns200ForIfModifiedSinceFailsIfRequestServedFromOrigin0.006
testRecordsClientProtocolInViaHeaderIfRequestNotServableFromCache0.005
testReturns304ForIfModifiedSincePassesIfRequestServedFromOrigin0.005

TestRequestProtocolCompliance

testRequestWithWeakETagAndRange0.001
doesNotModifyACompliantRequest0
testRequestWithWeekETagForPUTOrDELETEIfMatchAllowed0.001
upgrades1_0RequestTo1_10
testRequestWithWeekETagForPUTOrDELETEIfMatch0
downgrades1_2RequestTo1_10
doesNotStripMinFreshFromRequestWithoutNoCache0
testRequestContainsNoCacheDirectiveWithFieldName0
stripsMinFreshFromRequestIfNoCachePresent0
stripsMaxFreshFromRequestIfNoCachePresent0.001
removesEntityFromTRACERequest0
correctlyStripsMinFreshFromMiddleIfNoCache0
stripsMaxAgeFromRequestIfNoCachePresent0

TestCachingHttpClientBuilder

testAsynchronousWorkersMax00.005
testNullCacheConfig0.004

TestProtocolDeviations

testPassesOnOrigin407WithoutAProxyAuthenticateHeader0.003
testPassesOnOrigin401ResponseWithoutWWWAuthenticateHeader0.001
testOPTIONSRequestsWithBodiesAndNoContentTypeHaveOneSupplied0
testPassesOnOrigin405WithoutAllowHeader0.001
testPartialContentIsNotReturnedToAClientThatDidNotAskForIt0.001

TestResponseProtocolCompliance

throwsExceptionIfOriginReturnsPartialResponseWhenNotRequested0
consumesPartialContentFromOriginEvenIfNotRequested0
consumesBodyIfOriginSendsOneInResponseToHEAD0
consumesBodyOf100ContinueResponseIfItArrives0

TestStaleWhileRevalidationReleasesConnection

testStaleWhileRevalidate6.351

TestSizeLimitedResponseReader

testTooLargeEntityHasOriginalContentTypes0.006
testResponseCopiesAllOriginalHeaders0.002
testSmallResponseIsNotTooLarge0.001
testResponseWithNoEntityIsNotTooLarge0
testLargeResponseIsTooLarge0
testExactSizeResponseIsNotTooLarge0
testTooLargeResponseCombinedClosed0

TestProtocolRequirements

testMustIncludeProxyAuthenticateHeaderFromAnOrigin407Response0.002
testSharedCacheMayCacheAuthorizedResponsesWithCacheControlPublic0.003
testGenerates504IfCannotRevalidateAMustRevalidateEntry0.001
testCannotCombinePartialResponseIfCacheEntryDoesNotHaveACacheValidator0.002
testResponsesToTRACEsAreNotCached0.001
testOrderOfMultipleContentEncodingHeadersIsPreservedOnResponses0.002
testOrderOfMultipleAllowHeadersIsPreservedOnResponses0.001
testConditionalRequestWhereAllValidatorsMatchMayBeServedFromCache0.002
testHEADResponseWithUpdatedContentMD5FieldMakeACacheEntryStale0.004
testDoesNotModifyContentMD5HeaderOnRequest0.001
test205ResponsesDoNotContainMessageBodies0.002
testDoesNotAddContentLocationToRequestIfNotPresent0.001
testValidationMustUseETagIfProvidedByOriginServer0.004
testTransmitsAgeHeaderIfIncomingAgeHeaderTooBig0.003
testOrderOfMultipleViaHeadersIsPreservedOnRequests0.002
testStripsBadlyDatedWarningsFromForwardedResponses0.002
testDoesNotAddEtagToOriginResponse0.002
testCacheIsNotUsedWhenRespondingToRequestWithCacheControlNoCache0.003
test206ResponseToIfRangeWithStrongValidatorReturnsAllEntityHeaders0.004
test304ResponseGeneratedFromCacheIncludesExpiresCacheControlAndOrVaryIfResponseMightDiffer0.007
testForwardedTRACERequestsDoNotIncludeAnEntity0.001
testUpdatesWarningHeadersOnValidation0.004
testWarnDatesAreAddedToWarningsOnLowerProtocolVersions0.003
test206ContainsContentLocationIfA200ResponseWouldHaveIncludedIt0.003
testRequestsNotExpecting100ContinueBehaviorShouldNotSetExpectContinueHeader0.001
test206ResponseReturnedToClientMustHaveDateHeader0.002
testDoesNotAddContentTypeHeaderToCachedResponseWithNoTransformIfNotPresent0.002
testMustDiscardCachedPartialResponseIfCacheValidatorsDoNotStronglyMatchAndDateHeadersAreEqual0.003
testExpect100ContinueIsNotSentIfThereIsNoRequestBody0.002
testDoesNotForwardOPTIONSWhenMaxForwardsIsZeroOnAbsoluteURIRequest0.001
testDoesNotAddContentTypeToRequestIfNotPresent0.002
testUnknownHeadersOnResponsesAreForwarded0.002
testOrderOfMultipleContentEncodingHeadersIsPreservedOnRequests0.002
testDoesNotAddLastModifiedToRequestIfNotPresent0.002
test100ContinueResponsesAreNotForwardedTo1_0ClientsWhoDidNotAskForThem0.002
testRequestsWithLowerProtocolVersionsGetUpgradedTo1_10.003
testOrderOfMultipleAcceptHeaderValuesIsPreservedOnRequests0.003
testDoesNotModifyServerResponseHeader0.002
testDoesNotAddContentEncodingHeaderToCachedResponseWithNoTransformIfNotPresent0.002
testDELETERequestsAreWrittenThroughToOrigin0.001
testMustDiscardLeastRecentPartialResponseIfCacheValidatorsDoNotStronglyMatch0.003
testRemovesWarningHeaderIfAllWarnValuesAreBadlyDated0.003
testPostInvalidatesCacheForThatUriInContentLocationHeader0.005
testDoesNotAddContentTypeHeaderToRequestIfNotPresent0.002
test2xxWarningsAreNotDeletedAfterSuccessfulRevalidation0.005
testNoStoreOnResponseIsNotStoredInCache0.002
test302ResponseWithoutExplicitCacheabilityIsNotReturnedFromCache0.003
testExpiresHeaderMatchesDateIfAddedToCacheHit0.003
testLowerOriginResponsesUpgradedToOurVersion1_10.004
test206ResponseGeneratedFromCacheMustHaveContentRangeOrMultipartByteRangesContentType0.003
testSharedCacheMustUseNewRequestHeadersWhenRevalidatingAuthorizedResponsesWithMustRevalidate0.004
testProperlyFormattedViaHeaderIsAddedToResponses0.004
testHigher1_XProtocolVersionsDowngradeTo1_10.003
testExpectHeadersAreForwardedOnRequests0.001
testCacheMissOnGETUsesOriginResponse0.003
testOrderOfMultipleAcceptCharsetHeadersIsPreservedOnRequests0.003
testDELETEWithIfNoneMatchWeakETagIsNotAllowed0.001
testDoesNotModifyContentLocationHeaderOnRequest0.002
testPutDoesNotInvalidateCacheForUriInContentLocationHeadersFromOtherHosts0.005
test304ResponseGeneratedFromCacheIncludesContentLocationIfOriginResponseDid0.003
testOrderOfMultipleAcceptEncodingHeadersIsPreservedOnRequests0.002
testHEADResponseWithUpdatedLastModifiedFieldMakeACacheEntryStale0.005
testDeleteInvalidatesCacheForThatUriInLocationHeader0.005
testSubrangeGETWithWeakETagIsNotAllowed0.001
testOrderOfMultipleWWWAuthenticateHeadersIsPreservedOnResponses0.002
testCONNECTRequestsAreWrittenThroughToOrigin0.002
testCachedResponsesWithMissingDateHeadersShouldBeAssignedOne0.002
testExpiresHeaderEqualToDateHeaderIsTreatedAsStale0.004
testDoesNotTransmitNoCacheDirectivesWithFieldsDownstream0.001
testExpiresHeaderMatchesDateIfAddedToOriginResponse0.001
testNoCacheOnFieldIsNotReturnedWithoutRevalidation0.002
test206ResponseIsNotCombinedWithPreviousContentIfETagDoesNotMatch0.003
testSubrangeGETMustUseStrongComparisonForCachedResponse0.001
testOrderOfMultipleWarningHeadersIsPreservedOnRequests0.002
testMustNotAddMultipartByteRangeContentTypeTo416Response0.001
testCacheControlPrivateIsNotCacheableBySharedCache0.002
testOrderOfMultiplePragmaHeadersIsPreservedOnRequests0.002
testSharedCacheMustRevalidateAuthorizedResponsesWhenSMaxAgeIsZero0.004
test206ResponseIsNotCombinedWithPreviousContentIfLastModifiedDoesNotMatch0.004
testPutDoesNotInvalidateCacheForUriInLocationHeadersFromOtherHosts0.005
testMultiHeadersAreSuccessfullyReplacedOn304Validation0.004
testResponsesToPUTsAreNotCached0.002
testCacheWithoutSupportForRangeAndContentRangeHeadersDoesNotCacheA206Response0.001
testNoStoreOnResponseIsNotStoredInCacheEvenWithContraryIndicators0.001
testDoesNotModifyContentLocationHeaderFromOrigin0.002
testOrderOfMultipleViaHeadersIsPreservedOnResponses0.003
testNoCacheCannotSatisfyASubsequentRequestWithoutRevalidationEvenWithContraryIndications0.003
testMustDiscardLeastRecentPartialResponseIfCachedResponseDoesNotHaveCacheValidator0.004
test1xxWarningsAreDeletedAfterSuccessfulRevalidation0.004
testDoesNotAddContentRangeHeaderToCachedResponseWithNoTransformIfNotPresent0.002
testOrderOfMultipleContentEncodingHeaderValuesIsPreserved0.002
testDoesNotAddContentMD5ToRequestIfNotPresent0.002
testDoesNotModifyContentEncodingHeaderOnCachedResponseWithNoTransform0.002
test206ResponseToConditionalRangeRequestDoesNotIncludeOtherEntityHeaders0.004
test206ResponseGeneratedFromCacheMustHaveDateHeader0.001
testDoesNotModifyAllowHeaderWithUnknownMethods0.002
testStaleEntryWithMustRevalidateIsNotUsedWithoutRevalidatingWithOrigin0.004
testOrderOfMultipleCacheControlHeadersIsPreservedOnResponses0.002
testSharedCacheMustUseNewRequestHeadersWhenRevalidatingAuthorizedResponsesWithSMaxAge0.002
testPutInvalidatesCacheForThatUriInRelativeContentLocationHeader0.004
testNoStoreOnRequestIsNotStoredInCacheEvenIfResponseMarkedCacheable0.002
testMustReturnAFreshEnoughCacheEntryIfItHasIt0.001
testDoesNotModifyContentLocationFromOriginOnCacheHit0.002
testPutInvalidatesCacheForThatUriInLocationHeader0.004
testUnknownHeadersOnRequestsAreForwarded0.002
testOrderOfMultipleCacheControlHeadersIsPreservedOnRequests0.002
testIncompleteResponseMustNotBeReturnedToClientWithoutMarkingItAs2060.002
testDoesNotModifyLastModifiedFromOriginOnCacheHit0.003
testDoesNotAddContentRangeHeaderToRequestIfNotPresent0.001
testDELETEWithIfMatchWeakETagIsNotAllowed0.001
testDoesNotModifyContentMD5HeaderFromOrigin0.002
test303ResponsesAreNotCached0.002
testResponsesToDELETEsAreNotCached0.001
testConditionalRequestWhereNotAllValidatorsMatchCannotBeServedFromCache0.004
testMustDiscardLeastRecentPartialResponseIfIncomingRequestDoesNotHaveCacheValidator0.004
testCacheIsNotUsedWhenRespondingToRequestWithPragmaNoCache0.003
testOrderOfMultiplePragmaHeadersIsPreservedOnResponses0.002
testCannotCombinePartialResponseIfCacheValidatorsDoNotStronglyMatch0.004
testDoesNotModifyExpiresHeaderFromOrigin0.003
testExpiresZeroHeaderIsTreatedAsStale0.004
testPUTWithIfNoneMatchWeakETagIsNotAllowed0.001
testResponseToAHEADRequestMustNotHaveABody0.002
testOrderOfMultipleExpectHeadersIsPreservedOnRequests0.001
testUnknownResponseStatusCodesAreNotCached0.634
testDoesNotAddContentRangeToRequestIfNotPresent0.001
testDoesNotAddContentLocationToOriginResponse0.001
testHEADResponseWithUpdatedContentLengthFieldMakeACacheEntryStale0.003
testDoesNotModifyContentRangeHeaderOnCachedResponseWithNoTransform0.001
testDoesNotAddContentMD5ToOriginResponse0.002
testDoesNotAddETagHeaderOnCacheHit0.001
testAgeHeaderPopulatedFromCacheEntryCurrentAge0
testViaHeaderOnResponseProperlyRecordsOriginProtocol0.001
testMustServeAppropriateErrorOrWarningIfNoOriginCommunicationPossible0
test206ResponseGeneratedFromCacheMustHaveABodyThatMatchesContentLengthHeaderIfPresent0.001
testPostDoesNotInvalidateCacheForUriInContentLocationHeadersFromOtherHosts0.007
testNonmatchingVariantCannotBeServedFromCacheUnlessConditionallyValidated0.005
test304ResponseGeneratedFromCacheIncludesEtagIfOriginResponseDid0.002
testForwardsUnknownHeadersOnRequestsFromHigherProtocolVersions0.002
testWarning110IsAddedToStaleResponses0.003
testPOSTRequestsAreWrittenThroughToOrigin0.001
testGenerates504IfSharedCacheCannotRevalidateAProxyRevalidateEntry0.002
testDoesNotModifyETagHeaderOnRequest0.001
testPUTRequestsAreWrittenThroughToOrigin0.001
testMalformedExpiresHeaderIsTreatedAsStale0.003
testDoesNotAddETagToRequestIfNotPresent0.001
test304ResponseGeneratedFromCacheIncludesDateHeader0.001
testSharedCacheMayCacheAuthorizedResponsesWithMustRevalidate0.002
testStaleEntryWithProxyRevalidateOnSharedCacheIsNotUsedWithoutRevalidatingWithOrigin0.001
testCannotServeFromCacheForVaryStar0.002
test206ResponsesAreNotCachedIfTheCacheDoesNotSupportRangeAndContentRangeHeaders0
test204ResponsesDoNotContainMessageBodies0
testDoesNotAddContentTypeHeaderToOriginResponseWithNoTransformIfNotPresent0.001
testOrderOfMultipleTransferEncodingsInSingleHeadersIsPreserved0.001
testPutInvalidatesCacheForThatUriInContentLocationHeader0.002
testUnknownMethodRequestsAreWrittenThroughToOrigin0.001
testDoesNotAddAMaxForwardsHeaderToForwardedOPTIONSRequests0
testDeleteInvalidatesCacheForThatUriInRelativeContentLocationHeader0.003
testStripsBadlyDatedWarningsFromStoredResponses0.001
testCannotCombinePartialResponseIfIncomingResponseDoesNotHaveACacheValidator0.002
testDeleteDoesNotInvalidateCacheForUriInLocationHeadersFromOtherHosts0.002
test304GeneratedFromCacheOnWeakValidatorDoesNotIncludeOtherEntityHeaders0.001
testPUTWithIfMatchWeakETagIsNotAllowed0
testOrderOfMultipleTransferEncodingHeadersIsPreserved0.001
testDoesNotAddContentEncodingHeaderToOriginResponseWithNoTransformIfNotPresent0.001
testDoesNotModifyContentTypeHeaderFromOriginResponseWithNoTransform0.001
testOrderOfMultipleContentLanguageHeadersIsPreservedOnResponses0.001
testHEADResponseWithUpdatedETagFieldMakeACacheEntryStale0.002
testDoesNotAddLastModifiedToOriginResponse0.001
testPostDoesNotInvalidateCacheForUriInLocationHeadersFromOtherHosts0.002
testDeleteToUriInvalidatesCacheForThatUri0.002
testDoesNotModifyLastModifiedHeaderFromOrigin0.001
test200ResponseToOPTIONSWithNoBodyShouldIncludeContentLengthZero0
testUpdatedEndToEndHeadersFrom304ArePassedOnResponseAndUpdatedInCacheEntry0.002
testDoesNotModifyContentMD5FromOriginOnCacheHit0.001
testPostInvalidatesCacheForThatUriInLocationHeader0.003
testAttachesWarningHeaderWhenGeneratingStaleResponse0
testMustDiscardLeastRecentPartialResponseIfCacheValidatorsDoNotStronglyMatchEvenIfResponsesOutOfOrder0.002
testHigherMajorProtocolVersionsOnRequestSwitchToTunnelBehavior0.001
testDoesNotAddContentLocationHeaderOnCacheHit0.001
testDoesNotAddContentMD5HeaderOnCacheHit0.001
testPostToUriInvalidatesCacheForThatUri0.002
testOPTIONSRequestsAreWrittenThroughToOrigin 0
skipped
test304ResponseWithDateHeaderForwardedFromOriginIncludesDateHeader0.001
testMustReturnACacheEntryIfItCanRevalidateIt0.001
testNoStoreOnRequestIsNotStoredInCache0.001
testDeleteDoesNotInvalidateCacheForUriInContentLocationHeadersFromOtherHosts0.002
testHeuristicCacheOlderThan24HoursHasWarningAttached0.001
testPostInvalidatesCacheForRelativeUriInContentLocationHeader0.003
testDoesNotModifyContentEncodingHeaderFromOriginResponseWithNoTransform0.001
testDoesNotModifyContentRangeHeaderFromOriginResponseWithNoTransform0.001
testTransferCodingsAreNotSentToAnHTTP_1_0Client0.001
testDoesNotAddContentEncodingHeaderToRequestIfNotPresent0.001
testOrderOfMultipleContentLanguageHeadersIsPreservedOnRequests0.001
testNotModifiedOfNonCachedEntityShouldRevalidateWithUnconditionalGET0.002
testCacheControlPrivateOnFieldIsNotReturnedBySharedCache0.001
testDoesNotModifyExpiresHeaderFromOriginOnCacheHit0.001
testCacheEntryIsUpdatedWithNewFieldValuesIn304Response0.001
testDoesNotModifyContentTypeHeaderOnCachedResponseWithNoTransform0.002
testDoesNotAddContentEncodingToRequestIfNotPresent0
testNoCacheCannotSatisfyASubsequentRequestWithoutRevalidation0.001
testMustIncludeAllowHeaderFromAnOrigin405Response0.001
testDoesNotModifyLastModifiedHeaderOnRequest0.001
testResponsesToPOSTWithoutCacheControlOrExpiresAreNotCached0.001
testVaryStarIsNotGeneratedByProxy0.001
testDoesNotModifyEtagFromOriginOnCacheHit0.001
testViaHeaderOnRequestProperlyRecordsClientProtocol0.001
testTRACERequestsAreWrittenThroughToOrigin0.001
testDecrementsMaxForwardsWhenForwardingOPTIONSRequest0.001
testMustIncludeWWWAuthenticateHeaderOnAnOrigin401Response0.001
testRetainsWarningHeadersReceivedFromUpstream0.001
testOrderOfMultipleAllowHeadersIsPreservedOnRequests0.001
testPutToUriInvalidatesCacheForThatUri0.002
testDeleteInvalidatesCacheForThatUriInContentLocationHeader0.002
testProperlyFormattedViaHeaderIsAddedToRequests0.002
testRequestsExpecting100ContinueBehaviorShouldSetExpectHeader0.001
testResponsesToOPTIONSAreNotCacheable0.001
testCannotUseVariantCacheEntryIfNotAllSelectingRequestHeadersMatch0.002
testOrderOfMultipleParametersInContentEncodingHeaderIsPreserved0.001
testDoesNotAddLastModifiedHeaderOnCacheHit0.001
test206ResponseIncludesVariantHeadersIfValueMightDiffer0.002
testSharedCacheMustNotNormallyCacheAuthorizedResponses0.001
testKeepsMostRecentDateHeaderForFreshResponse0.002
testDoesNotModifyEtagHeaderFromOrigin0.001
testResponseToA1_0RequestShouldUse1_10.002
testOrderOfMultipleAcceptLanguageHeadersIsPreservedOnRequests0.001
test304ResponseDoesNotContainABody0.001
testSharedCacheMayCacheAuthorizedResponsesWithSMaxAgeHeader0.001
testDoesNotAddContentRangeHeaderToOriginResponseWithNoTransformIfNotPresent0.001
testCacheDoesNotAssumeContentLocationHeaderIndicatesAnotherCacheableResource0.002
test206ContainsETagIfA200ResponseWouldHaveIncludedIt0.001
testResponseIncludesCacheEntryEndToEndHeadersForResponseAfter304Validation0.002
testMustNotUseMultipartByteRangeContentTypeOnCacheGenerated416Responses0.002

TestMemcachedCacheEntryFactoryImpl

createsMemcachedCacheEntryImpls0

TestHttpCacheEntry

canRetrieveOriginalStatusLine0.322
mustProvideStatusLine0.001
canConstructWithoutVariants0.001
testMissingDateHeaderIsIgnored0.001
testGetHeadersReturnsEmptyArrayIfNoneMatch0.002
testCacheEntryWithVaryStarHasVariants0.001
testGetHeadersReturnsCorrectHeaders0.001
statusCodeComesFromOriginalStatusLine0
testGetMethodReturnsCorrectRequestMethod0.001
canGetOriginalRequestDate0
canRetrieveOriginalVariantMap0
canGetOriginalResource0
testCacheEntryWithOneVaryHeaderHasVariants0.001
mustProvideResponseDate0.001
protocolVersionComesFromOriginalStatusLine0
retrievedVariantMapIsNotModifiable0.001
reasonPhraseComesFromOriginalStatusLine0
testGetFirstHeaderReturnsNullIfNoneMatch0
mustProvideResponseHeaders0
testGetFirstHeaderReturnsCorrectHeader0
canProvideVariantMap0
testCacheEntryWithNoVaryHeaderDoesNotHaveVariants0.001
canGetOriginalResponseDate0
canConvertToString0.013
testMalformedDateHeaderIsIgnored0.033
testValidDateHeaderIsParsed0
mustProvideRequestDate0
testCacheEntryWithMultipleVaryHeadersHasVariants0.001
canGetOriginalHeaders0.002

TestCacheableRequestPolicy

testIsGetServableFromCache0
testIsHeadServableFromCache0
testIsGetWithCacheControlServableFromCache0
testIsHeadWithCacheControlServableFromCache0
testIsGetWithPragmaServableFromCache0.001
testIsArbitraryMethodServableFromCache0
testIsHeadWithPragmaServableFromCache0

TestCachedHttpResponseGenerator

testAgeHeaderIsNotPopulatedIfCurrentAgeOfCacheEntryIsZero0.01
testAgeHeaderIsPopulatedWithCurrentAgeOfCacheEntryIfNonZero0.002
testResponseDoesNotContainEntityToServeHEADRequestIfEntryContainsResource0.001
testResponseStatusCodeMatchesCacheEntry0.001
testContentLengthIsNotAddedWhenTransferEncodingIsPresent0.001
testResponseMatchesCacheEntry0
testResponseContainsEntityToServeGETRequestIfEntryContainsResource0
testResponseHasContentLength0.001
testAgeHeaderIsPopulatedWithMaxAgeIfCurrentAgeTooBig0.002

TestCacheEntryUpdater

testNewerHeadersReplaceExistingHeaders0
testUpdatedEntryHasLatestRequestAndResponseDates0
testHeadersAreMergedCorrectly0
testNewHeadersAreAddedByMerge0
oldHeadersRetainedIfResponseOlderThanEntry0.001
entry1xxWarningsAreRemovedOnUpdate0
entryIsStillUpdatedByResponseWithMalformedDate0
entryWithMalformedDateIsStillUpdated0
cannotUpdateFromANon304OriginResponse0
testUpdateCacheEntryReturnsDifferentEntryInstance0

TestProtocolAllowedBehavior

testNonSharedCacheReturnsStaleResponseWhenRevalidationFailsForProxyRevalidate0.003
testNonSharedCacheMayCacheResponsesWithCacheControlPrivate0.002

TestProtocolRecommendations

testDoesNotModifyLocationOnResponses0.002
shouldStripContentLengthFromOrigin304ResponseToStrongValidation0.002
testDoesNotAddNewWarningHeaderIfResponseArrivesStale0.002
testForwardsExistingWarningHeadersOnResponseThatArrivesStale0.005
testUsesBothLastModifiedAndETagForConditionalRequestsIfAvailable0.004
testRevalidatesCachedResponseWithExpirationInThePast0.006
returns504ForStaleEntryWithOnlyIfCached0.003
shouldStripContentEncodingFromOrigin304ResponseToStrongValidation0.002
testDoesNotModifyExtensionHeaderOnResponses0.002
responseToGetWithQueryFrom1_0OriginAndNoExpiresIsNotCached0.002
testDoesNotModifyAcceptRangesOnResponses0.004
cacheGenerated304ForStrongValidatorShouldNotContainContentMD50.003
testDoesNotModifyIfNoneMatchOnRequests0.002
testDoesNotModifyContentTypeOnRequests0.002
testDoesNotReturnStaleResponseIfClientExplicitlyRequestsFirstHandOneWithCacheControl0.002
cacheGenerated304ForStrongDateValidatorShouldNotContainContentLanguage0.003
testDoesNotModifyRefererOnRequests0.002
testResponseToExistingVariantsUpdatesEntry0.006
testDoesNotReturnStaleResponseIfClientExplicitlyRequestsFirstHandOneWithPragma0.002
testDoesNotModifyContentRangeOnResponses0.002
issues304EvenWithWeakETag0.003
cacheGenerated304ForStrongDateValidatorShouldNotContainContentType0.003
testDoesNotModifyExtensionHeaderOnRequests0.002
cacheGenerated304ForStrongEtagValidatorShouldNotContainContentEncoding0.002
responseToGetWithQueryFrom1_0OriginVia1_1ProxyAndNoExpiresIsNotCached0.002
shouldStripContentRangeFromOrigin304ResponseToStringValidation0.001
testDoesNotModifyIfModifiedSinceOnRequests0.002
testDoesNotReturnStaleResponseIfClientExplicitlyRequestsFreshWithMaxAge0.002
testDoesNotModifyContentLengthOnRequests0.001
testDoesNotReturnStaleResponseIfClientExplicitlyRequestsFreshWithMaxStale0.002
testUsesLastModifiedDateForCacheConditionalRequests0.004
testDoesNotModifyIfRangeOnRequests0.001
cacheGenerated304ForStrongEtagValidatorShouldNotContainContentType0.002
testDoesNotModifyContentLengthOnResponses0.002
shouldStripLastModifiedFromOrigin304ResponseToStrongValidation0.003
cacheGenerated304ForStrongEtagValidatorShouldNotContainAllow0.002
shouldInvalidateAllVariantsForUnknownMethod0.007
cacheGenerated304ForStrongEtagValidatorShouldNotContainContentLanguage0.002
cacheGenerated304ForStrongDateValidatorShouldNotContainContentLength0.003
testDoesNotModifyUserAgentOnRequests0.002
cacheHitOkWithOnlyIfCached0.002
expiresPriorToDateWithNoCacheControlIsNotCacheable0.004
cacheMissResultsIn504WithOnlyIfCached0.001
cacheGenerated304ForStrongEtagValidatorShouldNotContainContentRange0.004
variantNegotiationsDoNotIncludeEtagsForPartialResponses0.006
testDoesNotModifyExpiresOnResponses0.003
shouldStripAllowFromOrigin304ResponseToStrongValidation0.002
testMayReturnStaleResponseIfClientExplicitlySpecifiesAcceptableMaxStale0.002
testDoesNotModifyServerOnResponses0.002
testDoesNotModifyContentTypeOnResponses0.002
cacheGenerated304ForStrongValidatorShouldNotContainContentLength0.002
shouldInvalidateNonvariantCacheEntryForUnknownMethod0.005
cacheGenerated304ForStrongDateValidatorShouldNotContainContentMD50.004
testDoesNotModifyDateOnRequests0.003
testDoesNotModifyAuthorizationOnRequests0.002
testReturnsCachedResponsesAppropriatelyWhenNoOriginCommunication0.004
returnsStaleCacheEntryWithOnlyIfCachedAndMaxStale0.007
cacheGenerated304ForStrongDateValidatorShouldNotContainContentRange0.004
testDoesNotModifyRetryAfterOnResponses0
cachedEntryShouldNotBeUsedIfMoreRecentMentionInContentLocation0.007
testDoesNotModifyFromOnRequests0.003
testDoesNotModifyContentRangeOnRequests0.002
shouldStripContentTypeFromOrigin304ResponseToStrongValidation0.002
expiresEqualToDateWithNoCacheControlIsNotCacheable0.004
testDoesNotModifyDateOnResponses0.003
testRetriesValidationThatResultsInAnOlderDated304Response0.004
testDoesNotModifyIfUnmodifiedSinceOnRequests0.002
testIdentityCodingIsNotUsedInContentEncodingHeader0.003
cacheGenerated304ForStrongEtagValidatorShouldNotContainLastModified0.002
testDoesNotModifyVaryOnResponses0.003
otherFreshnessRequestDirectivesNotAllowedWithNoCache0.002
cacheGenerated304ForStrongDateValidatorShouldNotContainAllow0.002
testResponseToExistingVariantsIsCachedForFutureResponses0.003
testSendsAllVariantEtagsInConditionalRequest0.005
shouldStripContentMD5FromOrigin304ResponseToStrongValidation0.001
testDoesNotModifyContentMD5OnRequests0.001
testDoesNotModifyLastModifiedOnResponses0.002
testDoesNotModifyIfMatchOnRequests0.001
shouldStripContentLanguageFromOrigin304ResponseToStrongValidation0.001
testDoesNotReturnStaleResponseIfClientExplicitlySpecifiesLargerMaxAge0.002
cacheGenerated304ForStrongDateValidatorShouldNotContainContentEncoding0.002
cacheGenerated304ForStrongDateValidatorShouldNotContainLastModified0.002
cacheShouldUpdateWithNewCacheableResponse0.003
testDoesNotReturnStaleResponseIfClientExplicitlyRequestsFreshWithMinFresh0.002
testDoesNotModifyRangeOnRequests0.002
testDoesNotModifyContentMD5OnResponses0.001
testDoesNotModifyETagOnResponses0.002

TestRFC5861Compliance

testStaleIfErrorInResponseYieldsToProxyRevalidateForSharedCache0.004
testStaleIfErrorInRequestIsFalseReturnsError0.001
testStaleIfErrorInResponseIsTrueReturnsStaleEntryWithWarning0.002
testStaleWhileRevalidateYieldsToProxyRevalidateForSharedCache0.003
testStaleWhileRevalidateYieldsToExplicitFreshnessRequest0.003
testStaleWhileRevalidateYieldsToMustRevalidate0.001
testStaleIfErrorInResponseYieldsToMustRevalidate0.002
testStaleWhileRevalidateReturnsStaleEntryWithWarning0.002
testHTTPCLIENT14700.002
testStaleIfErrorInResponseYieldsToExplicitFreshnessRequest0.002
testCanAlsoServeStale304sWhileRevalidating0.002
testConsumesErrorResponseWhenServingStale0.002
testStaleIfErrorInResponseIsFalseReturnsError0.002
testStaleIfErrorInRequestIsTrueReturnsStaleNonRevalidatableEntryWithWarning0.001
testStaleIfErrorInRequestIsTrueReturnsStaleEntryWithWarning0.002
testStaleIfErrorInResponseNeedNotYieldToProxyRevalidateForPrivateCache0.001
testStaleWhileRevalidateReturnsStaleNonRevalidatableEntryWithWarning0.005

TestEhcacheHttpCacheStorage

testCacheUpdateFail0.039
testCacheRemove0
testCacheUpdate0.003
testCacheGetNullEntry0
testCacheGet0.001
testCachePut0.001
testCacheUpdateNullEntry0.002
testSingleCacheUpdateRetry0.002

TestPrefixKeyHashingScheme

addsPrefixToBackingScheme0

TestAsynchronousValidator

testSchedulingStrategyShutdownOnClose0.002
testRevalidateCacheEntryProperlyCollapsesRequest0.003
testRevalidateCacheEntrySchedulesExecutionAndPopulatesIdentifier0.002
testRevalidateCacheEntryEndToEnd0.002
testRevalidateCacheEntryDoesNotPopulateIdentifierOnRejectedExecutionException0.002
testMarkCompleteRemovesIdentifier0.002
testVariantsBothRevalidated0.002


Failure Details

[Summary] [Package List] [Test Cases]



testOPTIONSRequestsAreWrittenThroughToOrigin
skipped: skipped
testOPTIONSRequestsAreWrittenThroughToOrigin
skipped: skipped