OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "net/cookies/cookie_store_unittest.h" | 5 #include "net/cookies/cookie_store_unittest.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 1549 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1560 // Chrome's current implementation deviates from the spec so capturing this to | 1560 // Chrome's current implementation deviates from the spec so capturing this to |
1561 // avoid any inadvertent changes to this behavior. | 1561 // avoid any inadvertent changes to this behavior. |
1562 EXPECT_EQ("A3", cookies[0].Value()); | 1562 EXPECT_EQ("A3", cookies[0].Value()); |
1563 EXPECT_EQ("B3", cookies[1].Value()); | 1563 EXPECT_EQ("B3", cookies[1].Value()); |
1564 EXPECT_EQ("B2", cookies[2].Value()); | 1564 EXPECT_EQ("B2", cookies[2].Value()); |
1565 EXPECT_EQ("A2", cookies[3].Value()); | 1565 EXPECT_EQ("A2", cookies[3].Value()); |
1566 EXPECT_EQ("B1", cookies[4].Value()); | 1566 EXPECT_EQ("B1", cookies[4].Value()); |
1567 EXPECT_EQ("A1", cookies[5].Value()); | 1567 EXPECT_EQ("A1", cookies[5].Value()); |
1568 } | 1568 } |
1569 | 1569 |
1570 TEST_F(CookieMonsterTest, DeleteCookieByName) { | |
1571 scoped_refptr<CookieMonster> cm(new CookieMonster(NULL, NULL)); | |
1572 | |
1573 EXPECT_TRUE(SetCookie(cm.get(), http_www_google_.url(), "A=A1; path=/")); | |
1574 EXPECT_TRUE(SetCookie(cm.get(), http_www_google_.url(), "A=A2; path=/foo")); | |
1575 EXPECT_TRUE(SetCookie(cm.get(), http_www_google_.url(), "A=A3; path=/bar")); | |
1576 EXPECT_TRUE(SetCookie(cm.get(), http_www_google_.url(), "B=B1; path=/")); | |
1577 EXPECT_TRUE(SetCookie(cm.get(), http_www_google_.url(), "B=B2; path=/foo")); | |
1578 EXPECT_TRUE(SetCookie(cm.get(), http_www_google_.url(), "B=B3; path=/bar")); | |
1579 | |
1580 DeleteCookie(cm.get(), http_www_google_.AppendPath("foo/bar"), "A"); | |
1581 | |
1582 CookieList cookies = GetAllCookies(cm.get()); | |
1583 size_t expected_size = 4; | |
1584 EXPECT_EQ(expected_size, cookies.size()); | |
1585 for (CookieList::iterator it = cookies.begin(); it != cookies.end(); ++it) { | |
1586 EXPECT_NE("A1", it->Value()); | |
1587 EXPECT_NE("A2", it->Value()); | |
1588 } | |
1589 } | |
1590 | |
1591 // Tests importing from a persistent cookie store that contains duplicate | 1570 // Tests importing from a persistent cookie store that contains duplicate |
1592 // equivalent cookies. This situation should be handled by removing the | 1571 // equivalent cookies. This situation should be handled by removing the |
1593 // duplicate cookie (both from the in-memory cache, and from the backing store). | 1572 // duplicate cookie (both from the in-memory cache, and from the backing store). |
1594 // | 1573 // |
1595 // This is a regression test for: http://crbug.com/17855. | 1574 // This is a regression test for: http://crbug.com/17855. |
1596 TEST_F(CookieMonsterTest, DontImportDuplicateCookies) { | 1575 TEST_F(CookieMonsterTest, DontImportDuplicateCookies) { |
1597 scoped_refptr<MockPersistentCookieStore> store(new MockPersistentCookieStore); | 1576 scoped_refptr<MockPersistentCookieStore> store(new MockPersistentCookieStore); |
1598 | 1577 |
1599 // We will fill some initial cookies into the PersistentCookieStore, | 1578 // We will fill some initial cookies into the PersistentCookieStore, |
1600 // to simulate a database with 4 duplicates. Note that we need to | 1579 // to simulate a database with 4 duplicates. Note that we need to |
(...skipping 1560 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3161 monster()->AddCallbackForCookie( | 3140 monster()->AddCallbackForCookie( |
3162 test_url_, "abc", | 3141 test_url_, "abc", |
3163 base::Bind(&RecordCookieChanges, &cookies1, nullptr))); | 3142 base::Bind(&RecordCookieChanges, &cookies1, nullptr))); |
3164 SetCookie(monster(), test_url_, "abc=def"); | 3143 SetCookie(monster(), test_url_, "abc=def"); |
3165 base::MessageLoop::current()->RunUntilIdle(); | 3144 base::MessageLoop::current()->RunUntilIdle(); |
3166 EXPECT_EQ(1U, cookies0.size()); | 3145 EXPECT_EQ(1U, cookies0.size()); |
3167 EXPECT_EQ(1U, cookies0.size()); | 3146 EXPECT_EQ(1U, cookies0.size()); |
3168 } | 3147 } |
3169 | 3148 |
3170 } // namespace net | 3149 } // namespace net |
OLD | NEW |