Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(739)

Side by Side Diff: chrome/browser/geolocation/geolocation_settings_state_unittest.cc

Issue 7484072: Migrate geolocation settings to host content settings map. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: " Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 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 "chrome/browser/geolocation/geolocation_content_settings_map.h" 5 #include <string>
6
7 #include "chrome/browser/content_settings/host_content_settings_map.h"
6 #include "chrome/browser/geolocation/geolocation_settings_state.h" 8 #include "chrome/browser/geolocation/geolocation_settings_state.h"
7 #include "chrome/test/base/testing_profile.h" 9 #include "chrome/test/base/testing_profile.h"
8 #include "content/browser/browser_thread.h" 10 #include "content/browser/browser_thread.h"
9 #include "content/browser/tab_contents/navigation_details.h" 11 #include "content/browser/tab_contents/navigation_details.h"
10 #include "content/browser/tab_contents/navigation_entry.h" 12 #include "content/browser/tab_contents/navigation_entry.h"
11 #include "testing/gtest/include/gtest/gtest.h" 13 #include "testing/gtest/include/gtest/gtest.h"
12 14
13 namespace { 15 namespace {
14 16
15 class GeolocationSettingsStateTests : public testing::Test { 17 class GeolocationSettingsStateTests : public testing::Test {
16 public: 18 public:
17 GeolocationSettingsStateTests() 19 GeolocationSettingsStateTests()
18 : ui_thread_(BrowserThread::UI, &message_loop_) { 20 : ui_thread_(BrowserThread::UI, &message_loop_) {
19 } 21 }
20 22
21 protected: 23 protected:
22 MessageLoop message_loop_; 24 MessageLoop message_loop_;
23 BrowserThread ui_thread_; 25 BrowserThread ui_thread_;
24 }; 26 };
25 27
26 TEST_F(GeolocationSettingsStateTests, ClearOnNewOrigin) { 28 TEST_F(GeolocationSettingsStateTests, ClearOnNewOrigin) {
27 TestingProfile profile; 29 TestingProfile profile;
28 GeolocationSettingsState state(&profile); 30 GeolocationSettingsState state(&profile);
29 GURL url_0("http://www.example.com"); 31 GURL url_0("http://www.example.com");
30 32
31 NavigationEntry entry; 33 NavigationEntry entry;
32 entry.set_url(url_0); 34 entry.set_url(url_0);
33 content::LoadCommittedDetails load_committed_details; 35 content::LoadCommittedDetails load_committed_details;
34 load_committed_details.entry = &entry; 36 load_committed_details.entry = &entry;
35 state.DidNavigate(load_committed_details); 37 state.DidNavigate(load_committed_details);
36 38
37 profile.GetGeolocationContentSettingsMap()->SetContentSetting( 39 profile.GetHostContentSettingsMap()->SetContentSetting(
38 url_0, url_0, CONTENT_SETTING_ALLOW); 40 ContentSettingsPattern::FromURLNoWildcard(url_0),
41 ContentSettingsPattern::FromURLNoWildcard(url_0),
42 CONTENT_SETTINGS_TYPE_GEOLOCATION,
43 std::string(),
44 CONTENT_SETTING_ALLOW);
39 state.OnGeolocationPermissionSet(url_0, true); 45 state.OnGeolocationPermissionSet(url_0, true);
40 46
41 GURL url_1("http://www.example1.com"); 47 GURL url_1("http://www.example1.com");
42 profile.GetGeolocationContentSettingsMap()->SetContentSetting( 48 profile.GetHostContentSettingsMap()->SetContentSetting(
43 url_1, url_0, CONTENT_SETTING_BLOCK); 49 ContentSettingsPattern::FromURLNoWildcard(url_1),
50 ContentSettingsPattern::FromURLNoWildcard(url_0),
51 CONTENT_SETTINGS_TYPE_GEOLOCATION,
52 std::string(),
53 CONTENT_SETTING_BLOCK);
44 state.OnGeolocationPermissionSet(url_1, false); 54 state.OnGeolocationPermissionSet(url_1, false);
45 55
46 GeolocationSettingsState::StateMap state_map = 56 GeolocationSettingsState::StateMap state_map =
47 state.state_map(); 57 state.state_map();
48 EXPECT_EQ(2U, state_map.size()); 58 EXPECT_EQ(2U, state_map.size());
49 59
50 GeolocationSettingsState::FormattedHostsPerState formatted_host_per_state; 60 GeolocationSettingsState::FormattedHostsPerState formatted_host_per_state;
51 unsigned int tab_state_flags = 0; 61 unsigned int tab_state_flags = 0;
52 state.GetDetailedInfo(&formatted_host_per_state, &tab_state_flags); 62 state.GetDetailedInfo(&formatted_host_per_state, &tab_state_flags);
53 EXPECT_TRUE(tab_state_flags & 63 EXPECT_TRUE(tab_state_flags &
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
124 TestingProfile profile; 134 TestingProfile profile;
125 GeolocationSettingsState state(&profile); 135 GeolocationSettingsState state(&profile);
126 GURL url_0("http://www.example.com"); 136 GURL url_0("http://www.example.com");
127 137
128 NavigationEntry entry; 138 NavigationEntry entry;
129 entry.set_url(url_0); 139 entry.set_url(url_0);
130 content::LoadCommittedDetails load_committed_details; 140 content::LoadCommittedDetails load_committed_details;
131 load_committed_details.entry = &entry; 141 load_committed_details.entry = &entry;
132 state.DidNavigate(load_committed_details); 142 state.DidNavigate(load_committed_details);
133 143
134 profile.GetGeolocationContentSettingsMap()->SetContentSetting( 144 profile.GetHostContentSettingsMap()->SetContentSetting(
135 url_0, url_0, CONTENT_SETTING_ALLOW); 145 ContentSettingsPattern::FromURLNoWildcard(url_0),
146 ContentSettingsPattern::FromURLNoWildcard(url_0),
147 CONTENT_SETTINGS_TYPE_GEOLOCATION,
148 std::string(),
149 CONTENT_SETTING_ALLOW);
136 state.OnGeolocationPermissionSet(url_0, true); 150 state.OnGeolocationPermissionSet(url_0, true);
137 151
138 GURL url_1("https://www.example.com"); 152 GURL url_1("https://www.example.com");
139 profile.GetGeolocationContentSettingsMap()->SetContentSetting( 153 profile.GetHostContentSettingsMap()->SetContentSetting(
140 url_1, url_0, CONTENT_SETTING_ALLOW); 154 ContentSettingsPattern::FromURLNoWildcard(url_1),
155 ContentSettingsPattern::FromURLNoWildcard(url_0),
156 CONTENT_SETTINGS_TYPE_GEOLOCATION,
157 std::string(),
158 CONTENT_SETTING_ALLOW);
141 state.OnGeolocationPermissionSet(url_1, true); 159 state.OnGeolocationPermissionSet(url_1, true);
142 160
143 GURL url_2("http://www.example1.com"); 161 GURL url_2("http://www.example1.com");
144 profile.GetGeolocationContentSettingsMap()->SetContentSetting( 162 profile.GetHostContentSettingsMap()->SetContentSetting(
145 url_2, url_0, CONTENT_SETTING_ALLOW); 163 ContentSettingsPattern::FromURLNoWildcard(url_2),
164 ContentSettingsPattern::FromURLNoWildcard(url_0),
165 CONTENT_SETTINGS_TYPE_GEOLOCATION,
166 std::string(),
167 CONTENT_SETTING_ALLOW);
146 state.OnGeolocationPermissionSet(url_2, true); 168 state.OnGeolocationPermissionSet(url_2, true);
147 169
148 GeolocationSettingsState::StateMap state_map = 170 GeolocationSettingsState::StateMap state_map =
149 state.state_map(); 171 state.state_map();
150 EXPECT_EQ(3U, state_map.size()); 172 EXPECT_EQ(3U, state_map.size());
151 173
152 GeolocationSettingsState::FormattedHostsPerState formatted_host_per_state; 174 GeolocationSettingsState::FormattedHostsPerState formatted_host_per_state;
153 unsigned int tab_state_flags = 0; 175 unsigned int tab_state_flags = 0;
154 state.GetDetailedInfo(&formatted_host_per_state, &tab_state_flags); 176 state.GetDetailedInfo(&formatted_host_per_state, &tab_state_flags);
155 177
(...skipping 21 matching lines...) Expand all
177 formatted_host_per_state[CONTENT_SETTING_ALLOW].count( 199 formatted_host_per_state[CONTENT_SETTING_ALLOW].count(
178 url_2.host())); 200 url_2.host()));
179 EXPECT_EQ(1U, formatted_host_per_state[CONTENT_SETTING_BLOCK].size()); 201 EXPECT_EQ(1U, formatted_host_per_state[CONTENT_SETTING_BLOCK].size());
180 EXPECT_EQ(1U, 202 EXPECT_EQ(1U,
181 formatted_host_per_state[CONTENT_SETTING_BLOCK].count( 203 formatted_host_per_state[CONTENT_SETTING_BLOCK].count(
182 url_1.spec())); 204 url_1.spec()));
183 } 205 }
184 206
185 207
186 } // namespace 208 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698