OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "testing/gtest/include/gtest/gtest.h" | 5 #include "testing/gtest/include/gtest/gtest.h" |
6 #include "webkit/appcache/appcache.h" | 6 #include "webkit/appcache/appcache.h" |
7 #include "webkit/appcache/appcache_frontend_impl.h" | 7 #include "webkit/appcache/appcache_frontend_impl.h" |
8 #include "webkit/appcache/appcache_host.h" | 8 #include "webkit/appcache/appcache_host.h" |
9 #include "webkit/appcache/mock_appcache_service.h" | 9 #include "webkit/appcache/mock_appcache_service.h" |
10 | 10 |
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
122 const GURL kFallbackEntryUrl2("http://blah/fallback_entry2"); | 122 const GURL kFallbackEntryUrl2("http://blah/fallback_entry2"); |
123 const GURL kFallbackNamespaceUrl2("http://blah/fallback_namespace/longer"); | 123 const GURL kFallbackNamespaceUrl2("http://blah/fallback_namespace/longer"); |
124 const GURL kManifestUrl("http://blah/manifest"); | 124 const GURL kManifestUrl("http://blah/manifest"); |
125 const GURL kForeignExplicitEntryUrl("http://blah/foreign"); | 125 const GURL kForeignExplicitEntryUrl("http://blah/foreign"); |
126 const GURL kInOnlineNamespaceUrl( | 126 const GURL kInOnlineNamespaceUrl( |
127 "http://blah/online_namespace/network"); | 127 "http://blah/online_namespace/network"); |
128 const GURL kExplicitInOnlineNamespaceUrl( | 128 const GURL kExplicitInOnlineNamespaceUrl( |
129 "http://blah/online_namespace/explicit"); | 129 "http://blah/online_namespace/explicit"); |
130 const GURL kFallbackTestUrl1("http://blah/fallback_namespace/1"); | 130 const GURL kFallbackTestUrl1("http://blah/fallback_namespace/1"); |
131 const GURL kFallbackTestUrl2("http://blah/fallback_namespace/longer2"); | 131 const GURL kFallbackTestUrl2("http://blah/fallback_namespace/longer2"); |
| 132 const GURL kOnlineNamespaceWithinFallback( |
| 133 "http://blah/fallback_namespace/1/online"); |
132 | 134 |
133 const int64 kFallbackResponseId1 = 1; | 135 const int64 kFallbackResponseId1 = 1; |
134 const int64 kFallbackResponseId2 = 2; | 136 const int64 kFallbackResponseId2 = 2; |
135 const int64 kManifestResponseId = 3; | 137 const int64 kManifestResponseId = 3; |
136 const int64 kForeignExplicitResponseId = 4; | 138 const int64 kForeignExplicitResponseId = 4; |
137 const int64 kExplicitInOnlineNamespaceResponseId = 5; | 139 const int64 kExplicitInOnlineNamespaceResponseId = 5; |
138 | 140 |
139 Manifest manifest; | 141 Manifest manifest; |
140 manifest.online_whitelist_namespaces.push_back(kOnlineNamespaceUrl); | 142 manifest.online_whitelist_namespaces.push_back(kOnlineNamespaceUrl); |
| 143 manifest.online_whitelist_namespaces.push_back( |
| 144 kOnlineNamespaceWithinFallback); |
141 manifest.fallback_namespaces.push_back( | 145 manifest.fallback_namespaces.push_back( |
142 FallbackNamespace(kFallbackNamespaceUrl1, kFallbackEntryUrl1)); | 146 FallbackNamespace(kFallbackNamespaceUrl1, kFallbackEntryUrl1)); |
143 manifest.fallback_namespaces.push_back( | 147 manifest.fallback_namespaces.push_back( |
144 FallbackNamespace(kFallbackNamespaceUrl2, kFallbackEntryUrl2)); | 148 FallbackNamespace(kFallbackNamespaceUrl2, kFallbackEntryUrl2)); |
145 | 149 |
146 // Create a cache with some namespaces and entries. | 150 // Create a cache with some namespaces and entries. |
147 scoped_refptr<AppCache> cache(new AppCache(&service, 1234)); | 151 scoped_refptr<AppCache> cache(new AppCache(&service, 1234)); |
148 cache->InitializeWithManifest(&manifest); | 152 cache->InitializeWithManifest(&manifest); |
149 cache->AddEntry( | 153 cache->AddEntry( |
150 kFallbackEntryUrl1, | 154 kFallbackEntryUrl1, |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
225 fallback_entry = AppCacheEntry(); // reset | 229 fallback_entry = AppCacheEntry(); // reset |
226 | 230 |
227 found = cache->FindResponseForRequest(kFallbackTestUrl2, | 231 found = cache->FindResponseForRequest(kFallbackTestUrl2, |
228 &entry, &fallback_entry, &fallback_namespace, &network_namespace); | 232 &entry, &fallback_entry, &fallback_namespace, &network_namespace); |
229 EXPECT_TRUE(found); | 233 EXPECT_TRUE(found); |
230 EXPECT_FALSE(entry.has_response_id()); | 234 EXPECT_FALSE(entry.has_response_id()); |
231 EXPECT_EQ(kFallbackResponseId2, fallback_entry.response_id()); | 235 EXPECT_EQ(kFallbackResponseId2, fallback_entry.response_id()); |
232 EXPECT_EQ(kFallbackEntryUrl2, | 236 EXPECT_EQ(kFallbackEntryUrl2, |
233 cache->GetFallbackEntryUrl(fallback_namespace)); | 237 cache->GetFallbackEntryUrl(fallback_namespace)); |
234 EXPECT_FALSE(network_namespace); | 238 EXPECT_FALSE(network_namespace); |
| 239 |
| 240 fallback_entry = AppCacheEntry(); // reset |
| 241 |
| 242 found = cache->FindResponseForRequest(kOnlineNamespaceWithinFallback, |
| 243 &entry, &fallback_entry, &fallback_namespace, &network_namespace); |
| 244 EXPECT_TRUE(found); |
| 245 EXPECT_FALSE(entry.has_response_id()); |
| 246 EXPECT_FALSE(fallback_entry.has_response_id()); |
| 247 EXPECT_TRUE(network_namespace); |
| 248 |
| 249 fallback_entry = AppCacheEntry(); // reset |
| 250 |
| 251 found = cache->FindResponseForRequest( |
| 252 kOnlineNamespaceWithinFallback.Resolve("online_resource"), |
| 253 &entry, &fallback_entry, &fallback_namespace, &network_namespace); |
| 254 EXPECT_TRUE(found); |
| 255 EXPECT_FALSE(entry.has_response_id()); |
| 256 EXPECT_FALSE(fallback_entry.has_response_id()); |
| 257 EXPECT_TRUE(network_namespace); |
235 } | 258 } |
236 | 259 |
237 } // namespace appacache | 260 } // namespace appacache |
238 | 261 |
OLD | NEW |