支持缓存校验。

This commit is contained in:
zhengchao
2018-10-25 18:45:33 +08:00
parent 990e247155
commit 27d4581d9b
7 changed files with 523 additions and 211 deletions

View File

@@ -18,10 +18,10 @@ TEST(CacheActionTest, PragmaField)
http_heads.http_field = TFE_HTTP_PRAGMA;
http_heads.value = "no-cache";
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1,&restrict), VERIFY);
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1,&restrict), REVALIDATE);
EXPECT_EQ(restrict.min_fresh, 0);
EXPECT_EQ(restrict.max_age, 0);
EXPECT_EQ(tfe_cache_put_pending(&http_heads, 1, &freshness), VERIFY);
EXPECT_EQ(tfe_cache_put_pending(&http_heads, 1, &freshness), REVALIDATE);
EXPECT_EQ(freshness.date, 0);
EXPECT_EQ(freshness.last_modified, 0);
EXPECT_EQ(freshness.timeout, 0);
@@ -35,10 +35,10 @@ TEST(CacheActionTest, CacheCtlNoCache)
struct response_freshness freshness;
http_heads.http_field = TFE_HTTP_CACHE_CONTROL;
http_heads.value = "no-cache";
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), VERIFY);
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), REVALIDATE);
EXPECT_EQ(restrict.min_fresh, 0);
EXPECT_EQ(restrict.max_age, 0);
EXPECT_EQ(tfe_cache_put_pending(&http_heads, 1, &freshness), VERIFY);
EXPECT_EQ(tfe_cache_put_pending(&http_heads, 1, &freshness), REVALIDATE);
EXPECT_EQ(freshness.date, 0);
EXPECT_EQ(freshness.last_modified, 0);
EXPECT_EQ(freshness.timeout, 0);
@@ -92,7 +92,7 @@ TEST(CacheActionTest, CacheCtlMustRevalidate)
struct response_freshness freshness;
http_heads.http_field = TFE_HTTP_CACHE_CONTROL;
http_heads.value = "must-revalidate";
EXPECT_EQ(tfe_cache_put_pending(&http_heads, 1, &freshness), VERIFY);
EXPECT_EQ(tfe_cache_put_pending(&http_heads, 1, &freshness), REVALIDATE);
EXPECT_EQ(freshness.date, 0);
EXPECT_EQ(freshness.last_modified, 0);
EXPECT_EQ(freshness.timeout, 0);
@@ -103,7 +103,7 @@ TEST(CacheActionTest, CacheCtlProxyRevalidate)
struct response_freshness freshness;
http_heads.http_field = TFE_HTTP_CACHE_CONTROL;
http_heads.value = "proxy-revalidate";
EXPECT_EQ(tfe_cache_put_pending(&http_heads, 1, &freshness), VERIFY);
EXPECT_EQ(tfe_cache_put_pending(&http_heads, 1, &freshness), REVALIDATE);
EXPECT_EQ(freshness.date, 0);
EXPECT_EQ(freshness.last_modified, 0);
EXPECT_EQ(freshness.timeout, 0);
@@ -149,7 +149,7 @@ TEST(CacheActionTest, IfMatchRequest)
struct request_freshness restrict;
http_heads.http_field = TLF_HTTP_IF_MATCH;
http_heads.value = "50b1c1d4f775c61:df3";
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), VERIFY);
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), REVALIDATE);
EXPECT_EQ(restrict.min_fresh, 0);
EXPECT_EQ(restrict.max_age, 0);
}
@@ -159,7 +159,7 @@ TEST(CacheActionTest, IfNoMatchRequest)
struct request_freshness restrict;
http_heads.http_field = TLF_HTTP_IF_NONE_MATCH;
http_heads.value = "50b1c1d4f775c61:df3";
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), VERIFY);
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), REVALIDATE);
EXPECT_EQ(restrict.min_fresh, 0);
EXPECT_EQ(restrict.max_age, 0);
}
@@ -169,7 +169,7 @@ TEST(CacheActionTest, IfModifiedSinceRequest)
struct request_freshness restrict;
http_heads.http_field = TLF_HTTP_IF_MODIFIED_SINCE;
http_heads.value = "Sun, 01 Dec 2019 16:00:00 GMT";
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), VERIFY);
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), REVALIDATE);
EXPECT_EQ(restrict.min_fresh, 0);
EXPECT_EQ(restrict.max_age, 0);
}
@@ -179,7 +179,7 @@ TEST(CacheActionTest, IfUnModifiedSinceRequest)
struct request_freshness restrict;
http_heads.http_field = TLF_HTTP_IF_UNMODIFIED_SINCE;
http_heads.value = "Sun, 01 Dec 2019 16:00:00 GMT";
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), VERIFY);
EXPECT_EQ(tfe_cache_get_pending(&http_heads, 1, &restrict), REVALIDATE);
EXPECT_EQ(restrict.min_fresh, 0);
EXPECT_EQ(restrict.max_age, 0);
}