OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 "base/message_loop.h" | 5 #include "base/message_loop.h" |
6 #include "base/ref_counted.h" | 6 #include "base/ref_counted.h" |
7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
8 #include "base/values.h" | 8 #include "base/values.h" |
9 #include "chrome/browser/chrome_thread.h" | 9 #include "chrome/browser/chrome_thread.h" |
10 #include "chrome/browser/host_zoom_map.h" | 10 #include "chrome/browser/host_zoom_map.h" |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
63 TEST_F(HostZoomMapTest, Load) { | 63 TEST_F(HostZoomMapTest, Load) { |
64 DictionaryValue* dict = | 64 DictionaryValue* dict = |
65 prefs_->GetMutableDictionary(prefs::kPerHostZoomLevels); | 65 prefs_->GetMutableDictionary(prefs::kPerHostZoomLevels); |
66 dict->SetWithoutPathExpansion(host_, Value::CreateIntegerValue(kZoomLevel)); | 66 dict->SetWithoutPathExpansion(host_, Value::CreateIntegerValue(kZoomLevel)); |
67 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); | 67 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); |
68 EXPECT_EQ(kZoomLevel, map->GetZoomLevel(url_)); | 68 EXPECT_EQ(kZoomLevel, map->GetZoomLevel(url_)); |
69 } | 69 } |
70 | 70 |
71 TEST_F(HostZoomMapTest, SetZoomLevel) { | 71 TEST_F(HostZoomMapTest, SetZoomLevel) { |
72 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); | 72 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); |
73 prefs_->AddPrefObserver(prefs::kPerHostZoomLevels, &pref_observer_); | 73 PrefChangeRegistrar registrar; |
| 74 registrar.Init(prefs_); |
| 75 registrar.Add(prefs::kPerHostZoomLevels, &pref_observer_); |
74 SetPrefObserverExpectation(); | 76 SetPrefObserverExpectation(); |
75 map->SetZoomLevel(url_, kZoomLevel); | 77 map->SetZoomLevel(url_, kZoomLevel); |
76 EXPECT_EQ(kZoomLevel, map->GetZoomLevel(url_)); | 78 EXPECT_EQ(kZoomLevel, map->GetZoomLevel(url_)); |
77 const DictionaryValue* dict = | 79 const DictionaryValue* dict = |
78 prefs_->GetDictionary(prefs::kPerHostZoomLevels); | 80 prefs_->GetDictionary(prefs::kPerHostZoomLevels); |
79 int zoom_level = 0; | 81 int zoom_level = 0; |
80 EXPECT_TRUE(dict->GetIntegerWithoutPathExpansion(host_, &zoom_level)); | 82 EXPECT_TRUE(dict->GetIntegerWithoutPathExpansion(host_, &zoom_level)); |
81 EXPECT_EQ(kZoomLevel, zoom_level); | 83 EXPECT_EQ(kZoomLevel, zoom_level); |
82 | 84 |
83 SetPrefObserverExpectation(); | 85 SetPrefObserverExpectation(); |
84 map->SetZoomLevel(url_, 0); | 86 map->SetZoomLevel(url_, 0); |
85 EXPECT_EQ(0, map->GetZoomLevel(url_)); | 87 EXPECT_EQ(0, map->GetZoomLevel(url_)); |
86 EXPECT_FALSE(dict->HasKey(host_)); | 88 EXPECT_FALSE(dict->HasKey(host_)); |
87 prefs_->RemovePrefObserver(prefs::kPerHostZoomLevels, &pref_observer_); | |
88 } | 89 } |
89 | 90 |
90 TEST_F(HostZoomMapTest, ResetToDefaults) { | 91 TEST_F(HostZoomMapTest, ResetToDefaults) { |
91 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); | 92 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); |
92 map->SetZoomLevel(url_, kZoomLevel); | 93 map->SetZoomLevel(url_, kZoomLevel); |
93 | 94 |
94 prefs_->AddPrefObserver(prefs::kPerHostZoomLevels, &pref_observer_); | 95 PrefChangeRegistrar registrar; |
| 96 registrar.Init(prefs_); |
| 97 registrar.Add(prefs::kPerHostZoomLevels, &pref_observer_); |
95 SetPrefObserverExpectation(); | 98 SetPrefObserverExpectation(); |
96 map->ResetToDefaults(); | 99 map->ResetToDefaults(); |
97 EXPECT_EQ(0, map->GetZoomLevel(url_)); | 100 EXPECT_EQ(0, map->GetZoomLevel(url_)); |
98 EXPECT_EQ(NULL, prefs_->GetDictionary(prefs::kPerHostZoomLevels)); | 101 EXPECT_EQ(NULL, prefs_->GetDictionary(prefs::kPerHostZoomLevels)); |
99 prefs_->RemovePrefObserver(prefs::kPerHostZoomLevels, &pref_observer_); | |
100 } | 102 } |
101 | 103 |
102 TEST_F(HostZoomMapTest, ReloadOnPrefChange) { | 104 TEST_F(HostZoomMapTest, ReloadOnPrefChange) { |
103 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); | 105 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); |
104 map->SetZoomLevel(url_, kZoomLevel); | 106 map->SetZoomLevel(url_, kZoomLevel); |
105 | 107 |
106 DictionaryValue dict; | 108 DictionaryValue dict; |
107 dict.SetWithoutPathExpansion(host_, Value::CreateIntegerValue(0)); | 109 dict.SetWithoutPathExpansion(host_, Value::CreateIntegerValue(0)); |
108 prefs_->Set(prefs::kPerHostZoomLevels, dict); | 110 prefs_->Set(prefs::kPerHostZoomLevels, dict); |
109 EXPECT_EQ(0, map->GetZoomLevel(url_)); | 111 EXPECT_EQ(0, map->GetZoomLevel(url_)); |
110 } | 112 } |
111 | 113 |
112 TEST_F(HostZoomMapTest, NoHost) { | 114 TEST_F(HostZoomMapTest, NoHost) { |
113 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); | 115 scoped_refptr<HostZoomMap> map(new HostZoomMap(&profile_)); |
114 GURL file_url1_("file:///tmp/test.html"); | 116 GURL file_url1_("file:///tmp/test.html"); |
115 GURL file_url2_("file:///tmp/other.html"); | 117 GURL file_url2_("file:///tmp/other.html"); |
116 map->SetZoomLevel(file_url1_, kZoomLevel); | 118 map->SetZoomLevel(file_url1_, kZoomLevel); |
117 | 119 |
118 EXPECT_EQ(kZoomLevel, map->GetZoomLevel(file_url1_)); | 120 EXPECT_EQ(kZoomLevel, map->GetZoomLevel(file_url1_)); |
119 EXPECT_EQ(0, map->GetZoomLevel(file_url2_)); | 121 EXPECT_EQ(0, map->GetZoomLevel(file_url2_)); |
120 } | 122 } |
OLD | NEW |