OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 <cstddef> | 5 #include <cstddef> |
6 #include <string> | 6 #include <string> |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
11 #include "base/memory/scoped_ptr.h" | 11 #include "base/memory/scoped_ptr.h" |
12 #include "testing/gtest/include/gtest/gtest.h" | 12 #include "testing/gtest/include/gtest/gtest.h" |
13 | |
14 #define I18N_ADDRESSINPUT_UTIL_BASICTYPES_H_ | |
15 #include "third_party/libaddressinput/chromium/preload_address_validator.h" | 13 #include "third_party/libaddressinput/chromium/preload_address_validator.h" |
16 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_da ta.h" | 14 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_da ta.h" |
17 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_fi eld.h" | 15 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_fi eld.h" |
18 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_pr oblem.h" | 16 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_pr oblem.h" |
19 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_va lidator.h" | 17 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_va lidator.h" |
20 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/callback.h " | 18 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/callback.h " |
21 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/downloader .h" | 19 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/downloader .h" |
22 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/null_stora ge.h" | 20 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/null_stora ge.h" |
23 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/storage.h" | 21 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/storage.h" |
24 #include "third_party/libaddressinput/src/cpp/src/region_data_constants.h" | 22 #include "third_party/libaddressinput/src/cpp/src/region_data_constants.h" |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
100 TEST_F(PreloadAddressValidatorTest, EmptyAddressNoFatalFailure) { | 98 TEST_F(PreloadAddressValidatorTest, EmptyAddressNoFatalFailure) { |
101 AddressData address; | 99 AddressData address; |
102 address.region_code = "US"; | 100 address.region_code = "US"; |
103 | 101 |
104 FieldProblemMap dummy; | 102 FieldProblemMap dummy; |
105 EXPECT_EQ( | 103 EXPECT_EQ( |
106 PreloadAddressValidator::SUCCESS, | 104 PreloadAddressValidator::SUCCESS, |
107 validator_->Validate(address, NULL, &dummy)); | 105 validator_->Validate(address, NULL, &dummy)); |
108 } | 106 } |
109 | 107 |
108 TEST_F(PreloadAddressValidatorTest, UsStateNamesAreValidEntries) { | |
109 AddressData address; | |
110 address.region_code = "US"; | |
111 address.administrative_area = "California"; | |
112 | |
113 FieldProblemMap filter; | |
114 filter.insert(std::make_pair(ADMIN_AREA, UNKNOWN_VALUE)); | |
115 FieldProblemMap problems; | |
116 EXPECT_EQ( | |
117 PreloadAddressValidator::SUCCESS, | |
118 validator_->Validate(address, &filter, &problems)); | |
119 EXPECT_TRUE(problems.empty()); | |
120 } | |
121 | |
110 TEST_F(PreloadAddressValidatorTest, USZipCode) { | 122 TEST_F(PreloadAddressValidatorTest, USZipCode) { |
111 AddressData address; | 123 AddressData address; |
112 address.address_line.push_back("340 Main St."); | 124 address.address_line.push_back("340 Main St."); |
113 address.locality = "Venice"; | 125 address.locality = "Venice"; |
114 address.administrative_area = "CA"; | 126 address.administrative_area = "CA"; |
115 address.region_code = "US"; | 127 address.region_code = "US"; |
116 | 128 |
117 // Valid Californian zip code. | 129 // Valid Californian zip code. |
118 address.postal_code = "90291"; | 130 address.postal_code = "90291"; |
119 FieldProblemMap problems; | 131 FieldProblemMap problems; |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
240 FieldProblemMap problems; | 252 FieldProblemMap problems; |
241 EXPECT_EQ( | 253 EXPECT_EQ( |
242 PreloadAddressValidator::SUCCESS, | 254 PreloadAddressValidator::SUCCESS, |
243 validator_->Validate(address, NULL, &problems)); | 255 validator_->Validate(address, NULL, &problems)); |
244 | 256 |
245 ASSERT_EQ(1U, problems.size()); | 257 ASSERT_EQ(1U, problems.size()); |
246 EXPECT_EQ(UNKNOWN_VALUE, problems.begin()->second); | 258 EXPECT_EQ(UNKNOWN_VALUE, problems.begin()->second); |
247 EXPECT_EQ(ADMIN_AREA, problems.begin()->first); | 259 EXPECT_EQ(ADMIN_AREA, problems.begin()->first); |
248 } | 260 } |
249 | 261 |
250 TEST_F(PreloadAddressValidatorTest, NoNullSuggestionsCrash) { | |
251 AddressData address; | |
252 address.region_code = "US"; | |
253 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | |
254 validator_->GetSuggestions(address, COUNTRY, 1, NULL)); | |
please use gerrit instead
2014/06/05 22:22:49
Add back this test! Handle NULL in PreloadAddressV
please use gerrit instead
2014/06/09 23:28:17
Done.
| |
255 } | |
256 | |
257 TEST_F(PreloadAddressValidatorTest, SuggestAdminAreaForPostalCode) { | 262 TEST_F(PreloadAddressValidatorTest, SuggestAdminAreaForPostalCode) { |
258 AddressData address; | 263 AddressData address; |
259 address.region_code = "US"; | 264 address.region_code = "US"; |
260 address.postal_code = "90291"; | 265 address.postal_code = "90291"; |
261 | 266 |
262 std::vector<AddressData> suggestions; | 267 std::vector<AddressData> suggestions; |
263 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 268 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
264 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); | 269 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); |
265 ASSERT_EQ(1U, suggestions.size()); | 270 ASSERT_EQ(1U, suggestions.size()); |
266 EXPECT_EQ("CA", suggestions[0].administrative_area); | 271 EXPECT_EQ("CA", suggestions[0].administrative_area); |
267 EXPECT_EQ("90291", suggestions[0].postal_code); | 272 EXPECT_EQ("90291", suggestions[0].postal_code); |
268 } | 273 } |
269 | 274 |
270 TEST_F(PreloadAddressValidatorTest, SuggestLocalityForPostalCodeWithAdminArea) { | 275 TEST_F(PreloadAddressValidatorTest, SuggestLocalityForPostalCodeWithAdminArea) { |
271 validator_->LoadRules("TW", *loaded_); | 276 validator_->LoadRules("TW", *loaded_); |
272 AddressData address; | 277 AddressData address; |
273 address.region_code = "TW"; | 278 address.region_code = "TW"; |
274 address.postal_code = "515"; | 279 address.postal_code = "515"; |
275 address.administrative_area = "Changhua"; | 280 address.administrative_area = "Changhua"; |
281 address.language_code = "zh-Latn"; | |
276 | 282 |
277 std::vector<AddressData> suggestions; | 283 std::vector<AddressData> suggestions; |
278 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 284 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
279 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); | 285 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); |
280 ASSERT_EQ(1U, suggestions.size()); | 286 ASSERT_EQ(1U, suggestions.size()); |
281 EXPECT_EQ("Dacun Township", suggestions[0].locality); | 287 EXPECT_EQ("Dacun Township", suggestions[0].locality); |
282 EXPECT_EQ("Changhua County", suggestions[0].administrative_area); | 288 EXPECT_EQ("Changhua County", suggestions[0].administrative_area); |
283 EXPECT_EQ("515", suggestions[0].postal_code); | 289 EXPECT_EQ("515", suggestions[0].postal_code); |
284 } | 290 } |
285 | 291 |
286 TEST_F(PreloadAddressValidatorTest, SuggestAdminAreaForPostalCodeWithLocality) { | 292 TEST_F(PreloadAddressValidatorTest, SuggestAdminAreaForPostalCodeWithLocality) { |
287 validator_->LoadRules("TW", *loaded_); | 293 validator_->LoadRules("TW", *loaded_); |
288 AddressData address; | 294 AddressData address; |
289 address.region_code = "TW"; | 295 address.region_code = "TW"; |
290 address.postal_code = "515"; | 296 address.postal_code = "515"; |
291 address.locality = "Dacun"; | 297 address.locality = "Dacun"; |
298 address.language_code = "zh-Latn"; | |
292 | 299 |
293 std::vector<AddressData> suggestions; | 300 std::vector<AddressData> suggestions; |
294 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 301 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
295 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); | 302 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); |
296 ASSERT_EQ(1U, suggestions.size()); | 303 ASSERT_EQ(1U, suggestions.size()); |
297 EXPECT_EQ("Dacun Township", suggestions[0].locality); | 304 EXPECT_EQ("Dacun Township", suggestions[0].locality); |
298 EXPECT_EQ("Changhua County", suggestions[0].administrative_area); | 305 EXPECT_EQ("Changhua County", suggestions[0].administrative_area); |
299 EXPECT_EQ("515", suggestions[0].postal_code); | 306 EXPECT_EQ("515", suggestions[0].postal_code); |
300 } | 307 } |
301 | 308 |
302 TEST_F(PreloadAddressValidatorTest, NoSuggestForPostalCodeWithWrongAdminArea) { | 309 TEST_F(PreloadAddressValidatorTest, NoSuggestForPostalCodeWithWrongAdminArea) { |
303 AddressData address; | 310 AddressData address; |
304 address.region_code = "US"; | 311 address.region_code = "US"; |
305 address.postal_code = "90066"; | 312 address.postal_code = "90066"; |
306 address.postal_code = "TX"; | 313 address.postal_code = "TX"; |
307 | 314 |
308 std::vector<AddressData> suggestions; | 315 std::vector<AddressData> suggestions; |
309 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 316 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
310 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); | 317 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); |
311 EXPECT_TRUE(suggestions.empty()); | 318 EXPECT_TRUE(suggestions.empty()); |
312 } | 319 } |
313 | 320 |
314 TEST_F(PreloadAddressValidatorTest, SuggestForLocality) { | 321 TEST_F(PreloadAddressValidatorTest, SuggestForLocality) { |
315 validator_->LoadRules("CN", *loaded_); | 322 validator_->LoadRules("CN", *loaded_); |
316 AddressData address; | 323 AddressData address; |
317 address.region_code = "CN"; | 324 address.region_code = "CN"; |
318 address.locality = "Anqin"; | 325 address.locality = "Anqin"; |
326 address.language_code = "zh-Latn"; | |
319 | 327 |
320 std::vector<AddressData> suggestions; | 328 std::vector<AddressData> suggestions; |
321 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 329 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
322 validator_->GetSuggestions(address, LOCALITY, 10, &suggestions)); | 330 validator_->GetSuggestions(address, LOCALITY, 10, &suggestions)); |
323 ASSERT_EQ(1U, suggestions.size()); | 331 ASSERT_EQ(1U, suggestions.size()); |
324 EXPECT_EQ("Anqing Shi", suggestions[0].locality); | 332 EXPECT_EQ("Anqing Shi", suggestions[0].locality); |
325 EXPECT_EQ("ANHUI SHENG", suggestions[0].administrative_area); | 333 EXPECT_EQ("Anhui Sheng", suggestions[0].administrative_area); |
326 } | 334 } |
327 | 335 |
328 TEST_F(PreloadAddressValidatorTest, SuggestForLocalityAndAdminArea) { | 336 TEST_F(PreloadAddressValidatorTest, SuggestForLocalityAndAdminArea) { |
329 validator_->LoadRules("CN", *loaded_); | 337 validator_->LoadRules("CN", *loaded_); |
330 AddressData address; | 338 AddressData address; |
331 address.region_code = "CN"; | 339 address.region_code = "CN"; |
332 address.locality = "Anqing"; | 340 address.locality = "Anqing"; |
333 address.administrative_area = "Anhui"; | 341 address.administrative_area = "Anhui"; |
342 address.language_code = "zh-Latn"; | |
334 | 343 |
335 std::vector<AddressData> suggestions; | 344 std::vector<AddressData> suggestions; |
336 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 345 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
337 validator_->GetSuggestions(address, LOCALITY, 10, &suggestions)); | 346 validator_->GetSuggestions(address, LOCALITY, 10, &suggestions)); |
338 ASSERT_EQ(1U, suggestions.size()); | 347 ASSERT_EQ(1U, suggestions.size()); |
339 EXPECT_TRUE(suggestions[0].dependent_locality.empty()); | 348 EXPECT_TRUE(suggestions[0].dependent_locality.empty()); |
340 EXPECT_EQ("Anqing Shi", suggestions[0].locality); | 349 EXPECT_EQ("Anqing Shi", suggestions[0].locality); |
341 EXPECT_EQ("ANHUI SHENG", suggestions[0].administrative_area); | 350 EXPECT_EQ("Anhui Sheng", suggestions[0].administrative_area); |
342 } | 351 } |
343 | 352 |
344 TEST_F(PreloadAddressValidatorTest, SuggestForAdminAreaAndLocality) { | 353 TEST_F(PreloadAddressValidatorTest, SuggestForAdminAreaAndLocality) { |
345 validator_->LoadRules("CN", *loaded_); | 354 validator_->LoadRules("CN", *loaded_); |
346 AddressData address; | 355 AddressData address; |
347 address.region_code = "CN"; | 356 address.region_code = "CN"; |
348 address.locality = "Anqing"; | 357 address.locality = "Anqing"; |
349 address.administrative_area = "Anhui"; | 358 address.administrative_area = "Anhui"; |
359 address.language_code = "zh-Latn"; | |
350 | 360 |
351 std::vector<AddressData> suggestions; | 361 std::vector<AddressData> suggestions; |
352 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 362 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
353 validator_->GetSuggestions(address, ADMIN_AREA, 10, &suggestions)); | 363 validator_->GetSuggestions(address, ADMIN_AREA, 10, &suggestions)); |
354 ASSERT_EQ(1U, suggestions.size()); | 364 ASSERT_EQ(1U, suggestions.size()); |
355 EXPECT_TRUE(suggestions[0].dependent_locality.empty()); | 365 EXPECT_TRUE(suggestions[0].dependent_locality.empty()); |
356 EXPECT_TRUE(suggestions[0].locality.empty()); | 366 EXPECT_TRUE(suggestions[0].locality.empty()); |
357 EXPECT_EQ("ANHUI SHENG", suggestions[0].administrative_area); | 367 EXPECT_EQ("Anhui Sheng", suggestions[0].administrative_area); |
358 } | 368 } |
359 | 369 |
360 TEST_F(PreloadAddressValidatorTest, SuggestForDependentLocality) { | 370 TEST_F(PreloadAddressValidatorTest, SuggestForDependentLocality) { |
361 validator_->LoadRules("CN", *loaded_); | 371 validator_->LoadRules("CN", *loaded_); |
362 AddressData address; | 372 AddressData address; |
363 address.region_code = "CN"; | 373 address.region_code = "CN"; |
364 address.dependent_locality = "Zongyang"; | 374 address.dependent_locality = "Zongyang"; |
375 address.language_code = "zh-Latn"; | |
365 | 376 |
366 std::vector<AddressData> suggestions; | 377 std::vector<AddressData> suggestions; |
367 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 378 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
368 validator_->GetSuggestions( | 379 validator_->GetSuggestions( |
369 address, DEPENDENT_LOCALITY, 10, &suggestions)); | 380 address, DEPENDENT_LOCALITY, 10, &suggestions)); |
370 ASSERT_EQ(1U, suggestions.size()); | 381 ASSERT_EQ(1U, suggestions.size()); |
371 EXPECT_EQ("Zongyang Xian", suggestions[0].dependent_locality); | 382 EXPECT_EQ("Zongyang Xian", suggestions[0].dependent_locality); |
372 EXPECT_EQ("Anqing Shi", suggestions[0].locality); | 383 EXPECT_EQ("Anqing Shi", suggestions[0].locality); |
373 EXPECT_EQ("ANHUI SHENG", suggestions[0].administrative_area); | 384 EXPECT_EQ("Anhui Sheng", suggestions[0].administrative_area); |
374 } | 385 } |
375 | 386 |
376 TEST_F(PreloadAddressValidatorTest, | 387 TEST_F(PreloadAddressValidatorTest, |
377 NoSuggestForDependentLocalityWithWrongAdminArea) { | 388 NoSuggestForDependentLocalityWithWrongAdminArea) { |
378 validator_->LoadRules("CN", *loaded_); | 389 validator_->LoadRules("CN", *loaded_); |
379 AddressData address; | 390 AddressData address; |
380 address.region_code = "CN"; | 391 address.region_code = "CN"; |
381 address.dependent_locality = "Zongyang"; | 392 address.dependent_locality = "Zongyang"; |
382 address.administrative_area = "Sichuan Sheng"; | 393 address.administrative_area = "Sichuan Sheng"; |
394 address.language_code = "zh-Latn"; | |
383 | 395 |
384 std::vector<AddressData> suggestions; | 396 std::vector<AddressData> suggestions; |
385 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 397 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
386 validator_->GetSuggestions( | 398 validator_->GetSuggestions( |
387 address, DEPENDENT_LOCALITY, 10, &suggestions)); | 399 address, DEPENDENT_LOCALITY, 10, &suggestions)); |
388 EXPECT_TRUE(suggestions.empty()); | 400 EXPECT_TRUE(suggestions.empty()); |
389 } | 401 } |
390 | 402 |
391 TEST_F(PreloadAddressValidatorTest, EmptySuggestionsOverLimit) { | 403 TEST_F(PreloadAddressValidatorTest, EmptySuggestionsOverLimit) { |
392 AddressData address; | 404 AddressData address; |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
485 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 497 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
486 validator_->GetSuggestions(address, ADMIN_AREA, 1, &suggestions)); | 498 validator_->GetSuggestions(address, ADMIN_AREA, 1, &suggestions)); |
487 ASSERT_EQ(1U, suggestions.size()); | 499 ASSERT_EQ(1U, suggestions.size()); |
488 EXPECT_EQ("강원도", suggestions[0].administrative_area); | 500 EXPECT_EQ("강원도", suggestions[0].administrative_area); |
489 } | 501 } |
490 | 502 |
491 TEST_F(PreloadAddressValidatorTest, | 503 TEST_F(PreloadAddressValidatorTest, |
492 SuggestLatinNameWhenLanguageDiffersAndLatinNameAvailable) { | 504 SuggestLatinNameWhenLanguageDiffersAndLatinNameAvailable) { |
493 validator_->LoadRules("KR", *loaded_); | 505 validator_->LoadRules("KR", *loaded_); |
494 AddressData address; | 506 AddressData address; |
495 address.language_code = "en"; | 507 address.language_code = "ko-Latn"; |
496 address.region_code = "KR"; | 508 address.region_code = "KR"; |
497 address.postal_code = "210-210"; | 509 address.postal_code = "210-210"; |
498 | 510 |
499 std::vector<AddressData> suggestions; | 511 std::vector<AddressData> suggestions; |
500 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 512 EXPECT_EQ(PreloadAddressValidator::SUCCESS, |
501 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); | 513 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); |
502 ASSERT_EQ(1U, suggestions.size()); | 514 ASSERT_EQ(1U, suggestions.size()); |
503 EXPECT_EQ("Gangwon", suggestions[0].administrative_area); | 515 EXPECT_EQ("Gangwon", suggestions[0].administrative_area); |
504 EXPECT_EQ("210-210", suggestions[0].postal_code); | 516 EXPECT_EQ("210-210", suggestions[0].postal_code); |
505 } | 517 } |
506 | 518 |
507 TEST_F(PreloadAddressValidatorTest, SuggestLatinNameWhenUserInputIsLatin) { | |
508 validator_->LoadRules("KR", *loaded_); | |
509 AddressData address; | |
510 address.language_code = "ko"; | |
511 address.region_code = "KR"; | |
512 address.administrative_area = "Gang"; | |
513 | |
514 std::vector<AddressData> suggestions; | |
515 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | |
516 validator_->GetSuggestions(address, ADMIN_AREA, 1, &suggestions)); | |
517 ASSERT_EQ(1U, suggestions.size()); | |
518 EXPECT_EQ("Gangwon", suggestions[0].administrative_area); | |
519 } | |
520 | |
521 TEST_F(PreloadAddressValidatorTest, NoSuggestionsForEmptyAddress) { | 519 TEST_F(PreloadAddressValidatorTest, NoSuggestionsForEmptyAddress) { |
522 AddressData address; | 520 AddressData address; |
523 address.region_code = "US"; | 521 address.region_code = "US"; |
524 | 522 |
525 std::vector<AddressData> suggestions; | 523 std::vector<AddressData> suggestions; |
526 EXPECT_EQ( | 524 EXPECT_EQ( |
525 PreloadAddressValidator::SUCCESS, | |
526 validator_->GetSuggestions(address, POSTAL_CODE, 999, &suggestions)); | |
527 EXPECT_TRUE(suggestions.empty()); | |
528 } | |
529 | |
530 TEST_F(PreloadAddressValidatorTest, SuggestionIncludesCountry) { | |
531 AddressData address; | |
532 address.region_code = "US"; | |
533 address.postal_code = "90291"; | |
534 | |
535 std::vector<AddressData> suggestions; | |
536 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | |
537 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); | |
538 ASSERT_EQ(1U, suggestions.size()); | |
539 EXPECT_EQ("US", suggestions[0].region_code); | |
540 } | |
541 | |
542 TEST_F(PreloadAddressValidatorTest, InvalidPostalCodeNoSuggestions) { | |
543 AddressData address; | |
544 address.region_code = "US"; | |
545 address.postal_code = "0"; | |
546 | |
547 std::vector<AddressData> suggestions; | |
548 EXPECT_EQ( | |
527 PreloadAddressValidator::SUCCESS, | 549 PreloadAddressValidator::SUCCESS, |
528 validator_->GetSuggestions(address, POSTAL_CODE, 999, &suggestions)); | 550 validator_->GetSuggestions(address, POSTAL_CODE, 999, &suggestions)); |
529 EXPECT_TRUE(suggestions.empty()); | 551 EXPECT_TRUE(suggestions.empty()); |
530 } | 552 } |
531 | 553 |
532 TEST_F(PreloadAddressValidatorTest, SuggestionIncludesCountry) { | 554 TEST_F(PreloadAddressValidatorTest, MismatchedPostalCodeNoSuggestions) { |
533 AddressData address; | 555 AddressData address; |
534 address.region_code = "US"; | 556 address.region_code = "US"; |
557 address.administrative_area = "TX"; | |
535 address.postal_code = "90291"; | 558 address.postal_code = "90291"; |
536 | 559 |
537 std::vector<AddressData> suggestions; | 560 std::vector<AddressData> suggestions; |
538 EXPECT_EQ(PreloadAddressValidator::SUCCESS, | 561 EXPECT_EQ( |
539 validator_->GetSuggestions(address, POSTAL_CODE, 1, &suggestions)); | 562 PreloadAddressValidator::SUCCESS, |
540 ASSERT_EQ(1U, suggestions.size()); | 563 validator_->GetSuggestions(address, POSTAL_CODE, 999, &suggestions)); |
541 EXPECT_EQ("US", suggestions[0].region_code); | 564 EXPECT_TRUE(suggestions.empty()); |
542 } | 565 } |
543 | 566 |
please use gerrit instead
2014/06/05 22:22:49
Add a test SuggestionsAreCleared!
please use gerrit instead
2014/06/09 23:28:17
Done.
| |
544 TEST_F(PreloadAddressValidatorTest, | 567 TEST_F(PreloadAddressValidatorTest, |
545 SuggestOnlyForAdministrativeAreasAndPostalCode) { | 568 SuggestOnlyForAdministrativeAreasAndPostalCode) { |
546 AddressData address; | 569 AddressData address; |
547 address.region_code = "US"; | 570 address.region_code = "US"; |
548 address.administrative_area = "CA"; | 571 address.administrative_area = "CA"; |
549 address.locality = "Los Angeles"; | 572 address.locality = "Los Angeles"; |
550 address.dependent_locality = "Venice"; | 573 address.dependent_locality = "Venice"; |
551 address.postal_code = "90291"; | 574 address.postal_code = "90291"; |
552 address.sorting_code = "123"; | 575 address.sorting_code = "123"; |
553 address.address_line.push_back("123 Main St"); | 576 address.address_line.push_back("123 Main St"); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
603 TEST_F(PreloadAddressValidatorTest, CanonicalizeJpAdminAreaLatinName) { | 626 TEST_F(PreloadAddressValidatorTest, CanonicalizeJpAdminAreaLatinName) { |
604 validator_->LoadRules("JP", *loaded_); | 627 validator_->LoadRules("JP", *loaded_); |
605 AddressData address; | 628 AddressData address; |
606 address.region_code = "JP"; | 629 address.region_code = "JP"; |
607 address.administrative_area = "tOKYo"; | 630 address.administrative_area = "tOKYo"; |
608 EXPECT_TRUE(validator_->CanonicalizeAdministrativeArea(&address)); | 631 EXPECT_TRUE(validator_->CanonicalizeAdministrativeArea(&address)); |
609 EXPECT_EQ("TOKYO", address.administrative_area); | 632 EXPECT_EQ("TOKYO", address.administrative_area); |
610 } | 633 } |
611 | 634 |
612 } // namespace | 635 } // namespace |
OLD | NEW |