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 <map> | 5 #include <map> |
6 #include <string> | 6 #include <string> |
7 | 7 |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "chrome/common/extensions/extension_localization_peer.h" | 9 #include "chrome/common/extensions/extension_localization_peer.h" |
10 #include "chrome/common/extensions/message_bundle.h" | 10 #include "chrome/common/extensions/message_bundle.h" |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
137 MATCHER_P(IsURLRequestEqual, status, "") { return arg.status() == status; } | 137 MATCHER_P(IsURLRequestEqual, status, "") { return arg.status() == status; } |
138 | 138 |
139 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestBadURLRequestStatus) { | 139 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestBadURLRequestStatus) { |
140 // It will self-delete once it exits OnCompletedRequest. | 140 // It will self-delete once it exits OnCompletedRequest. |
141 ExtensionLocalizationPeer* filter_peer = filter_peer_.release(); | 141 ExtensionLocalizationPeer* filter_peer = filter_peer_.release(); |
142 | 142 |
143 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)); | 143 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)); |
144 EXPECT_CALL(*original_peer_, OnCompletedRequest( | 144 EXPECT_CALL(*original_peer_, OnCompletedRequest( |
145 net::ERR_ABORTED, false, "", base::TimeTicks())); | 145 net::ERR_ABORTED, false, "", base::TimeTicks())); |
146 | 146 |
147 filter_peer->OnCompletedRequest(net::ERR_FAILED, false, "", | 147 filter_peer->OnCompletedRequest( |
148 base::TimeTicks()); | 148 net::ERR_FAILED, false, std::string(), base::TimeTicks()); |
149 } | 149 } |
150 | 150 |
151 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestEmptyData) { | 151 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestEmptyData) { |
152 // It will self-delete once it exits OnCompletedRequest. | 152 // It will self-delete once it exits OnCompletedRequest. |
153 ExtensionLocalizationPeer* filter_peer = filter_peer_.release(); | 153 ExtensionLocalizationPeer* filter_peer = filter_peer_.release(); |
154 | 154 |
155 EXPECT_CALL(*original_peer_, OnReceivedData(_, _, _)).Times(0); | 155 EXPECT_CALL(*original_peer_, OnReceivedData(_, _, _)).Times(0); |
156 EXPECT_CALL(*sender_, Send(_)).Times(0); | 156 EXPECT_CALL(*sender_, Send(_)).Times(0); |
157 | 157 |
158 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)); | 158 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)); |
159 EXPECT_CALL(*original_peer_, OnCompletedRequest( | 159 EXPECT_CALL(*original_peer_, OnCompletedRequest( |
160 net::OK, false, "", base::TimeTicks())); | 160 net::OK, false, "", base::TimeTicks())); |
161 | 161 |
162 filter_peer->OnCompletedRequest(net::OK, false, "", base::TimeTicks()); | 162 filter_peer->OnCompletedRequest( |
| 163 net::OK, false, std::string(), base::TimeTicks()); |
163 } | 164 } |
164 | 165 |
165 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestNoCatalogs) { | 166 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestNoCatalogs) { |
166 // It will self-delete once it exits OnCompletedRequest. | 167 // It will self-delete once it exits OnCompletedRequest. |
167 ExtensionLocalizationPeer* filter_peer = filter_peer_.release(); | 168 ExtensionLocalizationPeer* filter_peer = filter_peer_.release(); |
168 | 169 |
169 SetData(filter_peer, "some text"); | 170 SetData(filter_peer, "some text"); |
170 | 171 |
171 EXPECT_CALL(*sender_, Send(_)); | 172 EXPECT_CALL(*sender_, Send(_)); |
172 | 173 |
173 std::string data = GetData(filter_peer); | 174 std::string data = GetData(filter_peer); |
174 EXPECT_CALL(*original_peer_, | 175 EXPECT_CALL(*original_peer_, |
175 OnReceivedData(StrEq(data.data()), data.length(), -1)).Times(2); | 176 OnReceivedData(StrEq(data.data()), data.length(), -1)).Times(2); |
176 | 177 |
177 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)).Times(2); | 178 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)).Times(2); |
178 EXPECT_CALL(*original_peer_, OnCompletedRequest( | 179 EXPECT_CALL(*original_peer_, OnCompletedRequest( |
179 net::OK, false, "", base::TimeTicks())).Times(2); | 180 net::OK, false, "", base::TimeTicks())).Times(2); |
180 | 181 |
181 filter_peer->OnCompletedRequest(net::OK, false, "", base::TimeTicks()); | 182 filter_peer->OnCompletedRequest( |
| 183 net::OK, false, std::string(), base::TimeTicks()); |
182 | 184 |
183 // Test if Send gets called again (it shouldn't be) when first call returned | 185 // Test if Send gets called again (it shouldn't be) when first call returned |
184 // an empty dictionary. | 186 // an empty dictionary. |
185 filter_peer = | 187 filter_peer = |
186 CreateExtensionLocalizationPeer("text/css", GURL(kExtensionUrl_1)); | 188 CreateExtensionLocalizationPeer("text/css", GURL(kExtensionUrl_1)); |
187 SetData(filter_peer, "some text"); | 189 SetData(filter_peer, "some text"); |
188 filter_peer->OnCompletedRequest(net::OK, false, "", base::TimeTicks()); | 190 filter_peer->OnCompletedRequest( |
| 191 net::OK, false, std::string(), base::TimeTicks()); |
189 } | 192 } |
190 | 193 |
191 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestWithCatalogs) { | 194 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestWithCatalogs) { |
192 // It will self-delete once it exits OnCompletedRequest. | 195 // It will self-delete once it exits OnCompletedRequest. |
193 ExtensionLocalizationPeer* filter_peer = | 196 ExtensionLocalizationPeer* filter_peer = |
194 CreateExtensionLocalizationPeer("text/css", GURL(kExtensionUrl_2)); | 197 CreateExtensionLocalizationPeer("text/css", GURL(kExtensionUrl_2)); |
195 | 198 |
196 extensions::L10nMessagesMap messages; | 199 extensions::L10nMessagesMap messages; |
197 messages.insert(std::make_pair("text", "new text")); | 200 messages.insert(std::make_pair("text", "new text")); |
198 extensions::ExtensionToL10nMessagesMap& l10n_messages_map = | 201 extensions::ExtensionToL10nMessagesMap& l10n_messages_map = |
199 *extensions::GetExtensionToL10nMessagesMap(); | 202 *extensions::GetExtensionToL10nMessagesMap(); |
200 l10n_messages_map["some_id2"] = messages; | 203 l10n_messages_map["some_id2"] = messages; |
201 | 204 |
202 SetData(filter_peer, "some __MSG_text__"); | 205 SetData(filter_peer, "some __MSG_text__"); |
203 | 206 |
204 // We already have messages in memory, Send will be skipped. | 207 // We already have messages in memory, Send will be skipped. |
205 EXPECT_CALL(*sender_, Send(_)).Times(0); | 208 EXPECT_CALL(*sender_, Send(_)).Times(0); |
206 | 209 |
207 // __MSG_text__ gets replaced with "new text". | 210 // __MSG_text__ gets replaced with "new text". |
208 std::string data("some new text"); | 211 std::string data("some new text"); |
209 EXPECT_CALL(*original_peer_, | 212 EXPECT_CALL(*original_peer_, |
210 OnReceivedData(StrEq(data.data()), data.length(), -1)); | 213 OnReceivedData(StrEq(data.data()), data.length(), -1)); |
211 | 214 |
212 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)); | 215 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)); |
213 EXPECT_CALL(*original_peer_, OnCompletedRequest( | 216 EXPECT_CALL(*original_peer_, OnCompletedRequest( |
214 net::OK, false, "", base::TimeTicks())); | 217 net::OK, false, "", base::TimeTicks())); |
215 | 218 |
216 filter_peer->OnCompletedRequest(net::OK, false, "", base::TimeTicks()); | 219 filter_peer->OnCompletedRequest( |
| 220 net::OK, false, std::string(), base::TimeTicks()); |
217 } | 221 } |
218 | 222 |
219 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestReplaceMessagesFails) { | 223 TEST_F(ExtensionLocalizationPeerTest, OnCompletedRequestReplaceMessagesFails) { |
220 // It will self-delete once it exits OnCompletedRequest. | 224 // It will self-delete once it exits OnCompletedRequest. |
221 ExtensionLocalizationPeer* filter_peer = | 225 ExtensionLocalizationPeer* filter_peer = |
222 CreateExtensionLocalizationPeer("text/css", GURL(kExtensionUrl_3)); | 226 CreateExtensionLocalizationPeer("text/css", GURL(kExtensionUrl_3)); |
223 | 227 |
224 extensions::L10nMessagesMap messages; | 228 extensions::L10nMessagesMap messages; |
225 messages.insert(std::make_pair("text", "new text")); | 229 messages.insert(std::make_pair("text", "new text")); |
226 extensions::ExtensionToL10nMessagesMap& l10n_messages_map = | 230 extensions::ExtensionToL10nMessagesMap& l10n_messages_map = |
227 *extensions::GetExtensionToL10nMessagesMap(); | 231 *extensions::GetExtensionToL10nMessagesMap(); |
228 l10n_messages_map["some_id3"] = messages; | 232 l10n_messages_map["some_id3"] = messages; |
229 | 233 |
230 std::string message("some __MSG_missing_message__"); | 234 std::string message("some __MSG_missing_message__"); |
231 SetData(filter_peer, message); | 235 SetData(filter_peer, message); |
232 | 236 |
233 // We already have messages in memory, Send will be skipped. | 237 // We already have messages in memory, Send will be skipped. |
234 EXPECT_CALL(*sender_, Send(_)).Times(0); | 238 EXPECT_CALL(*sender_, Send(_)).Times(0); |
235 | 239 |
236 // __MSG_missing_message__ is missing, so message stays the same. | 240 // __MSG_missing_message__ is missing, so message stays the same. |
237 EXPECT_CALL(*original_peer_, | 241 EXPECT_CALL(*original_peer_, |
238 OnReceivedData(StrEq(message.data()), message.length(), -1)); | 242 OnReceivedData(StrEq(message.data()), message.length(), -1)); |
239 | 243 |
240 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)); | 244 EXPECT_CALL(*original_peer_, OnReceivedResponse(_)); |
241 EXPECT_CALL(*original_peer_, OnCompletedRequest( | 245 EXPECT_CALL(*original_peer_, OnCompletedRequest( |
242 net::OK, false, "", base::TimeTicks())); | 246 net::OK, false, "", base::TimeTicks())); |
243 | 247 |
244 filter_peer->OnCompletedRequest(net::OK, false, "", base::TimeTicks()); | 248 filter_peer->OnCompletedRequest( |
| 249 net::OK, false, std::string(), base::TimeTicks()); |
245 } | 250 } |
OLD | NEW |