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 "extension_prefs_unittest.h" | 5 #include "extension_prefs_unittest.h" |
6 | 6 |
| 7 #include "base/basictypes.h" |
7 #include "base/path_service.h" | 8 #include "base/path_service.h" |
8 #include "base/scoped_temp_dir.h" | 9 #include "base/scoped_temp_dir.h" |
9 #include "base/stl_util.h" | 10 #include "base/stl_util.h" |
10 #include "base/string_number_conversions.h" | 11 #include "base/string_number_conversions.h" |
11 #include "base/stringprintf.h" | 12 #include "base/stringprintf.h" |
12 #include "base/values.h" | 13 #include "base/values.h" |
13 #include "chrome/browser/extensions/extension_prefs.h" | 14 #include "chrome/browser/extensions/extension_prefs.h" |
14 #include "chrome/browser/extensions/extension_pref_value_map.h" | 15 #include "chrome/browser/extensions/extension_pref_value_map.h" |
15 #include "chrome/browser/prefs/pref_change_registrar.h" | 16 #include "chrome/browser/prefs/pref_change_registrar.h" |
16 #include "chrome/browser/prefs/scoped_user_pref_update.h" | 17 #include "chrome/browser/prefs/scoped_user_pref_update.h" |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 EXPECT_TRUE(result == blacklist_time_); | 95 EXPECT_TRUE(result == blacklist_time_); |
95 } | 96 } |
96 | 97 |
97 private: | 98 private: |
98 Time extension_time_; | 99 Time extension_time_; |
99 Time blacklist_time_; | 100 Time blacklist_time_; |
100 std::string extension_id_; | 101 std::string extension_id_; |
101 }; | 102 }; |
102 TEST_F(ExtensionPrefsLastPingDay, LastPingDay) {} | 103 TEST_F(ExtensionPrefsLastPingDay, LastPingDay) {} |
103 | 104 |
| 105 namespace { |
| 106 |
| 107 void AddGalleryPermission(MediaGalleryPrefId gallery, bool has_access, |
| 108 std::vector<MediaGalleryPermission>* vector) { |
| 109 MediaGalleryPermission permission; |
| 110 permission.pref_id = gallery; |
| 111 permission.has_permission = has_access; |
| 112 vector->push_back(permission); |
| 113 } |
| 114 |
| 115 } // namspace |
| 116 |
| 117 // Test the MediaGalleries permissions functions. |
| 118 class MediaGalleriesPermissions : public ExtensionPrefsTest { |
| 119 public: |
| 120 virtual void Initialize() { |
| 121 extension1_id_ = prefs_.AddExtensionAndReturnId("test1"); |
| 122 extension2_id_ = prefs_.AddExtensionAndReturnId("test2"); |
| 123 extension3_id_ = prefs_.AddExtensionAndReturnId("test3"); |
| 124 // Id4 isn't used to ensure that an empty permission list is ok. |
| 125 extension4_id_ = prefs_.AddExtensionAndReturnId("test4"); |
| 126 Verify(); |
| 127 |
| 128 prefs()->SetMediaGalleryPermission(extension1_id_, 1, false); |
| 129 AddGalleryPermission(1, false, &extension1_expectation_); |
| 130 Verify(); |
| 131 |
| 132 prefs()->SetMediaGalleryPermission(extension1_id_, 2, true); |
| 133 AddGalleryPermission(2, true, &extension1_expectation_); |
| 134 Verify(); |
| 135 |
| 136 prefs()->SetMediaGalleryPermission(extension1_id_, 2, false); |
| 137 extension1_expectation_[1].has_permission = false; |
| 138 Verify(); |
| 139 |
| 140 prefs()->SetMediaGalleryPermission(extension2_id_, 1, true); |
| 141 prefs()->SetMediaGalleryPermission(extension2_id_, 3, true); |
| 142 prefs()->SetMediaGalleryPermission(extension2_id_, 4, true); |
| 143 AddGalleryPermission(1, true, &extension2_expectation_); |
| 144 AddGalleryPermission(3, true, &extension2_expectation_); |
| 145 AddGalleryPermission(4, true, &extension2_expectation_); |
| 146 Verify(); |
| 147 |
| 148 prefs()->SetMediaGalleryPermission(extension3_id_, 3, true); |
| 149 AddGalleryPermission(3, true, &extension3_expectation_); |
| 150 Verify(); |
| 151 |
| 152 prefs()->RemoveMediaGalleryPermissions(3); |
| 153 extension2_expectation_.erase(extension2_expectation_.begin() + 1); |
| 154 extension3_expectation_.erase(extension3_expectation_.begin()); |
| 155 Verify(); |
| 156 } |
| 157 |
| 158 virtual void Verify() { |
| 159 struct TestData { |
| 160 std::string* id; |
| 161 std::vector<MediaGalleryPermission>* expectation; |
| 162 }; |
| 163 |
| 164 const TestData test_data[] = {{&extension1_id_, &extension1_expectation_}, |
| 165 {&extension2_id_, &extension2_expectation_}, |
| 166 {&extension3_id_, &extension3_expectation_}, |
| 167 {&extension4_id_, &extension4_expectation_}}; |
| 168 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_data); i++) { |
| 169 std::vector<MediaGalleryPermission> actual = |
| 170 prefs()->GetMediaGalleryPermissions(*test_data[i].id); |
| 171 EXPECT_EQ(test_data[i].expectation->size(), actual.size()); |
| 172 for (size_t permission_entry = 0; |
| 173 permission_entry < test_data[i].expectation->size() && |
| 174 permission_entry < actual.size(); |
| 175 permission_entry++) { |
| 176 EXPECT_EQ(test_data[i].expectation->at(permission_entry).pref_id, |
| 177 actual[permission_entry].pref_id); |
| 178 EXPECT_EQ(test_data[i].expectation->at(permission_entry).has_permission, |
| 179 actual[permission_entry].has_permission); |
| 180 } |
| 181 } |
| 182 } |
| 183 |
| 184 private: |
| 185 std::string extension1_id_; |
| 186 std::string extension2_id_; |
| 187 std::string extension3_id_; |
| 188 std::string extension4_id_; |
| 189 |
| 190 std::vector<MediaGalleryPermission> extension1_expectation_; |
| 191 std::vector<MediaGalleryPermission> extension2_expectation_; |
| 192 std::vector<MediaGalleryPermission> extension3_expectation_; |
| 193 std::vector<MediaGalleryPermission> extension4_expectation_; |
| 194 }; |
| 195 TEST_F(MediaGalleriesPermissions, MediaGalleries) {} |
104 | 196 |
105 // Tests the GetToolbarOrder/SetToolbarOrder functions. | 197 // Tests the GetToolbarOrder/SetToolbarOrder functions. |
106 class ExtensionPrefsToolbarOrder : public ExtensionPrefsTest { | 198 class ExtensionPrefsToolbarOrder : public ExtensionPrefsTest { |
107 public: | 199 public: |
108 virtual void Initialize() { | 200 virtual void Initialize() { |
109 list_.push_back(prefs_.AddExtensionAndReturnId("1")); | 201 list_.push_back(prefs_.AddExtensionAndReturnId("1")); |
110 list_.push_back(prefs_.AddExtensionAndReturnId("2")); | 202 list_.push_back(prefs_.AddExtensionAndReturnId("2")); |
111 list_.push_back(prefs_.AddExtensionAndReturnId("3")); | 203 list_.push_back(prefs_.AddExtensionAndReturnId("3")); |
112 std::vector<std::string> before_list = prefs()->GetToolbarOrder(); | 204 std::vector<std::string> before_list = prefs()->GetToolbarOrder(); |
113 EXPECT_TRUE(before_list.empty()); | 205 EXPECT_TRUE(before_list.empty()); |
(...skipping 1047 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1161 EXPECT_EQ(string16(), error16); | 1253 EXPECT_EQ(string16(), error16); |
1162 EXPECT_TRUE(prefs()->UserMayModifySettings(extension_.get(), &error16)); | 1254 EXPECT_TRUE(prefs()->UserMayModifySettings(extension_.get(), &error16)); |
1163 EXPECT_EQ(string16(), error16); | 1255 EXPECT_EQ(string16(), error16); |
1164 EXPECT_FALSE(prefs()->MustRemainEnabled(extension_.get(), &error16)); | 1256 EXPECT_FALSE(prefs()->MustRemainEnabled(extension_.get(), &error16)); |
1165 EXPECT_EQ(string16(), error16); | 1257 EXPECT_EQ(string16(), error16); |
1166 } | 1258 } |
1167 }; | 1259 }; |
1168 TEST_F(ExtensionPrefsNotRequiredExtension, NotRequiredExtension) {} | 1260 TEST_F(ExtensionPrefsNotRequiredExtension, NotRequiredExtension) {} |
1169 | 1261 |
1170 } // namespace extensions | 1262 } // namespace extensions |
OLD | NEW |