Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 <memory> | 5 #include <memory> |
| 6 #include <set> | 6 #include <set> |
| 7 #include <utility> | 7 #include <utility> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| (...skipping 26 matching lines...) Expand all Loading... | |
| 37 void TestDeleteAllData(); | 37 void TestDeleteAllData(); |
| 38 | 38 |
| 39 content::TestBrowserThreadBundle thread_bundle_; | 39 content::TestBrowserThreadBundle thread_bundle_; |
| 40 TestingProfile profile_; | 40 TestingProfile profile_; |
| 41 std::unique_ptr<PredictorDatabase> db_; | 41 std::unique_ptr<PredictorDatabase> db_; |
| 42 scoped_refptr<ResourcePrefetchPredictorTables> tables_; | 42 scoped_refptr<ResourcePrefetchPredictorTables> tables_; |
| 43 | 43 |
| 44 using PrefetchDataMap = ResourcePrefetchPredictorTables::PrefetchDataMap; | 44 using PrefetchDataMap = ResourcePrefetchPredictorTables::PrefetchDataMap; |
| 45 using RedirectDataMap = ResourcePrefetchPredictorTables::RedirectDataMap; | 45 using RedirectDataMap = ResourcePrefetchPredictorTables::RedirectDataMap; |
| 46 using ManifestDataMap = ResourcePrefetchPredictorTables::ManifestDataMap; | 46 using ManifestDataMap = ResourcePrefetchPredictorTables::ManifestDataMap; |
| 47 using OriginDataMap = ResourcePrefetchPredictorTables::OriginDataMap; | |
| 47 | 48 |
| 48 private: | 49 private: |
| 49 // Initializes the tables, |test_url_data_|, |test_host_data_|, | 50 // Initializes the tables, |test_url_data_|, |test_host_data_|, |
| 50 // |test_url_redirect_data_|, |test_host_redirect_data_| and | 51 // |test_url_redirect_data_|, |test_host_redirect_data_|, |
| 51 // |test_manifest_data_|. | 52 // |test_manifest_data_|, and |test_origin_data|. |
| 52 void InitializeSampleData(); | 53 void InitializeSampleData(); |
| 53 | 54 |
| 54 // Checks that the input PrefetchData are the same, although the resources | 55 // Checks that the input PrefetchData are the same, although the resources |
| 55 // can be in different order. | 56 // can be in different order. |
| 56 void TestPrefetchDataAreEqual(const PrefetchDataMap& lhs, | 57 void TestPrefetchDataAreEqual(const PrefetchDataMap& lhs, |
| 57 const PrefetchDataMap& rhs) const; | 58 const PrefetchDataMap& rhs) const; |
| 58 void TestResourcesAreEqual(const std::vector<ResourceData>& lhs, | 59 void TestResourcesAreEqual(const std::vector<ResourceData>& lhs, |
| 59 const std::vector<ResourceData>& rhs) const; | 60 const std::vector<ResourceData>& rhs) const; |
| 60 | 61 |
| 61 // Checks that the input RedirectData are the same, although the redirects | 62 // Checks that the input RedirectData are the same, although the redirects |
| 62 // can be in different order. | 63 // can be in different order. |
| 63 void TestRedirectDataAreEqual(const RedirectDataMap& lhs, | 64 void TestRedirectDataAreEqual(const RedirectDataMap& lhs, |
| 64 const RedirectDataMap& rhs) const; | 65 const RedirectDataMap& rhs) const; |
| 65 void TestRedirectsAreEqual(const std::vector<RedirectStat>& lhs, | 66 void TestRedirectsAreEqual(const std::vector<RedirectStat>& lhs, |
| 66 const std::vector<RedirectStat>& rhs) const; | 67 const std::vector<RedirectStat>& rhs) const; |
| 67 | 68 |
| 68 // Checks that the input ManifestData are the same, although the resources | 69 // Checks that the input ManifestData are the same, although the resources |
| 69 // can be in different order. | 70 // can be in different order. |
| 70 void TestManifestDataAreEqual(const ManifestDataMap& lhs, | 71 void TestManifestDataAreEqual(const ManifestDataMap& lhs, |
| 71 const ManifestDataMap& rhs) const; | 72 const ManifestDataMap& rhs) const; |
| 72 void TestManifestResourcesAreEqual( | 73 void TestManifestResourcesAreEqual( |
| 73 const std::vector<precache::PrecacheResource>& lhs, | 74 const std::vector<precache::PrecacheResource>& lhs, |
| 74 const std::vector<precache::PrecacheResource>& rhs) const; | 75 const std::vector<precache::PrecacheResource>& rhs) const; |
| 75 | 76 |
| 77 void TestOriginDataAreEqual(const OriginDataMap& lhs, | |
| 78 const OriginDataMap& rhs) const; | |
| 79 void TestOriginStatsAreEqual(const std::vector<OriginStat>& lhs, | |
| 80 const std::vector<OriginStat>& rhs) const; | |
| 81 | |
| 76 void AddKey(PrefetchDataMap* m, const std::string& key) const; | 82 void AddKey(PrefetchDataMap* m, const std::string& key) const; |
| 77 void AddKey(RedirectDataMap* m, const std::string& key) const; | 83 void AddKey(RedirectDataMap* m, const std::string& key) const; |
| 78 void AddKey(ManifestDataMap* m, const std::string& key) const; | 84 void AddKey(ManifestDataMap* m, const std::string& key) const; |
| 85 void AddKey(OriginDataMap* m, const std::string& key) const; | |
| 79 | 86 |
| 80 PrefetchDataMap test_url_data_; | 87 PrefetchDataMap test_url_data_; |
| 81 PrefetchDataMap test_host_data_; | 88 PrefetchDataMap test_host_data_; |
| 82 RedirectDataMap test_url_redirect_data_; | 89 RedirectDataMap test_url_redirect_data_; |
| 83 RedirectDataMap test_host_redirect_data_; | 90 RedirectDataMap test_host_redirect_data_; |
| 84 ManifestDataMap test_manifest_data_; | 91 ManifestDataMap test_manifest_data_; |
| 92 OriginDataMap test_origin_data_; | |
| 85 }; | 93 }; |
| 86 | 94 |
| 87 class ResourcePrefetchPredictorTablesReopenTest | 95 class ResourcePrefetchPredictorTablesReopenTest |
| 88 : public ResourcePrefetchPredictorTablesTest { | 96 : public ResourcePrefetchPredictorTablesTest { |
| 89 public: | 97 public: |
| 90 void SetUp() override { | 98 void SetUp() override { |
| 91 // Write data to the table, and then reopen the db. | 99 // Write data to the table, and then reopen the db. |
| 92 ResourcePrefetchPredictorTablesTest::SetUp(); | 100 ResourcePrefetchPredictorTablesTest::SetUp(); |
| 93 ResourcePrefetchPredictorTablesTest::TearDown(); | 101 ResourcePrefetchPredictorTablesTest::TearDown(); |
| 94 | 102 |
| (...skipping 18 matching lines...) Expand all Loading... | |
| 113 void ResourcePrefetchPredictorTablesTest::TearDown() { | 121 void ResourcePrefetchPredictorTablesTest::TearDown() { |
| 114 tables_ = NULL; | 122 tables_ = NULL; |
| 115 db_.reset(); | 123 db_.reset(); |
| 116 base::RunLoop().RunUntilIdle(); | 124 base::RunLoop().RunUntilIdle(); |
| 117 } | 125 } |
| 118 | 126 |
| 119 void ResourcePrefetchPredictorTablesTest::TestGetAllData() { | 127 void ResourcePrefetchPredictorTablesTest::TestGetAllData() { |
| 120 PrefetchDataMap actual_url_data, actual_host_data; | 128 PrefetchDataMap actual_url_data, actual_host_data; |
| 121 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; | 129 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; |
| 122 ManifestDataMap actual_manifest_data; | 130 ManifestDataMap actual_manifest_data; |
| 131 OriginDataMap actual_origin_data; | |
| 123 tables_->GetAllData(&actual_url_data, &actual_host_data, | 132 tables_->GetAllData(&actual_url_data, &actual_host_data, |
| 124 &actual_url_redirect_data, &actual_host_redirect_data, | 133 &actual_url_redirect_data, &actual_host_redirect_data, |
| 125 &actual_manifest_data); | 134 &actual_manifest_data, &actual_origin_data); |
| 126 | 135 |
| 127 TestPrefetchDataAreEqual(test_url_data_, actual_url_data); | 136 TestPrefetchDataAreEqual(test_url_data_, actual_url_data); |
| 128 TestPrefetchDataAreEqual(test_host_data_, actual_host_data); | 137 TestPrefetchDataAreEqual(test_host_data_, actual_host_data); |
| 129 TestRedirectDataAreEqual(test_url_redirect_data_, actual_url_redirect_data); | 138 TestRedirectDataAreEqual(test_url_redirect_data_, actual_url_redirect_data); |
| 130 TestRedirectDataAreEqual(test_host_redirect_data_, actual_host_redirect_data); | 139 TestRedirectDataAreEqual(test_host_redirect_data_, actual_host_redirect_data); |
| 131 TestManifestDataAreEqual(test_manifest_data_, actual_manifest_data); | 140 TestManifestDataAreEqual(test_manifest_data_, actual_manifest_data); |
| 141 TestOriginDataAreEqual(test_origin_data_, actual_origin_data); | |
| 132 } | 142 } |
| 133 | 143 |
| 134 void ResourcePrefetchPredictorTablesTest::TestDeleteData() { | 144 void ResourcePrefetchPredictorTablesTest::TestDeleteData() { |
| 135 std::vector<std::string> urls_to_delete = {"http://www.google.com", | 145 std::vector<std::string> urls_to_delete = {"http://www.google.com", |
| 136 "http://www.yahoo.com"}; | 146 "http://www.yahoo.com"}; |
| 137 std::vector<std::string> hosts_to_delete = {"www.yahoo.com"}; | 147 std::vector<std::string> hosts_to_delete = {"www.yahoo.com"}; |
| 138 tables_->DeleteResourceData(urls_to_delete, hosts_to_delete); | 148 tables_->DeleteResourceData(urls_to_delete, hosts_to_delete); |
| 139 | 149 |
| 140 urls_to_delete = {"http://fb.com/google", "http://google.com"}; | 150 urls_to_delete = {"http://fb.com/google", "http://google.com"}; |
| 141 hosts_to_delete = {"microsoft.com"}; | 151 hosts_to_delete = {"microsoft.com"}; |
| 142 tables_->DeleteRedirectData(urls_to_delete, hosts_to_delete); | 152 tables_->DeleteRedirectData(urls_to_delete, hosts_to_delete); |
| 143 | 153 |
| 144 hosts_to_delete = {"en.wikipedia.org"}; | 154 hosts_to_delete = {"en.wikipedia.org"}; |
| 145 tables_->DeleteManifestData(hosts_to_delete); | 155 tables_->DeleteManifestData(hosts_to_delete); |
| 146 | 156 |
| 157 tables_->DeleteOriginData({"twitter.com"}); | |
| 158 | |
| 147 PrefetchDataMap actual_url_data, actual_host_data; | 159 PrefetchDataMap actual_url_data, actual_host_data; |
| 148 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; | 160 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; |
| 149 ManifestDataMap actual_manifest_data; | 161 ManifestDataMap actual_manifest_data; |
| 162 OriginDataMap actual_origin_data; | |
| 163 | |
| 150 tables_->GetAllData(&actual_url_data, &actual_host_data, | 164 tables_->GetAllData(&actual_url_data, &actual_host_data, |
| 151 &actual_url_redirect_data, &actual_host_redirect_data, | 165 &actual_url_redirect_data, &actual_host_redirect_data, |
| 152 &actual_manifest_data); | 166 &actual_manifest_data, &actual_origin_data); |
| 153 | 167 |
| 154 PrefetchDataMap expected_url_data, expected_host_data; | 168 PrefetchDataMap expected_url_data, expected_host_data; |
| 155 RedirectDataMap expected_url_redirect_data, expected_host_redirect_data; | 169 RedirectDataMap expected_url_redirect_data, expected_host_redirect_data; |
| 156 ManifestDataMap expected_manifest_data; | 170 ManifestDataMap expected_manifest_data; |
| 171 OriginDataMap expected_origin_data; | |
| 157 AddKey(&expected_url_data, "http://www.reddit.com"); | 172 AddKey(&expected_url_data, "http://www.reddit.com"); |
| 158 AddKey(&expected_host_data, "www.facebook.com"); | 173 AddKey(&expected_host_data, "www.facebook.com"); |
| 159 AddKey(&expected_url_redirect_data, "http://nyt.com"); | 174 AddKey(&expected_url_redirect_data, "http://nyt.com"); |
| 160 AddKey(&expected_host_redirect_data, "bbc.com"); | 175 AddKey(&expected_host_redirect_data, "bbc.com"); |
| 161 AddKey(&expected_manifest_data, "youtube.com"); | 176 AddKey(&expected_manifest_data, "youtube.com"); |
| 177 AddKey(&expected_origin_data, "abc.xyz"); | |
| 162 | 178 |
| 163 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); | 179 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); |
| 164 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); | 180 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); |
| 165 TestRedirectDataAreEqual(expected_url_redirect_data, | 181 TestRedirectDataAreEqual(expected_url_redirect_data, |
| 166 actual_url_redirect_data); | 182 actual_url_redirect_data); |
| 167 TestRedirectDataAreEqual(expected_host_redirect_data, | 183 TestRedirectDataAreEqual(expected_host_redirect_data, |
| 168 actual_host_redirect_data); | 184 actual_host_redirect_data); |
| 169 TestManifestDataAreEqual(expected_manifest_data, actual_manifest_data); | 185 TestManifestDataAreEqual(expected_manifest_data, actual_manifest_data); |
| 186 TestOriginDataAreEqual(expected_origin_data, actual_origin_data); | |
| 170 } | 187 } |
| 171 | 188 |
| 172 void ResourcePrefetchPredictorTablesTest::TestDeleteSingleDataPoint() { | 189 void ResourcePrefetchPredictorTablesTest::TestDeleteSingleDataPoint() { |
| 173 // Delete a URL. | 190 // Delete a URL. |
| 174 tables_->DeleteSingleResourceDataPoint("http://www.reddit.com", | 191 tables_->DeleteSingleResourceDataPoint("http://www.reddit.com", |
| 175 PREFETCH_KEY_TYPE_URL); | 192 PREFETCH_KEY_TYPE_URL); |
| 176 | 193 |
| 177 PrefetchDataMap actual_url_data, actual_host_data; | 194 PrefetchDataMap actual_url_data, actual_host_data; |
| 178 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; | 195 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; |
| 179 ManifestDataMap actual_manifest_data; | 196 ManifestDataMap actual_manifest_data; |
| 197 OriginDataMap actual_origin_data; | |
| 180 tables_->GetAllData(&actual_url_data, &actual_host_data, | 198 tables_->GetAllData(&actual_url_data, &actual_host_data, |
| 181 &actual_url_redirect_data, &actual_host_redirect_data, | 199 &actual_url_redirect_data, &actual_host_redirect_data, |
| 182 &actual_manifest_data); | 200 &actual_manifest_data, &actual_origin_data); |
| 183 | 201 |
| 184 PrefetchDataMap expected_url_data; | 202 PrefetchDataMap expected_url_data; |
| 185 AddKey(&expected_url_data, "http://www.google.com"); | 203 AddKey(&expected_url_data, "http://www.google.com"); |
| 186 AddKey(&expected_url_data, "http://www.yahoo.com"); | 204 AddKey(&expected_url_data, "http://www.yahoo.com"); |
| 187 | 205 |
| 188 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); | 206 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); |
| 189 TestPrefetchDataAreEqual(test_host_data_, actual_host_data); | 207 TestPrefetchDataAreEqual(test_host_data_, actual_host_data); |
| 190 TestRedirectDataAreEqual(test_url_redirect_data_, actual_url_redirect_data); | 208 TestRedirectDataAreEqual(test_url_redirect_data_, actual_url_redirect_data); |
| 191 TestRedirectDataAreEqual(test_host_redirect_data_, actual_host_redirect_data); | 209 TestRedirectDataAreEqual(test_host_redirect_data_, actual_host_redirect_data); |
| 192 | 210 |
| 193 // Delete a host. | 211 // Delete a host. |
| 194 tables_->DeleteSingleResourceDataPoint("www.facebook.com", | 212 tables_->DeleteSingleResourceDataPoint("www.facebook.com", |
| 195 PREFETCH_KEY_TYPE_HOST); | 213 PREFETCH_KEY_TYPE_HOST); |
| 196 actual_url_data.clear(); | 214 actual_url_data.clear(); |
| 197 actual_host_data.clear(); | 215 actual_host_data.clear(); |
| 198 actual_url_redirect_data.clear(); | 216 actual_url_redirect_data.clear(); |
| 199 actual_host_redirect_data.clear(); | 217 actual_host_redirect_data.clear(); |
| 200 actual_manifest_data.clear(); | 218 actual_manifest_data.clear(); |
| 219 actual_origin_data.clear(); | |
| 201 tables_->GetAllData(&actual_url_data, &actual_host_data, | 220 tables_->GetAllData(&actual_url_data, &actual_host_data, |
| 202 &actual_url_redirect_data, &actual_host_redirect_data, | 221 &actual_url_redirect_data, &actual_host_redirect_data, |
| 203 &actual_manifest_data); | 222 &actual_manifest_data, &actual_origin_data); |
| 204 | 223 |
| 205 PrefetchDataMap expected_host_data; | 224 PrefetchDataMap expected_host_data; |
| 206 AddKey(&expected_host_data, "www.yahoo.com"); | 225 AddKey(&expected_host_data, "www.yahoo.com"); |
| 207 | 226 |
| 208 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); | 227 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); |
| 209 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); | 228 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); |
| 210 TestRedirectDataAreEqual(test_url_redirect_data_, actual_url_redirect_data); | 229 TestRedirectDataAreEqual(test_url_redirect_data_, actual_url_redirect_data); |
| 211 TestRedirectDataAreEqual(test_host_redirect_data_, actual_host_redirect_data); | 230 TestRedirectDataAreEqual(test_host_redirect_data_, actual_host_redirect_data); |
| 212 | 231 |
| 213 // Delete a URL redirect. | 232 // Delete a URL redirect. |
| 214 tables_->DeleteSingleRedirectDataPoint("http://nyt.com", | 233 tables_->DeleteSingleRedirectDataPoint("http://nyt.com", |
| 215 PREFETCH_KEY_TYPE_URL); | 234 PREFETCH_KEY_TYPE_URL); |
| 216 actual_url_data.clear(); | 235 actual_url_data.clear(); |
| 217 actual_host_data.clear(); | 236 actual_host_data.clear(); |
| 218 actual_url_redirect_data.clear(); | 237 actual_url_redirect_data.clear(); |
| 219 actual_host_redirect_data.clear(); | 238 actual_host_redirect_data.clear(); |
| 220 actual_manifest_data.clear(); | 239 actual_manifest_data.clear(); |
| 240 actual_origin_data.clear(); | |
| 221 tables_->GetAllData(&actual_url_data, &actual_host_data, | 241 tables_->GetAllData(&actual_url_data, &actual_host_data, |
| 222 &actual_url_redirect_data, &actual_host_redirect_data, | 242 &actual_url_redirect_data, &actual_host_redirect_data, |
| 223 &actual_manifest_data); | 243 &actual_manifest_data, &actual_origin_data); |
| 224 | 244 |
| 225 RedirectDataMap expected_url_redirect_data; | 245 RedirectDataMap expected_url_redirect_data; |
| 226 AddKey(&expected_url_redirect_data, "http://fb.com/google"); | 246 AddKey(&expected_url_redirect_data, "http://fb.com/google"); |
| 227 AddKey(&expected_url_redirect_data, "http://google.com"); | 247 AddKey(&expected_url_redirect_data, "http://google.com"); |
| 228 | 248 |
| 229 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); | 249 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); |
| 230 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); | 250 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); |
| 231 TestRedirectDataAreEqual(expected_url_redirect_data, | 251 TestRedirectDataAreEqual(expected_url_redirect_data, |
| 232 actual_url_redirect_data); | 252 actual_url_redirect_data); |
| 233 TestRedirectDataAreEqual(test_host_redirect_data_, actual_host_redirect_data); | 253 TestRedirectDataAreEqual(test_host_redirect_data_, actual_host_redirect_data); |
| 234 | 254 |
| 235 // Delete a host redirect. | 255 // Delete a host redirect. |
| 236 tables_->DeleteSingleRedirectDataPoint("bbc.com", PREFETCH_KEY_TYPE_HOST); | 256 tables_->DeleteSingleRedirectDataPoint("bbc.com", PREFETCH_KEY_TYPE_HOST); |
| 237 actual_url_data.clear(); | 257 actual_url_data.clear(); |
| 238 actual_host_data.clear(); | 258 actual_host_data.clear(); |
| 239 actual_url_redirect_data.clear(); | 259 actual_url_redirect_data.clear(); |
| 240 actual_host_redirect_data.clear(); | 260 actual_host_redirect_data.clear(); |
| 241 actual_manifest_data.clear(); | 261 actual_manifest_data.clear(); |
| 262 actual_origin_data.clear(); | |
| 242 tables_->GetAllData(&actual_url_data, &actual_host_data, | 263 tables_->GetAllData(&actual_url_data, &actual_host_data, |
| 243 &actual_url_redirect_data, &actual_host_redirect_data, | 264 &actual_url_redirect_data, &actual_host_redirect_data, |
| 244 &actual_manifest_data); | 265 &actual_manifest_data, &actual_origin_data); |
| 245 | 266 |
| 246 RedirectDataMap expected_host_redirect_data; | 267 RedirectDataMap expected_host_redirect_data; |
| 247 AddKey(&expected_host_redirect_data, "microsoft.com"); | 268 AddKey(&expected_host_redirect_data, "microsoft.com"); |
| 248 | 269 |
| 249 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); | 270 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); |
| 250 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); | 271 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); |
| 251 TestRedirectDataAreEqual(expected_url_redirect_data, | 272 TestRedirectDataAreEqual(expected_url_redirect_data, |
| 252 actual_url_redirect_data); | 273 actual_url_redirect_data); |
| 253 TestRedirectDataAreEqual(expected_host_redirect_data, | 274 TestRedirectDataAreEqual(expected_host_redirect_data, |
| 254 actual_host_redirect_data); | 275 actual_host_redirect_data); |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 286 2, 0); | 307 2, 0); |
| 287 | 308 |
| 288 tables_->UpdateData(google, yahoo, facebook, microsoft); | 309 tables_->UpdateData(google, yahoo, facebook, microsoft); |
| 289 | 310 |
| 290 precache::PrecacheManifest theverge; | 311 precache::PrecacheManifest theverge; |
| 291 InitializePrecacheResource(theverge.add_resource(), | 312 InitializePrecacheResource(theverge.add_resource(), |
| 292 "https://www.theverge.com/main.js", 0.7); | 313 "https://www.theverge.com/main.js", 0.7); |
| 293 | 314 |
| 294 tables_->UpdateManifestData("theverge.com", theverge); | 315 tables_->UpdateManifestData("theverge.com", theverge); |
| 295 | 316 |
| 317 OriginData twitter = CreateOriginData("twitter.com"); | |
| 318 InitializeOriginStat(twitter.add_origins(), "https://dogs.twitter.com", 10, 1, | |
| 319 0, 12., false, true); | |
| 320 tables_->UpdateOriginData("twitter.com", twitter); | |
| 321 | |
| 296 PrefetchDataMap actual_url_data, actual_host_data; | 322 PrefetchDataMap actual_url_data, actual_host_data; |
| 297 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; | 323 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; |
| 298 ManifestDataMap actual_manifest_data; | 324 ManifestDataMap actual_manifest_data; |
| 325 OriginDataMap actual_origin_data; | |
| 299 tables_->GetAllData(&actual_url_data, &actual_host_data, | 326 tables_->GetAllData(&actual_url_data, &actual_host_data, |
| 300 &actual_url_redirect_data, &actual_host_redirect_data, | 327 &actual_url_redirect_data, &actual_host_redirect_data, |
| 301 &actual_manifest_data); | 328 &actual_manifest_data, &actual_origin_data); |
| 302 | 329 |
| 303 PrefetchDataMap expected_url_data, expected_host_data; | 330 PrefetchDataMap expected_url_data, expected_host_data; |
| 304 RedirectDataMap expected_url_redirect_data, expected_host_redirect_data; | 331 RedirectDataMap expected_url_redirect_data, expected_host_redirect_data; |
| 305 ManifestDataMap expected_manifest_data; | 332 ManifestDataMap expected_manifest_data; |
| 333 OriginDataMap expected_origin_data; | |
| 306 AddKey(&expected_url_data, "http://www.reddit.com"); | 334 AddKey(&expected_url_data, "http://www.reddit.com"); |
| 307 AddKey(&expected_url_data, "http://www.yahoo.com"); | 335 AddKey(&expected_url_data, "http://www.yahoo.com"); |
| 308 expected_url_data.insert(std::make_pair("http://www.google.com", google)); | 336 expected_url_data.insert(std::make_pair("http://www.google.com", google)); |
| 309 | 337 |
| 310 AddKey(&expected_host_data, "www.facebook.com"); | 338 AddKey(&expected_host_data, "www.facebook.com"); |
| 311 expected_host_data.insert(std::make_pair("www.yahoo.com", yahoo)); | 339 expected_host_data.insert(std::make_pair("www.yahoo.com", yahoo)); |
| 312 | 340 |
| 313 AddKey(&expected_url_redirect_data, "http://nyt.com"); | 341 AddKey(&expected_url_redirect_data, "http://nyt.com"); |
| 314 AddKey(&expected_url_redirect_data, "http://google.com"); | 342 AddKey(&expected_url_redirect_data, "http://google.com"); |
| 315 expected_url_redirect_data.insert( | 343 expected_url_redirect_data.insert( |
| 316 std::make_pair("http://fb.com/google", facebook)); | 344 std::make_pair("http://fb.com/google", facebook)); |
| 317 | 345 |
| 318 AddKey(&expected_host_redirect_data, "bbc.com"); | 346 AddKey(&expected_host_redirect_data, "bbc.com"); |
| 319 expected_host_redirect_data.insert( | 347 expected_host_redirect_data.insert( |
| 320 std::make_pair("microsoft.com", microsoft)); | 348 std::make_pair("microsoft.com", microsoft)); |
| 321 | 349 |
| 322 AddKey(&expected_manifest_data, "youtube.com"); | 350 AddKey(&expected_manifest_data, "youtube.com"); |
| 323 AddKey(&expected_manifest_data, "en.wikipedia.org"); | 351 AddKey(&expected_manifest_data, "en.wikipedia.org"); |
| 324 expected_manifest_data.insert(std::make_pair("theverge.com", theverge)); | 352 expected_manifest_data.insert(std::make_pair("theverge.com", theverge)); |
| 325 | 353 |
| 354 AddKey(&expected_origin_data, "abc.xyz"); | |
| 355 expected_origin_data.insert({"twitter.com", twitter}); | |
| 356 | |
| 326 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); | 357 TestPrefetchDataAreEqual(expected_url_data, actual_url_data); |
| 327 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); | 358 TestPrefetchDataAreEqual(expected_host_data, actual_host_data); |
| 328 TestRedirectDataAreEqual(expected_url_redirect_data, | 359 TestRedirectDataAreEqual(expected_url_redirect_data, |
| 329 actual_url_redirect_data); | 360 actual_url_redirect_data); |
| 330 TestRedirectDataAreEqual(expected_host_redirect_data, | 361 TestRedirectDataAreEqual(expected_host_redirect_data, |
| 331 actual_host_redirect_data); | 362 actual_host_redirect_data); |
| 332 TestManifestDataAreEqual(expected_manifest_data, actual_manifest_data); | 363 TestManifestDataAreEqual(expected_manifest_data, actual_manifest_data); |
| 333 } | 364 } |
| 334 | 365 |
| 335 void ResourcePrefetchPredictorTablesTest::TestDeleteAllData() { | 366 void ResourcePrefetchPredictorTablesTest::TestDeleteAllData() { |
| 336 tables_->DeleteAllData(); | 367 tables_->DeleteAllData(); |
| 337 | 368 |
| 338 PrefetchDataMap actual_url_data, actual_host_data; | 369 PrefetchDataMap actual_url_data, actual_host_data; |
| 339 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; | 370 RedirectDataMap actual_url_redirect_data, actual_host_redirect_data; |
| 340 ManifestDataMap actual_manifest_data; | 371 ManifestDataMap actual_manifest_data; |
| 372 OriginDataMap actual_origin_data; | |
| 341 tables_->GetAllData(&actual_url_data, &actual_host_data, | 373 tables_->GetAllData(&actual_url_data, &actual_host_data, |
| 342 &actual_url_redirect_data, &actual_host_redirect_data, | 374 &actual_url_redirect_data, &actual_host_redirect_data, |
| 343 &actual_manifest_data); | 375 &actual_manifest_data, &actual_origin_data); |
| 344 EXPECT_TRUE(actual_url_data.empty()); | 376 EXPECT_TRUE(actual_url_data.empty()); |
| 345 EXPECT_TRUE(actual_host_data.empty()); | 377 EXPECT_TRUE(actual_host_data.empty()); |
| 346 EXPECT_TRUE(actual_url_redirect_data.empty()); | 378 EXPECT_TRUE(actual_url_redirect_data.empty()); |
| 347 EXPECT_TRUE(actual_host_redirect_data.empty()); | 379 EXPECT_TRUE(actual_host_redirect_data.empty()); |
| 348 EXPECT_TRUE(actual_manifest_data.empty()); | 380 EXPECT_TRUE(actual_manifest_data.empty()); |
| 349 } | 381 } |
| 350 | 382 |
| 351 void ResourcePrefetchPredictorTablesTest::TestPrefetchDataAreEqual( | 383 void ResourcePrefetchPredictorTablesTest::TestPrefetchDataAreEqual( |
| 352 const PrefetchDataMap& lhs, | 384 const PrefetchDataMap& lhs, |
| 353 const PrefetchDataMap& rhs) const { | 385 const PrefetchDataMap& rhs) const { |
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 471 EXPECT_EQ(r, lhs_it->second); | 503 EXPECT_EQ(r, lhs_it->second); |
| 472 lhs_index.erase(lhs_it); | 504 lhs_index.erase(lhs_it); |
| 473 } else { | 505 } else { |
| 474 ADD_FAILURE() << r.url(); | 506 ADD_FAILURE() << r.url(); |
| 475 } | 507 } |
| 476 } | 508 } |
| 477 | 509 |
| 478 EXPECT_TRUE(lhs_index.empty()); | 510 EXPECT_TRUE(lhs_index.empty()); |
| 479 } | 511 } |
| 480 | 512 |
| 513 void ResourcePrefetchPredictorTablesTest::TestOriginDataAreEqual( | |
| 514 const OriginDataMap& lhs, | |
| 515 const OriginDataMap& rhs) const { | |
| 516 EXPECT_EQ(lhs.size(), rhs.size()); | |
| 517 | |
| 518 for (const auto& o : rhs) { | |
| 519 const auto lhs_it = lhs.find(o.first); | |
| 520 ASSERT_TRUE(lhs_it != lhs.end()) << o.first; | |
| 521 std::vector<OriginStat> lhs_origins(lhs_it->second.origins().begin(), | |
| 522 lhs_it->second.origins().end()); | |
| 523 std::vector<OriginStat> rhs_origins(o.second.origins().begin(), | |
| 524 o.second.origins().end()); | |
| 525 | |
| 526 TestOriginStatsAreEqual(lhs_origins, rhs_origins); | |
| 527 } | |
| 528 } | |
| 529 | |
| 530 void ResourcePrefetchPredictorTablesTest::TestOriginStatsAreEqual( | |
| 531 const std::vector<OriginStat>& lhs, | |
| 532 const std::vector<OriginStat>& rhs) const { | |
| 533 EXPECT_EQ(lhs.size(), rhs.size()); | |
| 534 | |
| 535 std::map<std::string, OriginStat> lhs_index; | |
| 536 // Repeated origins are not allowed. | |
| 537 for (const auto& o : lhs) | |
| 538 EXPECT_TRUE(lhs_index.insert({o.origin(), o}).second); | |
| 539 | |
| 540 for (const auto& o : rhs) { | |
| 541 auto lhs_it = lhs_index.find(o.origin()); | |
| 542 if (lhs_it != lhs_index.end()) { | |
| 543 EXPECT_EQ(o, lhs_it->second); | |
| 544 lhs_index.erase(lhs_it); | |
| 545 } else { | |
| 546 ADD_FAILURE() << o.origin(); | |
| 547 } | |
| 548 } | |
| 549 | |
| 550 EXPECT_TRUE(lhs_index.empty()); | |
| 551 } | |
| 552 | |
| 481 void ResourcePrefetchPredictorTablesTest::AddKey(PrefetchDataMap* m, | 553 void ResourcePrefetchPredictorTablesTest::AddKey(PrefetchDataMap* m, |
| 482 const std::string& key) const { | 554 const std::string& key) const { |
| 483 PrefetchDataMap::const_iterator it = test_url_data_.find(key); | 555 PrefetchDataMap::const_iterator it = test_url_data_.find(key); |
| 484 if (it != test_url_data_.end()) { | 556 if (it != test_url_data_.end()) { |
| 485 m->insert(*it); | 557 m->insert(*it); |
| 486 return; | 558 return; |
| 487 } | 559 } |
| 488 it = test_host_data_.find(key); | 560 it = test_host_data_.find(key); |
| 489 ASSERT_TRUE(it != test_host_data_.end()); | 561 ASSERT_TRUE(it != test_host_data_.end()); |
| 490 m->insert(*it); | 562 m->insert(*it); |
| (...skipping 11 matching lines...) Expand all Loading... | |
| 502 m->insert(*it); | 574 m->insert(*it); |
| 503 } | 575 } |
| 504 | 576 |
| 505 void ResourcePrefetchPredictorTablesTest::AddKey(ManifestDataMap* m, | 577 void ResourcePrefetchPredictorTablesTest::AddKey(ManifestDataMap* m, |
| 506 const std::string& key) const { | 578 const std::string& key) const { |
| 507 auto it = test_manifest_data_.find(key); | 579 auto it = test_manifest_data_.find(key); |
| 508 ASSERT_TRUE(it != test_manifest_data_.end()); | 580 ASSERT_TRUE(it != test_manifest_data_.end()); |
| 509 m->insert(*it); | 581 m->insert(*it); |
| 510 } | 582 } |
| 511 | 583 |
| 584 void ResourcePrefetchPredictorTablesTest::AddKey(OriginDataMap* m, | |
| 585 const std::string& key) const { | |
| 586 auto it = test_origin_data_.find(key); | |
| 587 ASSERT_TRUE(it != test_origin_data_.end()); | |
| 588 m->insert(*it); | |
| 589 } | |
| 590 | |
| 512 void ResourcePrefetchPredictorTablesTest::InitializeSampleData() { | 591 void ResourcePrefetchPredictorTablesTest::InitializeSampleData() { |
| 513 PrefetchData empty_resource_data; | 592 PrefetchData empty_resource_data; |
| 514 RedirectData empty_redirect_data; | 593 RedirectData empty_redirect_data; |
| 515 | 594 |
| 516 { // Url data. | 595 { // Url data. |
| 517 PrefetchData google = CreatePrefetchData("http://www.google.com", 1); | 596 PrefetchData google = CreatePrefetchData("http://www.google.com", 1); |
| 518 InitializeResourceData(google.add_resources(), | 597 InitializeResourceData(google.add_resources(), |
| 519 "http://www.google.com/style.css", | 598 "http://www.google.com/style.css", |
| 520 content::RESOURCE_TYPE_STYLESHEET, 5, 2, 1, 1.1, | 599 content::RESOURCE_TYPE_STYLESHEET, 5, 2, 1, 1.1, |
| 521 net::MEDIUM, false, false); | 600 net::MEDIUM, false, false); |
| (...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 662 "https://youtube.com/photo.jpg", 0.5); | 741 "https://youtube.com/photo.jpg", 0.5); |
| 663 InitializePrecacheResource(youtube.add_resource(), | 742 InitializePrecacheResource(youtube.add_resource(), |
| 664 "https://youtube.com/base.js", 0.2); | 743 "https://youtube.com/base.js", 0.2); |
| 665 | 744 |
| 666 test_manifest_data_.clear(); | 745 test_manifest_data_.clear(); |
| 667 test_manifest_data_.insert(std::make_pair("en.wikipedia.org", wikipedia)); | 746 test_manifest_data_.insert(std::make_pair("en.wikipedia.org", wikipedia)); |
| 668 test_manifest_data_.insert(std::make_pair("youtube.com", youtube)); | 747 test_manifest_data_.insert(std::make_pair("youtube.com", youtube)); |
| 669 tables_->UpdateManifestData("en.wikipedia.org", wikipedia); | 748 tables_->UpdateManifestData("en.wikipedia.org", wikipedia); |
| 670 tables_->UpdateManifestData("youtube.com", youtube); | 749 tables_->UpdateManifestData("youtube.com", youtube); |
| 671 } | 750 } |
| 751 | |
| 752 { // Origin data. | |
| 753 OriginData twitter; | |
| 754 twitter.set_host("twitter.com"); | |
| 755 InitializeOriginStat(twitter.add_origins(), "https://cdn.twitter.com", 10, | |
| 756 1, 0, 12., false, true); | |
| 757 InitializeOriginStat(twitter.add_origins(), "https://cats.twitter.com", 10, | |
| 758 1, 0, 20., false, true); | |
| 759 | |
| 760 OriginData alphabet; | |
| 761 alphabet.set_host("abc.xyz"); | |
| 762 InitializeOriginStat(alphabet.add_origins(), "https://abc.def.xyz", 10, 1, | |
| 763 0, 12., false, true); | |
| 764 InitializeOriginStat(alphabet.add_origins(), "https://alpha.beta.com", 10, | |
| 765 1, 0, 20., false, true); | |
| 766 | |
| 767 test_origin_data_.clear(); | |
| 768 test_origin_data_.insert({"twitter.com", twitter}); | |
| 769 test_origin_data_.insert({"abc.xyz", alphabet}); | |
| 770 tables_->UpdateOriginData("twitter.com", twitter); | |
| 771 tables_->UpdateOriginData("abc.xyz", alphabet); | |
| 772 } | |
| 672 } | 773 } |
| 673 | 774 |
| 674 void ResourcePrefetchPredictorTablesTest::ReopenDatabase() { | 775 void ResourcePrefetchPredictorTablesTest::ReopenDatabase() { |
| 675 db_.reset(new PredictorDatabase(&profile_)); | 776 db_.reset(new PredictorDatabase(&profile_)); |
| 676 base::RunLoop().RunUntilIdle(); | 777 base::RunLoop().RunUntilIdle(); |
| 677 tables_ = db_->resource_prefetch_tables(); | 778 tables_ = db_->resource_prefetch_tables(); |
| 678 } | 779 } |
| 679 | 780 |
| 680 // Test cases. | 781 // Test cases. |
| 681 | 782 |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 717 compute_score(net::HIGHEST, content::RESOURCE_TYPE_IMAGE, 42.)); | 818 compute_score(net::HIGHEST, content::RESOURCE_TYPE_IMAGE, 42.)); |
| 718 EXPECT_TRUE( | 819 EXPECT_TRUE( |
| 719 compute_score(net::HIGHEST, content::RESOURCE_TYPE_FONT_RESOURCE, 42.) > | 820 compute_score(net::HIGHEST, content::RESOURCE_TYPE_FONT_RESOURCE, 42.) > |
| 720 compute_score(net::HIGHEST, content::RESOURCE_TYPE_FAVICON, 42.)); | 821 compute_score(net::HIGHEST, content::RESOURCE_TYPE_FAVICON, 42.)); |
| 721 | 822 |
| 722 // All else being equal, position matters. | 823 // All else being equal, position matters. |
| 723 EXPECT_TRUE(compute_score(net::HIGHEST, content::RESOURCE_TYPE_SCRIPT, 12.) > | 824 EXPECT_TRUE(compute_score(net::HIGHEST, content::RESOURCE_TYPE_SCRIPT, 12.) > |
| 724 compute_score(net::HIGHEST, content::RESOURCE_TYPE_SCRIPT, 42.)); | 825 compute_score(net::HIGHEST, content::RESOURCE_TYPE_SCRIPT, 42.)); |
| 725 } | 826 } |
| 726 | 827 |
| 828 TEST_F(ResourcePrefetchPredictorTablesTest, ComputeOriginScore) { | |
| 829 auto compute_score = [](int hits, int misses, double average_position, | |
| 830 bool always_access_network, bool accessed_network) { | |
| 831 OriginStat origin; | |
| 832 InitializeOriginStat(&origin, "", hits, misses, 0, average_position, | |
| 833 always_access_network, accessed_network); | |
| 834 return ResourcePrefetchPredictorTables::ComputeOriginScore(origin); | |
| 835 }; | |
| 836 | |
| 837 // High-confidence is more important than the rest. | |
| 838 EXPECT_TRUE(compute_score(20, 2, 12., false, false) > | |
|
alexilin
2017/04/10 14:58:28
nit:
EXPECT_GT(x,y) is generally better than EXPEC
Benoit L
2017/04/11 09:04:05
I see from gtest that the operands no longer have
| |
| 839 compute_score(2, 0, 12., false, false)); | |
| 840 EXPECT_TRUE(compute_score(20, 2, 12., false, false) > | |
| 841 compute_score(2, 0, 2., true, true)); | |
| 842 | |
| 843 // Don't care about the confidence as long as it's high. | |
| 844 EXPECT_TRUE(compute_score(20, 2, 12., false, false) == | |
|
alexilin
2017/04/10 14:58:28
nit:
EXPECT_NEAR(x, y, eps)
Benoit L
2017/04/11 09:04:05
Done.
| |
| 845 compute_score(50, 6, 12., false, false)); | |
| 846 | |
| 847 // Mandatory network access. | |
| 848 EXPECT_TRUE(compute_score(1, 1, 12., true, false) > | |
| 849 compute_score(1, 1, 12., false, false)); | |
| 850 EXPECT_TRUE(compute_score(1, 1, 12., true, false) > | |
| 851 compute_score(1, 1, 12., false, true)); | |
| 852 EXPECT_TRUE(compute_score(1, 1, 12., true, false) > | |
| 853 compute_score(1, 1, 2., false, true)); | |
| 854 | |
| 855 // Accessed network. | |
| 856 EXPECT_TRUE(compute_score(1, 1, 12., false, true) > | |
| 857 compute_score(1, 1, 12., false, false)); | |
| 858 EXPECT_TRUE(compute_score(1, 1, 12., false, true) > | |
| 859 compute_score(1, 1, 2., false, false)); | |
| 860 | |
| 861 // All else being equal, position matters. | |
| 862 EXPECT_TRUE(compute_score(1, 1, 2., false, false) > | |
| 863 compute_score(1, 1, 12., false, false)); | |
| 864 EXPECT_TRUE(compute_score(1, 1, 2., true, true) > | |
| 865 compute_score(1, 1, 12., true, true)); | |
| 866 } | |
| 867 | |
| 727 TEST_F(ResourcePrefetchPredictorTablesTest, GetAllData) { | 868 TEST_F(ResourcePrefetchPredictorTablesTest, GetAllData) { |
| 728 TestGetAllData(); | 869 TestGetAllData(); |
| 729 } | 870 } |
| 730 | 871 |
| 731 TEST_F(ResourcePrefetchPredictorTablesTest, UpdateData) { | 872 TEST_F(ResourcePrefetchPredictorTablesTest, UpdateData) { |
| 732 TestUpdateData(); | 873 TestUpdateData(); |
| 733 } | 874 } |
| 734 | 875 |
| 735 TEST_F(ResourcePrefetchPredictorTablesTest, DeleteData) { | 876 TEST_F(ResourcePrefetchPredictorTablesTest, DeleteData) { |
| 736 TestDeleteData(); | 877 TestDeleteData(); |
| (...skipping 22 matching lines...) Expand all Loading... | |
| 759 ResourcePrefetchPredictorTables::GetDatabaseVersion(db)); | 900 ResourcePrefetchPredictorTables::GetDatabaseVersion(db)); |
| 760 | 901 |
| 761 ReopenDatabase(); | 902 ReopenDatabase(); |
| 762 | 903 |
| 763 db = tables_->DB(); | 904 db = tables_->DB(); |
| 764 ASSERT_EQ(version, ResourcePrefetchPredictorTables::GetDatabaseVersion(db)); | 905 ASSERT_EQ(version, ResourcePrefetchPredictorTables::GetDatabaseVersion(db)); |
| 765 | 906 |
| 766 PrefetchDataMap url_data, host_data; | 907 PrefetchDataMap url_data, host_data; |
| 767 RedirectDataMap url_redirect_data, host_redirect_data; | 908 RedirectDataMap url_redirect_data, host_redirect_data; |
| 768 ManifestDataMap manifest_data; | 909 ManifestDataMap manifest_data; |
| 910 OriginDataMap origin_data; | |
| 769 tables_->GetAllData(&url_data, &host_data, &url_redirect_data, | 911 tables_->GetAllData(&url_data, &host_data, &url_redirect_data, |
| 770 &host_redirect_data, &manifest_data); | 912 &host_redirect_data, &manifest_data, &origin_data); |
| 771 EXPECT_TRUE(url_data.empty()); | 913 EXPECT_TRUE(url_data.empty()); |
| 772 EXPECT_TRUE(host_data.empty()); | 914 EXPECT_TRUE(host_data.empty()); |
| 773 EXPECT_TRUE(url_redirect_data.empty()); | 915 EXPECT_TRUE(url_redirect_data.empty()); |
| 774 EXPECT_TRUE(host_redirect_data.empty()); | 916 EXPECT_TRUE(host_redirect_data.empty()); |
| 775 EXPECT_TRUE(manifest_data.empty()); | 917 EXPECT_TRUE(manifest_data.empty()); |
| 918 EXPECT_TRUE(origin_data.empty()); | |
| 776 } | 919 } |
| 777 | 920 |
| 778 TEST_F(ResourcePrefetchPredictorTablesReopenTest, GetAllData) { | 921 TEST_F(ResourcePrefetchPredictorTablesReopenTest, GetAllData) { |
| 779 TestGetAllData(); | 922 TestGetAllData(); |
| 780 } | 923 } |
| 781 | 924 |
| 782 TEST_F(ResourcePrefetchPredictorTablesReopenTest, UpdateData) { | 925 TEST_F(ResourcePrefetchPredictorTablesReopenTest, UpdateData) { |
| 783 TestUpdateData(); | 926 TestUpdateData(); |
| 784 } | 927 } |
| 785 | 928 |
| 786 TEST_F(ResourcePrefetchPredictorTablesReopenTest, DeleteData) { | 929 TEST_F(ResourcePrefetchPredictorTablesReopenTest, DeleteData) { |
| 787 TestDeleteData(); | 930 TestDeleteData(); |
| 788 } | 931 } |
| 789 | 932 |
| 790 TEST_F(ResourcePrefetchPredictorTablesReopenTest, DeleteSingleDataPoint) { | 933 TEST_F(ResourcePrefetchPredictorTablesReopenTest, DeleteSingleDataPoint) { |
| 791 TestDeleteSingleDataPoint(); | 934 TestDeleteSingleDataPoint(); |
| 792 } | 935 } |
| 793 | 936 |
| 794 TEST_F(ResourcePrefetchPredictorTablesReopenTest, DeleteAllData) { | 937 TEST_F(ResourcePrefetchPredictorTablesReopenTest, DeleteAllData) { |
| 795 TestDeleteAllData(); | 938 TestDeleteAllData(); |
| 796 } | 939 } |
| 797 | 940 |
| 798 } // namespace predictors | 941 } // namespace predictors |
| OLD | NEW |