| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "base/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/files/file_util.h" | 6 #include "base/files/file_util.h" |
| 7 #include "base/files/scoped_temp_dir.h" | 7 #include "base/files/scoped_temp_dir.h" |
| 8 #include "base/memory/ref_counted.h" | 8 #include "base/memory/ref_counted.h" |
| 9 #include "base/run_loop.h" | 9 #include "base/run_loop.h" |
| 10 #include "base/stl_util.h" | 10 #include "base/stl_util.h" |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 false, false, false, net::COOKIE_PRIORITY_DEFAULT)); | 102 false, false, false, net::COOKIE_PRIORITY_DEFAULT)); |
| 103 } | 103 } |
| 104 | 104 |
| 105 void DestroyStore() { | 105 void DestroyStore() { |
| 106 store_ = nullptr; | 106 store_ = nullptr; |
| 107 // Ensure that |store_|'s destructor has run by shutting down the pool and | 107 // Ensure that |store_|'s destructor has run by shutting down the pool and |
| 108 // then forcing the pool to be destructed. This will ensure that all the | 108 // then forcing the pool to be destructed. This will ensure that all the |
| 109 // tasks that block pool shutdown (e.g. |store_|'s cleanup) have run before | 109 // tasks that block pool shutdown (e.g. |store_|'s cleanup) have run before |
| 110 // yielding control. | 110 // yielding control. |
| 111 pool_owner_->pool()->FlushForTesting(); | 111 pool_owner_->pool()->FlushForTesting(); |
| 112 pool_owner_->pool()->Shutdown(); | |
| 113 pool_owner_.reset(new base::SequencedWorkerPoolOwner(3, "Background Pool")); | 112 pool_owner_.reset(new base::SequencedWorkerPoolOwner(3, "Background Pool")); |
| 114 } | 113 } |
| 115 | 114 |
| 116 void SetUp() override { | 115 void SetUp() override { |
| 117 ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); | 116 ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); |
| 118 } | 117 } |
| 119 | 118 |
| 120 void TearDown() override { | 119 void TearDown() override { |
| 121 DestroyStore(); | 120 DestroyStore(); |
| 122 pool_owner_->pool()->Shutdown(); | |
| 123 } | 121 } |
| 124 | 122 |
| 125 TestBrowserThreadBundle bundle_; | 123 TestBrowserThreadBundle bundle_; |
| 126 scoped_ptr<base::SequencedWorkerPoolOwner> pool_owner_; | 124 scoped_ptr<base::SequencedWorkerPoolOwner> pool_owner_; |
| 127 base::WaitableEvent loaded_event_; | 125 base::WaitableEvent loaded_event_; |
| 128 base::WaitableEvent destroy_event_; | 126 base::WaitableEvent destroy_event_; |
| 129 base::ScopedTempDir temp_dir_; | 127 base::ScopedTempDir temp_dir_; |
| 130 scoped_refptr<QuotaPolicyCookieStore> store_; | 128 scoped_refptr<QuotaPolicyCookieStore> store_; |
| 131 CanonicalCookieVector cookies_; | 129 CanonicalCookieVector cookies_; |
| 132 }; | 130 }; |
| (...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 282 // Reload and test for persistence. | 280 // Reload and test for persistence. |
| 283 STLDeleteElements(&cookies); | 281 STLDeleteElements(&cookies); |
| 284 CreateAndLoad(storage_policy.get(), &cookies); | 282 CreateAndLoad(storage_policy.get(), &cookies); |
| 285 EXPECT_EQ(0U, cookies.size()); | 283 EXPECT_EQ(0U, cookies.size()); |
| 286 | 284 |
| 287 STLDeleteElements(&cookies); | 285 STLDeleteElements(&cookies); |
| 288 } | 286 } |
| 289 | 287 |
| 290 } // namespace | 288 } // namespace |
| 291 } // namespace content | 289 } // namespace content |
| OLD | NEW |