OLD | NEW |
---|---|
1 // Copyright (c) 2011 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 "testing/gtest/include/gtest/gtest.h" | 5 #include "testing/gtest/include/gtest/gtest.h" |
6 | 6 |
7 #include "base/file_util.h" | 7 #include "base/file_util.h" |
8 #include "base/scoped_temp_dir.h" | 8 #include "base/scoped_temp_dir.h" |
9 #include "sql/connection.h" | 9 #include "sql/connection.h" |
10 #include "webkit/appcache/appcache_database.h" | 10 #include "webkit/appcache/appcache_database.h" |
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
315 cache_record.update_time = kZeroTime; | 315 cache_record.update_time = kZeroTime; |
316 EXPECT_TRUE(db.InsertCache(&cache_record)); | 316 EXPECT_TRUE(db.InsertCache(&cache_record)); |
317 | 317 |
318 record = kZeroRecord; | 318 record = kZeroRecord; |
319 EXPECT_TRUE(db.FindGroupForCache(1, &record)); | 319 EXPECT_TRUE(db.FindGroupForCache(1, &record)); |
320 EXPECT_EQ(1, record.group_id); | 320 EXPECT_EQ(1, record.group_id); |
321 EXPECT_EQ(kManifest2, record.manifest_url); | 321 EXPECT_EQ(kManifest2, record.manifest_url); |
322 EXPECT_EQ(kOrigin2, record.origin); | 322 EXPECT_EQ(kOrigin2, record.origin); |
323 } | 323 } |
324 | 324 |
325 TEST(AppCacheDatabaseTest, FallbackNameSpaceRecords) { | 325 TEST(AppCacheDatabaseTest, NamespaceRecords) { |
326 const FilePath kEmptyPath; | 326 const FilePath kEmptyPath; |
327 AppCacheDatabase db(kEmptyPath); | 327 AppCacheDatabase db(kEmptyPath); |
328 EXPECT_TRUE(db.LazyOpen(true)); | 328 EXPECT_TRUE(db.LazyOpen(true)); |
329 | 329 |
330 scoped_refptr<TestErrorDelegate> error_delegate(new TestErrorDelegate); | 330 scoped_refptr<TestErrorDelegate> error_delegate(new TestErrorDelegate); |
331 db.db_->set_error_delegate(error_delegate); | 331 db.db_->set_error_delegate(error_delegate); |
332 | 332 |
333 const GURL kFooNameSpace1("http://foo/namespace1"); | 333 const GURL kFooNameSpace1("http://foo/namespace1"); |
334 const GURL kFooNameSpace2("http://foo/namespace2"); | 334 const GURL kFooNameSpace2("http://foo/namespace2"); |
335 const GURL kFooFallbackEntry("http://foo/entry"); | 335 const GURL kFooFallbackEntry("http://foo/entry"); |
336 const GURL kFooOrigin(kFooNameSpace1.GetOrigin()); | 336 const GURL kFooOrigin(kFooNameSpace1.GetOrigin()); |
337 const GURL kBarNameSpace1("http://bar/namespace1"); | 337 const GURL kBarNameSpace1("http://bar/namespace1"); |
338 const GURL kBarNameSpace2("http://bar/namespace2"); | 338 const GURL kBarNameSpace2("http://bar/namespace2"); |
339 const GURL kBarFallbackEntry("http://bar/entry"); | 339 const GURL kBarFallbackEntry("http://bar/entry"); |
340 const GURL kBarOrigin(kBarNameSpace1.GetOrigin()); | 340 const GURL kBarOrigin(kBarNameSpace1.GetOrigin()); |
341 | 341 |
342 const AppCacheDatabase::FallbackNameSpaceRecord kZeroRecord; | 342 const AppCacheDatabase::NamespaceRecord kZeroRecord; |
343 AppCacheDatabase::FallbackNameSpaceRecord record; | 343 AppCacheDatabase::NamespaceRecord record; |
344 std::vector<AppCacheDatabase::FallbackNameSpaceRecord> records; | 344 std::vector<AppCacheDatabase::NamespaceRecord> intercepts; |
345 std::vector<AppCacheDatabase::NamespaceRecord> records; | |
jennb
2011/12/05 23:23:07
Rename to fallbacks?
michaeln
2011/12/06 19:41:24
Done.
| |
345 | 346 |
346 // Behavior with an empty table | 347 // Behavior with an empty table |
347 EXPECT_TRUE(db.FindFallbackNameSpacesForCache(1, &records)); | 348 EXPECT_TRUE(db.FindNamespacesForCache(1, &intercepts, &records)); |
348 EXPECT_TRUE(records.empty()); | 349 EXPECT_TRUE(records.empty()); |
349 EXPECT_TRUE(db.FindFallbackNameSpacesForOrigin(kFooOrigin, &records)); | 350 EXPECT_TRUE(db.FindNamespacesForOrigin(kFooOrigin, &intercepts, &records)); |
350 EXPECT_TRUE(records.empty()); | 351 EXPECT_TRUE(records.empty()); |
351 EXPECT_TRUE(db.DeleteFallbackNameSpacesForCache(1)); | 352 EXPECT_TRUE(db.DeleteNamespacesForCache(1)); |
352 | 353 |
353 // Two records for two differenent caches in the Foo origin. | 354 // Two records for two differenent caches in the Foo origin. |
354 record.cache_id = 1; | 355 record.cache_id = 1; |
355 record.origin = kFooOrigin; | 356 record.origin = kFooOrigin; |
356 record.namespace_url = kFooNameSpace1; | 357 record.namespace_url = kFooNameSpace1; |
357 record.fallback_entry_url = kFooFallbackEntry; | 358 record.target_url = kFooFallbackEntry; |
358 EXPECT_TRUE(db.InsertFallbackNameSpace(&record)); | 359 EXPECT_TRUE(db.InsertNamespace(&record)); |
359 EXPECT_FALSE(db.InsertFallbackNameSpace(&record)); | 360 EXPECT_FALSE(db.InsertNamespace(&record)); |
360 | 361 |
361 record.cache_id = 2; | 362 record.cache_id = 2; |
362 record.origin = kFooOrigin; | 363 record.origin = kFooOrigin; |
363 record.namespace_url = kFooNameSpace2; | 364 record.namespace_url = kFooNameSpace2; |
364 record.fallback_entry_url = kFooFallbackEntry; | 365 record.target_url = kFooFallbackEntry; |
365 EXPECT_TRUE(db.InsertFallbackNameSpace(&record)); | 366 EXPECT_TRUE(db.InsertNamespace(&record)); |
366 | 367 |
367 records.clear(); | 368 records.clear(); |
368 EXPECT_TRUE(db.FindFallbackNameSpacesForCache(1, &records)); | 369 EXPECT_TRUE(db.FindNamespacesForCache(1, &intercepts, &records)); |
369 EXPECT_EQ(1U, records.size()); | 370 EXPECT_EQ(1U, records.size()); |
370 EXPECT_EQ(1, records[0].cache_id); | 371 EXPECT_EQ(1, records[0].cache_id); |
371 EXPECT_EQ(kFooOrigin, records[0].origin); | 372 EXPECT_EQ(kFooOrigin, records[0].origin); |
372 EXPECT_EQ(kFooNameSpace1, records[0].namespace_url); | 373 EXPECT_EQ(kFooNameSpace1, records[0].namespace_url); |
373 EXPECT_EQ(kFooFallbackEntry, records[0].fallback_entry_url); | 374 EXPECT_EQ(kFooFallbackEntry, records[0].target_url); |
374 | 375 |
375 records.clear(); | 376 records.clear(); |
376 EXPECT_TRUE(db.FindFallbackNameSpacesForCache(2, &records)); | 377 EXPECT_TRUE(db.FindNamespacesForCache(2, &intercepts, &records)); |
377 EXPECT_EQ(1U, records.size()); | 378 EXPECT_EQ(1U, records.size()); |
378 EXPECT_EQ(2, records[0].cache_id); | 379 EXPECT_EQ(2, records[0].cache_id); |
379 EXPECT_EQ(kFooOrigin, records[0].origin); | 380 EXPECT_EQ(kFooOrigin, records[0].origin); |
380 EXPECT_EQ(kFooNameSpace2, records[0].namespace_url); | 381 EXPECT_EQ(kFooNameSpace2, records[0].namespace_url); |
381 EXPECT_EQ(kFooFallbackEntry, records[0].fallback_entry_url); | 382 EXPECT_EQ(kFooFallbackEntry, records[0].target_url); |
382 | 383 |
383 records.clear(); | 384 records.clear(); |
384 EXPECT_TRUE(db.FindFallbackNameSpacesForOrigin(kFooOrigin, &records)); | 385 EXPECT_TRUE(db.FindNamespacesForOrigin(kFooOrigin, &intercepts, &records)); |
385 EXPECT_EQ(2U, records.size()); | 386 EXPECT_EQ(2U, records.size()); |
386 EXPECT_EQ(1, records[0].cache_id); | 387 EXPECT_EQ(1, records[0].cache_id); |
387 EXPECT_EQ(kFooOrigin, records[0].origin); | 388 EXPECT_EQ(kFooOrigin, records[0].origin); |
388 EXPECT_EQ(kFooNameSpace1, records[0].namespace_url); | 389 EXPECT_EQ(kFooNameSpace1, records[0].namespace_url); |
389 EXPECT_EQ(kFooFallbackEntry, records[0].fallback_entry_url); | 390 EXPECT_EQ(kFooFallbackEntry, records[0].target_url); |
390 EXPECT_EQ(2, records[1].cache_id); | 391 EXPECT_EQ(2, records[1].cache_id); |
391 EXPECT_EQ(kFooOrigin, records[1].origin); | 392 EXPECT_EQ(kFooOrigin, records[1].origin); |
392 EXPECT_EQ(kFooNameSpace2, records[1].namespace_url); | 393 EXPECT_EQ(kFooNameSpace2, records[1].namespace_url); |
393 EXPECT_EQ(kFooFallbackEntry, records[1].fallback_entry_url); | 394 EXPECT_EQ(kFooFallbackEntry, records[1].target_url); |
394 | 395 |
395 EXPECT_TRUE(db.DeleteFallbackNameSpacesForCache(1)); | 396 EXPECT_TRUE(db.DeleteNamespacesForCache(1)); |
396 records.clear(); | 397 records.clear(); |
397 EXPECT_TRUE(db.FindFallbackNameSpacesForOrigin(kFooOrigin, &records)); | 398 EXPECT_TRUE(db.FindNamespacesForOrigin(kFooOrigin, &intercepts, &records)); |
398 EXPECT_EQ(1U, records.size()); | 399 EXPECT_EQ(1U, records.size()); |
399 EXPECT_EQ(2, records[0].cache_id); | 400 EXPECT_EQ(2, records[0].cache_id); |
400 EXPECT_EQ(kFooOrigin, records[0].origin); | 401 EXPECT_EQ(kFooOrigin, records[0].origin); |
401 EXPECT_EQ(kFooNameSpace2, records[0].namespace_url); | 402 EXPECT_EQ(kFooNameSpace2, records[0].namespace_url); |
402 EXPECT_EQ(kFooFallbackEntry, records[0].fallback_entry_url); | 403 EXPECT_EQ(kFooFallbackEntry, records[0].target_url); |
403 | 404 |
404 // Two more records for the same cache in the Bar origin. | 405 // Two more records for the same cache in the Bar origin. |
405 record.cache_id = 3; | 406 record.cache_id = 3; |
406 record.origin = kBarOrigin; | 407 record.origin = kBarOrigin; |
407 record.namespace_url = kBarNameSpace1; | 408 record.namespace_url = kBarNameSpace1; |
408 record.fallback_entry_url = kBarFallbackEntry; | 409 record.target_url = kBarFallbackEntry; |
409 EXPECT_TRUE(db.InsertFallbackNameSpace(&record)); | 410 EXPECT_TRUE(db.InsertNamespace(&record)); |
410 | 411 |
411 record.cache_id = 3; | 412 record.cache_id = 3; |
412 record.origin = kBarOrigin; | 413 record.origin = kBarOrigin; |
413 record.namespace_url = kBarNameSpace2; | 414 record.namespace_url = kBarNameSpace2; |
414 record.fallback_entry_url = kBarFallbackEntry; | 415 record.target_url = kBarFallbackEntry; |
415 EXPECT_TRUE(db.InsertFallbackNameSpace(&record)); | 416 EXPECT_TRUE(db.InsertNamespace(&record)); |
416 | 417 |
417 records.clear(); | 418 records.clear(); |
418 EXPECT_TRUE(db.FindFallbackNameSpacesForCache(3, &records)); | 419 EXPECT_TRUE(db.FindNamespacesForCache(3, &intercepts, &records)); |
419 EXPECT_EQ(2U, records.size()); | 420 EXPECT_EQ(2U, records.size()); |
420 records.clear(); | 421 records.clear(); |
421 EXPECT_TRUE(db.FindFallbackNameSpacesForOrigin(kBarOrigin, &records)); | 422 EXPECT_TRUE(db.FindNamespacesForOrigin(kBarOrigin, &intercepts, &records)); |
422 EXPECT_EQ(2U, records.size()); | 423 EXPECT_EQ(2U, records.size()); |
423 } | 424 } |
424 | 425 |
425 TEST(AppCacheDatabaseTest, OnlineWhiteListRecords) { | 426 TEST(AppCacheDatabaseTest, OnlineWhiteListRecords) { |
426 const FilePath kEmptyPath; | 427 const FilePath kEmptyPath; |
427 AppCacheDatabase db(kEmptyPath); | 428 AppCacheDatabase db(kEmptyPath); |
428 EXPECT_TRUE(db.LazyOpen(true)); | 429 EXPECT_TRUE(db.LazyOpen(true)); |
429 | 430 |
430 scoped_refptr<TestErrorDelegate> error_delegate(new TestErrorDelegate); | 431 scoped_refptr<TestErrorDelegate> error_delegate(new TestErrorDelegate); |
431 db.db_->set_error_delegate(error_delegate); | 432 db.db_->set_error_delegate(error_delegate); |
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
607 EXPECT_EQ(1U, cache_records.size()); | 608 EXPECT_EQ(1U, cache_records.size()); |
608 | 609 |
609 std::map<GURL, int64> usage_map; | 610 std::map<GURL, int64> usage_map; |
610 EXPECT_TRUE(db.GetAllOriginUsage(&usage_map)); | 611 EXPECT_TRUE(db.GetAllOriginUsage(&usage_map)); |
611 EXPECT_EQ(2U, usage_map.size()); | 612 EXPECT_EQ(2U, usage_map.size()); |
612 EXPECT_EQ(1100, usage_map[kOrigin]); | 613 EXPECT_EQ(1100, usage_map[kOrigin]); |
613 EXPECT_EQ(5000, usage_map[kOtherOrigin]); | 614 EXPECT_EQ(5000, usage_map[kOtherOrigin]); |
614 } | 615 } |
615 | 616 |
616 } // namespace appcache | 617 } // namespace appcache |
OLD | NEW |