- add sources.
[platform/framework/web/crosswalk.git] / src / net / base / static_cookie_policy_unittest.cc
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
3 // found in the LICENSE file.
4
5 #include "net/base/net_errors.h"
6 #include "net/base/static_cookie_policy.h"
7 #include "testing/gtest/include/gtest/gtest.h"
8 #include "url/gurl.h"
9
10 namespace net {
11
12 class StaticCookiePolicyTest : public testing::Test {
13  public:
14   StaticCookiePolicyTest()
15       : url_google_("http://www.google.izzle"),
16         url_google_secure_("https://www.google.izzle"),
17         url_google_mail_("http://mail.google.izzle"),
18         url_google_analytics_("http://www.googleanalytics.izzle") {
19   }
20   void SetPolicyType(StaticCookiePolicy::Type type) {
21     policy_.set_type(type);
22   }
23   int CanGetCookies(const GURL& url, const GURL& first_party) {
24     return policy_.CanGetCookies(url, first_party);
25   }
26   int CanSetCookie(const GURL& url, const GURL& first_party) {
27     return policy_.CanSetCookie(url, first_party);
28   }
29  protected:
30   StaticCookiePolicy policy_;
31   GURL url_google_;
32   GURL url_google_secure_;
33   GURL url_google_mail_;
34   GURL url_google_analytics_;
35 };
36
37 TEST_F(StaticCookiePolicyTest, DefaultPolicyTest) {
38   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_));
39   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_secure_));
40   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_mail_));
41   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_analytics_));
42   EXPECT_EQ(OK, CanGetCookies(url_google_, GURL()));
43
44   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_));
45   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_secure_));
46   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_mail_));
47   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_analytics_));
48   EXPECT_EQ(OK, CanSetCookie(url_google_, GURL()));
49 }
50
51 TEST_F(StaticCookiePolicyTest, AllowAllCookiesTest) {
52   SetPolicyType(StaticCookiePolicy::ALLOW_ALL_COOKIES);
53
54   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_));
55   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_secure_));
56   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_mail_));
57   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_analytics_));
58   EXPECT_EQ(OK, CanGetCookies(url_google_, GURL()));
59
60   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_));
61   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_secure_));
62   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_mail_));
63   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_analytics_));
64   EXPECT_EQ(OK, CanSetCookie(url_google_, GURL()));
65 }
66
67 TEST_F(StaticCookiePolicyTest, BlockSettingThirdPartyCookiesTest) {
68   SetPolicyType(StaticCookiePolicy::BLOCK_SETTING_THIRD_PARTY_COOKIES);
69
70   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_));
71   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_secure_));
72   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_mail_));
73   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_analytics_));
74   EXPECT_EQ(OK, CanGetCookies(url_google_, GURL()));
75
76   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_));
77   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_secure_));
78   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_mail_));
79   EXPECT_NE(OK, CanSetCookie(url_google_, url_google_analytics_));
80   EXPECT_EQ(OK, CanSetCookie(url_google_, GURL()));
81 }
82
83 TEST_F(StaticCookiePolicyTest, BlockAllThirdPartyCookiesTest) {
84   SetPolicyType(StaticCookiePolicy::BLOCK_ALL_THIRD_PARTY_COOKIES);
85
86   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_));
87   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_secure_));
88   EXPECT_EQ(OK, CanGetCookies(url_google_, url_google_mail_));
89   EXPECT_NE(OK, CanGetCookies(url_google_, url_google_analytics_));
90   EXPECT_EQ(OK, CanGetCookies(url_google_, GURL()));
91
92   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_));
93   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_secure_));
94   EXPECT_EQ(OK, CanSetCookie(url_google_, url_google_mail_));
95   EXPECT_NE(OK, CanSetCookie(url_google_, url_google_analytics_));
96   EXPECT_EQ(OK, CanSetCookie(url_google_, GURL()));
97 }
98
99 TEST_F(StaticCookiePolicyTest, BlockAllCookiesTest) {
100   SetPolicyType(StaticCookiePolicy::BLOCK_ALL_COOKIES);
101
102   EXPECT_NE(OK, CanGetCookies(url_google_, url_google_));
103   EXPECT_NE(OK, CanGetCookies(url_google_, url_google_secure_));
104   EXPECT_NE(OK, CanGetCookies(url_google_, url_google_mail_));
105   EXPECT_NE(OK, CanGetCookies(url_google_, url_google_analytics_));
106   EXPECT_NE(OK, CanGetCookies(url_google_, GURL()));
107
108   EXPECT_NE(OK, CanSetCookie(url_google_, url_google_));
109   EXPECT_NE(OK, CanSetCookie(url_google_, url_google_secure_));
110   EXPECT_NE(OK, CanSetCookie(url_google_, url_google_mail_));
111   EXPECT_NE(OK, CanSetCookie(url_google_, url_google_analytics_));
112   EXPECT_NE(OK, CanSetCookie(url_google_, GURL()));
113 }
114
115 }  // namespace net