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

Side by Side Diff: chrome/browser/profiles/off_the_record_profile_impl_unittest.cc

Issue 393133002: Migrate HostZoomMap to live in StoragePartition. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix test compilation. Created 6 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) 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 "chrome/browser/profiles/off_the_record_profile_impl.h" 5 #include "chrome/browser/profiles/off_the_record_profile_impl.h"
6 6
7 #include "base/prefs/pref_registry_simple.h" 7 #include "base/prefs/pref_registry_simple.h"
8 #include "base/prefs/pref_service.h" 8 #include "base/prefs/pref_service.h"
9 #include "base/prefs/scoped_user_pref_update.h" 9 #include "base/prefs/scoped_user_pref_update.h"
10 #include "base/run_loop.h" 10 #include "base/run_loop.h"
(...skipping 10 matching lines...) Expand all
21 #include "net/dns/mock_host_resolver.h" 21 #include "net/dns/mock_host_resolver.h"
22 22
23 using content::HostZoomMap; 23 using content::HostZoomMap;
24 24
25 namespace { 25 namespace {
26 26
27 class TestingProfileWithHostZoomMap : public TestingProfile { 27 class TestingProfileWithHostZoomMap : public TestingProfile {
28 public: 28 public:
29 TestingProfileWithHostZoomMap() { 29 TestingProfileWithHostZoomMap() {
30 zoom_subscription_ = 30 zoom_subscription_ =
31 HostZoomMap::GetForBrowserContext(this)->AddZoomLevelChangedCallback( 31 HostZoomMap::GetDefaultForBrowserContext(this)
32 base::Bind(&TestingProfileWithHostZoomMap::OnZoomLevelChanged, 32 ->AddZoomLevelChangedCallback(
33 base::Unretained(this))); 33 base::Bind(&TestingProfileWithHostZoomMap::OnZoomLevelChanged,
34 base::Unretained(this)));
34 } 35 }
35 36
36 virtual ~TestingProfileWithHostZoomMap() {} 37 virtual ~TestingProfileWithHostZoomMap() {}
37 38
38 // Profile overrides: 39 // Profile overrides:
39 virtual PrefService* GetOffTheRecordPrefs() OVERRIDE { 40 virtual PrefService* GetOffTheRecordPrefs() OVERRIDE {
40 return GetPrefs(); 41 return GetPrefs();
41 } 42 }
42 43
43 private: 44 private:
44 void OnZoomLevelChanged(const HostZoomMap::ZoomLevelChange& change) { 45 void OnZoomLevelChanged(const HostZoomMap::ZoomLevelChange& change) {
45 46
46 if (change.mode != HostZoomMap::ZOOM_CHANGED_FOR_HOST) 47 if (change.mode != HostZoomMap::ZOOM_CHANGED_FOR_HOST)
47 return; 48 return;
48 49
49 HostZoomMap* host_zoom_map = HostZoomMap::GetForBrowserContext(this); 50 HostZoomMap* host_zoom_map = HostZoomMap::GetDefaultForBrowserContext(this);
50 51
51 double level = change.zoom_level; 52 double level = change.zoom_level;
52 DictionaryPrefUpdate update(prefs_.get(), prefs::kPerHostZoomLevels); 53 DictionaryPrefUpdate update(prefs_.get(), prefs::kPerHostZoomLevels);
53 base::DictionaryValue* host_zoom_dictionary = update.Get(); 54 base::DictionaryValue* host_zoom_dictionary = update.Get();
54 if (content::ZoomValuesEqual(level, host_zoom_map->GetDefaultZoomLevel())) { 55 if (content::ZoomValuesEqual(level, host_zoom_map->GetDefaultZoomLevel())) {
55 host_zoom_dictionary->RemoveWithoutPathExpansion(change.host, NULL); 56 host_zoom_dictionary->RemoveWithoutPathExpansion(change.host, NULL);
56 } else { 57 } else {
57 host_zoom_dictionary->SetWithoutPathExpansion( 58 host_zoom_dictionary->SetWithoutPathExpansion(
58 change.host, new base::FundamentalValue(level)); 59 change.host, new base::FundamentalValue(level));
59 } 60 }
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
124 const double zoom_level_40 = 4.0; 125 const double zoom_level_40 = 4.0;
125 126
126 // The TestingProfile from CreateProfile above is the parent. 127 // The TestingProfile from CreateProfile above is the parent.
127 TestingProfile* parent_profile = GetProfile(); 128 TestingProfile* parent_profile = GetProfile();
128 ASSERT_TRUE(parent_profile); 129 ASSERT_TRUE(parent_profile);
129 ASSERT_TRUE(parent_profile->GetPrefs()); 130 ASSERT_TRUE(parent_profile->GetPrefs());
130 ASSERT_TRUE(parent_profile->GetOffTheRecordPrefs()); 131 ASSERT_TRUE(parent_profile->GetOffTheRecordPrefs());
131 132
132 // Prepare parent host zoom map. 133 // Prepare parent host zoom map.
133 HostZoomMap* parent_zoom_map = 134 HostZoomMap* parent_zoom_map =
134 HostZoomMap::GetForBrowserContext(parent_profile); 135 HostZoomMap::GetDefaultForBrowserContext(parent_profile);
135 ASSERT_TRUE(parent_zoom_map); 136 ASSERT_TRUE(parent_zoom_map);
136 137
137 parent_zoom_map->SetZoomLevelForHost(host, zoom_level_25); 138 parent_zoom_map->SetZoomLevelForHost(host, zoom_level_25);
138 ASSERT_EQ(parent_zoom_map->GetZoomLevelForHostAndScheme("http", host), 139 ASSERT_EQ(parent_zoom_map->GetZoomLevelForHostAndScheme("http", host),
139 zoom_level_25); 140 zoom_level_25);
140 141
141 // TODO(yosin) We need to wait ProfileImpl::Observe done for 142 // TODO(yosin) We need to wait ProfileImpl::Observe done for
142 // OnZoomLevelChanged. 143 // OnZoomLevelChanged.
143 144
144 // Prepare an off the record profile owned by the parent profile. 145 // Prepare an off the record profile owned by the parent profile.
145 parent_profile->SetOffTheRecordProfile(
146 scoped_ptr<Profile>(new OffTheRecordProfileImpl(parent_profile)));
147 OffTheRecordProfileImpl* child_profile = 146 OffTheRecordProfileImpl* child_profile =
148 static_cast<OffTheRecordProfileImpl*>( 147 static_cast<OffTheRecordProfileImpl*>(
149 parent_profile->GetOffTheRecordProfile()); 148 parent_profile->GetOffTheRecordProfile());
150 child_profile->InitIoData();
151 child_profile->InitHostZoomMap();
152 149
153 // Prepare child host zoom map. 150 // Prepare child host zoom map.
154 HostZoomMap* child_zoom_map = 151 HostZoomMap* child_zoom_map =
155 HostZoomMap::GetForBrowserContext(child_profile); 152 HostZoomMap::GetDefaultForBrowserContext(child_profile);
156 ASSERT_TRUE(child_zoom_map); 153 ASSERT_TRUE(child_zoom_map);
157 154
158 // Verify. 155 // Verify.
159 EXPECT_NE(parent_zoom_map, child_zoom_map); 156 EXPECT_NE(parent_zoom_map, child_zoom_map);
160 157
161 EXPECT_EQ(parent_zoom_map->GetZoomLevelForHostAndScheme("http", host), 158 EXPECT_EQ(parent_zoom_map->GetZoomLevelForHostAndScheme("http", host),
162 child_zoom_map->GetZoomLevelForHostAndScheme("http", host)) << 159 child_zoom_map->GetZoomLevelForHostAndScheme("http", host)) <<
163 "Child must inherit from parent."; 160 "Child must inherit from parent.";
164 161
165 child_zoom_map->SetZoomLevelForHost(host, zoom_level_30); 162 child_zoom_map->SetZoomLevelForHost(host, zoom_level_30);
166 ASSERT_EQ( 163 ASSERT_EQ(
167 child_zoom_map->GetZoomLevelForHostAndScheme("http", host), 164 child_zoom_map->GetZoomLevelForHostAndScheme("http", host),
168 zoom_level_30); 165 zoom_level_30);
169 166
170 EXPECT_NE(parent_zoom_map->GetZoomLevelForHostAndScheme("http", host), 167 EXPECT_NE(parent_zoom_map->GetZoomLevelForHostAndScheme("http", host),
171 child_zoom_map->GetZoomLevelForHostAndScheme("http", host)) << 168 child_zoom_map->GetZoomLevelForHostAndScheme("http", host)) <<
172 "Child change must not propagate to parent."; 169 "Child change must not propagate to parent.";
173 170
174 parent_zoom_map->SetZoomLevelForHost(host, zoom_level_40); 171 parent_zoom_map->SetZoomLevelForHost(host, zoom_level_40);
175 ASSERT_EQ( 172 ASSERT_EQ(
176 parent_zoom_map->GetZoomLevelForHostAndScheme("http", host), 173 parent_zoom_map->GetZoomLevelForHostAndScheme("http", host),
177 zoom_level_40); 174 zoom_level_40);
178 175
179 EXPECT_EQ(parent_zoom_map->GetZoomLevelForHostAndScheme("http", host), 176 EXPECT_EQ(parent_zoom_map->GetZoomLevelForHostAndScheme("http", host),
180 child_zoom_map->GetZoomLevelForHostAndScheme("http", host)) << 177 child_zoom_map->GetZoomLevelForHostAndScheme("http", host)) <<
181 "Parent change should propagate to child."; 178 "Parent change should propagate to child.";
182 base::RunLoop().RunUntilIdle(); 179 base::RunLoop().RunUntilIdle();
183 } 180 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698