| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 <stack> | 5 #include <stack> |
| 6 #include <string> | 6 #include <string> |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/message_loop.h" | 9 #include "base/message_loop.h" |
| 10 #include "base/threading/thread.h" | 10 #include "base/threading/thread.h" |
| 11 #include "base/synchronization/waitable_event.h" | 11 #include "base/synchronization/waitable_event.h" |
| (...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 216 EXPECT_EQ(kNoCacheId, cache_id); | 216 EXPECT_EQ(kNoCacheId, cache_id); |
| 217 EXPECT_EQ(GURL(), manifest_url); | 217 EXPECT_EQ(GURL(), manifest_url); |
| 218 | 218 |
| 219 AppCacheURLRequestJob* fallback_job; | 219 AppCacheURLRequestJob* fallback_job; |
| 220 fallback_job = handler_->MaybeLoadFallbackForRedirect( | 220 fallback_job = handler_->MaybeLoadFallbackForRedirect( |
| 221 request_.get(), GURL("http://blah/redirect")); | 221 request_.get(), GURL("http://blah/redirect")); |
| 222 EXPECT_FALSE(fallback_job); | 222 EXPECT_FALSE(fallback_job); |
| 223 fallback_job = handler_->MaybeLoadFallbackForResponse(request_.get()); | 223 fallback_job = handler_->MaybeLoadFallbackForResponse(request_.get()); |
| 224 EXPECT_FALSE(fallback_job); | 224 EXPECT_FALSE(fallback_job); |
| 225 | 225 |
| 226 EXPECT_TRUE(host_->preferred_manifest_url().is_empty()); |
| 227 |
| 226 TestFinished(); | 228 TestFinished(); |
| 227 } | 229 } |
| 228 | 230 |
| 229 // MainResource_Hit -------------------------------------------------- | 231 // MainResource_Hit -------------------------------------------------- |
| 230 | 232 |
| 231 void MainResource_Hit() { | 233 void MainResource_Hit() { |
| 232 PushNextTask(NewRunnableMethod( | 234 PushNextTask(NewRunnableMethod( |
| 233 this, &AppCacheRequestHandlerTest::Verify_MainResource_Hit)); | 235 this, &AppCacheRequestHandlerTest::Verify_MainResource_Hit)); |
| 234 | 236 |
| 235 request_.reset(new MockURLRequest(GURL("http://blah/"))); | 237 request_.reset(new MockURLRequest(GURL("http://blah/"))); |
| (...skipping 21 matching lines...) Expand all Loading... |
| 257 int64 cache_id = kNoCacheId; | 259 int64 cache_id = kNoCacheId; |
| 258 GURL manifest_url; | 260 GURL manifest_url; |
| 259 handler_->GetExtraResponseInfo(&cache_id, &manifest_url); | 261 handler_->GetExtraResponseInfo(&cache_id, &manifest_url); |
| 260 EXPECT_EQ(1, cache_id); | 262 EXPECT_EQ(1, cache_id); |
| 261 EXPECT_EQ(GURL("http://blah/manifest/"), manifest_url); | 263 EXPECT_EQ(GURL("http://blah/manifest/"), manifest_url); |
| 262 | 264 |
| 263 AppCacheURLRequestJob* fallback_job; | 265 AppCacheURLRequestJob* fallback_job; |
| 264 fallback_job = handler_->MaybeLoadFallbackForResponse(request_.get()); | 266 fallback_job = handler_->MaybeLoadFallbackForResponse(request_.get()); |
| 265 EXPECT_FALSE(fallback_job); | 267 EXPECT_FALSE(fallback_job); |
| 266 | 268 |
| 269 EXPECT_EQ(GURL("http://blah/manifest/"), |
| 270 host_->preferred_manifest_url()); |
| 271 |
| 267 TestFinished(); | 272 TestFinished(); |
| 268 } | 273 } |
| 269 | 274 |
| 270 // MainResource_Fallback -------------------------------------------------- | 275 // MainResource_Fallback -------------------------------------------------- |
| 271 | 276 |
| 272 void MainResource_Fallback() { | 277 void MainResource_Fallback() { |
| 273 PushNextTask(NewRunnableMethod( | 278 PushNextTask(NewRunnableMethod( |
| 274 this, &AppCacheRequestHandlerTest::Verify_MainResource_Fallback)); | 279 this, &AppCacheRequestHandlerTest::Verify_MainResource_Fallback)); |
| 275 | 280 |
| 276 request_.reset(new MockURLRequest(GURL("http://blah/"))); | 281 request_.reset(new MockURLRequest(GURL("http://blah/"))); |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 310 EXPECT_TRUE(job_->is_delivering_appcache_response()); | 315 EXPECT_TRUE(job_->is_delivering_appcache_response()); |
| 311 | 316 |
| 312 int64 cache_id = kNoCacheId; | 317 int64 cache_id = kNoCacheId; |
| 313 GURL manifest_url; | 318 GURL manifest_url; |
| 314 handler_->GetExtraResponseInfo(&cache_id, &manifest_url); | 319 handler_->GetExtraResponseInfo(&cache_id, &manifest_url); |
| 315 EXPECT_EQ(1, cache_id); | 320 EXPECT_EQ(1, cache_id); |
| 316 EXPECT_EQ(GURL("http://blah/manifest/"), manifest_url); | 321 EXPECT_EQ(GURL("http://blah/manifest/"), manifest_url); |
| 317 EXPECT_TRUE(host_->main_resource_was_fallback_); | 322 EXPECT_TRUE(host_->main_resource_was_fallback_); |
| 318 EXPECT_EQ(GURL("http://blah/fallbackurl"), host_->fallback_url_); | 323 EXPECT_EQ(GURL("http://blah/fallbackurl"), host_->fallback_url_); |
| 319 | 324 |
| 325 EXPECT_EQ(GURL("http://blah/manifest/"), |
| 326 host_->preferred_manifest_url()); |
| 327 |
| 320 TestFinished(); | 328 TestFinished(); |
| 321 } | 329 } |
| 322 | 330 |
| 323 // SubResource_Miss_WithNoCacheSelected ---------------------------------- | 331 // SubResource_Miss_WithNoCacheSelected ---------------------------------- |
| 324 | 332 |
| 325 void SubResource_Miss_WithNoCacheSelected() { | 333 void SubResource_Miss_WithNoCacheSelected() { |
| 326 request_.reset(new MockURLRequest(GURL("http://blah/"))); | 334 request_.reset(new MockURLRequest(GURL("http://blah/"))); |
| 327 handler_.reset(host_->CreateRequestHandler(request_.get(), | 335 handler_.reset(host_->CreateRequestHandler(request_.get(), |
| 328 ResourceType::SUB_RESOURCE)); | 336 ResourceType::SUB_RESOURCE)); |
| 329 | 337 |
| (...skipping 29 matching lines...) Expand all Loading... |
| 359 | 367 |
| 360 TestFinished(); | 368 TestFinished(); |
| 361 } | 369 } |
| 362 | 370 |
| 363 // SubResource_Miss_WithWaitForCacheSelection ----------------------------- | 371 // SubResource_Miss_WithWaitForCacheSelection ----------------------------- |
| 364 | 372 |
| 365 void SubResource_Miss_WithWaitForCacheSelection() { | 373 void SubResource_Miss_WithWaitForCacheSelection() { |
| 366 // Precondition, the host is waiting on cache selection. | 374 // Precondition, the host is waiting on cache selection. |
| 367 scoped_refptr<AppCache> cache(MakeNewCache()); | 375 scoped_refptr<AppCache> cache(MakeNewCache()); |
| 368 host_->pending_selected_cache_id_ = cache->cache_id(); | 376 host_->pending_selected_cache_id_ = cache->cache_id(); |
| 377 host_->set_preferred_manifest_url(cache->owning_group()->manifest_url()); |
| 369 | 378 |
| 370 request_.reset(new MockURLRequest(GURL("http://blah/"))); | 379 request_.reset(new MockURLRequest(GURL("http://blah/"))); |
| 371 handler_.reset(host_->CreateRequestHandler(request_.get(), | 380 handler_.reset(host_->CreateRequestHandler(request_.get(), |
| 372 ResourceType::SUB_RESOURCE)); | 381 ResourceType::SUB_RESOURCE)); |
| 373 EXPECT_TRUE(handler_.get()); | 382 EXPECT_TRUE(handler_.get()); |
| 374 job_ = handler_->MaybeLoadResource(request_.get()); | 383 job_ = handler_->MaybeLoadResource(request_.get()); |
| 375 EXPECT_TRUE(job_.get()); | 384 EXPECT_TRUE(job_.get()); |
| 376 EXPECT_TRUE(job_->is_waiting()); | 385 EXPECT_TRUE(job_->is_waiting()); |
| 377 | 386 |
| 378 host_->FinishCacheSelection(cache, NULL); | 387 host_->FinishCacheSelection(cache, NULL); |
| (...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 739 | 748 |
| 740 TEST_F(AppCacheRequestHandlerTest, WorkerRequest) { | 749 TEST_F(AppCacheRequestHandlerTest, WorkerRequest) { |
| 741 RunTestOnIOThread(&AppCacheRequestHandlerTest::WorkerRequest); | 750 RunTestOnIOThread(&AppCacheRequestHandlerTest::WorkerRequest); |
| 742 } | 751 } |
| 743 | 752 |
| 744 } // namespace appcache | 753 } // namespace appcache |
| 745 | 754 |
| 746 // AppCacheRequestHandlerTest is expected to always live longer than the | 755 // AppCacheRequestHandlerTest is expected to always live longer than the |
| 747 // runnable methods. This lets us call NewRunnableMethod on its instances. | 756 // runnable methods. This lets us call NewRunnableMethod on its instances. |
| 748 DISABLE_RUNNABLE_METHOD_REFCOUNT(appcache::AppCacheRequestHandlerTest); | 757 DISABLE_RUNNABLE_METHOD_REFCOUNT(appcache::AppCacheRequestHandlerTest); |
| OLD | NEW |