OLD | NEW |
| (Empty) |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #include "components/autofill/core/browser/address_rewriter.h" | |
6 | |
7 #include "base/strings/utf_string_conversions.h" | |
8 #include "testing/gtest/include/gtest/gtest.h" | |
9 | |
10 using base::UTF8ToUTF16; | |
11 using autofill::AddressRewriter; | |
12 | |
13 TEST(AddressRewriterTest, InvalidCountryCode) { | |
14 AddressRewriter ad = AddressRewriter::ForCountryCode(UTF8ToUTF16("ZZZZ")); | |
15 const base::string16 kSomeRandomText = UTF8ToUTF16("some random text"); | |
16 const base::string16 kOtherRandomText = UTF8ToUTF16("other random text"); | |
17 | |
18 EXPECT_EQ(ad.Rewrite(kSomeRandomText), ad.Rewrite(kSomeRandomText)); | |
19 EXPECT_EQ(ad.Rewrite(kOtherRandomText), ad.Rewrite(kOtherRandomText)); | |
20 | |
21 EXPECT_NE(ad.Rewrite(kSomeRandomText), ad.Rewrite(kOtherRandomText)); | |
22 } | |
23 | |
24 TEST(AddressRewriterTest, AD) { | |
25 AddressRewriter ad = AddressRewriter::ForCountryCode(UTF8ToUTF16("ad")); | |
26 EXPECT_EQ(ad.Rewrite(UTF8ToUTF16("parroquia de andorra la vella")), | |
27 ad.Rewrite(UTF8ToUTF16("andorra la vella"))); | |
28 EXPECT_EQ(ad.Rewrite(UTF8ToUTF16("principal de andorra")), | |
29 ad.Rewrite(UTF8ToUTF16("an"))); | |
30 } | |
31 | |
32 TEST(AddressRewriterTest, AR) { | |
33 AddressRewriter ar = AddressRewriter::ForCountryCode(UTF8ToUTF16("ar")); | |
34 EXPECT_EQ(ar.Rewrite(UTF8ToUTF16( | |
35 "tierra del fuego antartida e islas del atlantico sur")), | |
36 ar.Rewrite(UTF8ToUTF16("tierra del fuego"))); | |
37 EXPECT_EQ(ar.Rewrite(UTF8ToUTF16("ciudad autonoma de buenos aires")), | |
38 ar.Rewrite(UTF8ToUTF16("capital federal"))); | |
39 } | |
40 | |
41 TEST(AddressRewriterTest, AU) { | |
42 AddressRewriter au = AddressRewriter::ForCountryCode(UTF8ToUTF16("au")); | |
43 EXPECT_EQ(au.Rewrite(UTF8ToUTF16("australian capital territory")), | |
44 au.Rewrite(UTF8ToUTF16("act"))); | |
45 EXPECT_EQ(au.Rewrite(UTF8ToUTF16("jervis bay territory")), | |
46 au.Rewrite(UTF8ToUTF16("jbt"))); | |
47 } | |
48 | |
49 TEST(AddressRewriterTest, BE) { | |
50 AddressRewriter be = AddressRewriter::ForCountryCode(UTF8ToUTF16("be")); | |
51 EXPECT_EQ(be.Rewrite(UTF8ToUTF16("brussels hoofdstedelijk gewest")), | |
52 be.Rewrite(UTF8ToUTF16("region de bruxelles capitale"))); | |
53 EXPECT_EQ(be.Rewrite(UTF8ToUTF16("arrondissement administratif de foo")), | |
54 be.Rewrite(UTF8ToUTF16("foo"))); | |
55 } | |
56 | |
57 TEST(AddressRewriterTest, BR) { | |
58 AddressRewriter br = AddressRewriter::ForCountryCode(UTF8ToUTF16("br")); | |
59 EXPECT_EQ(br.Rewrite(UTF8ToUTF16("rio grande do norte")), | |
60 br.Rewrite(UTF8ToUTF16("rn"))); | |
61 } | |
62 | |
63 TEST(AddressRewriterTest, CA) { | |
64 AddressRewriter ca = AddressRewriter::ForCountryCode(UTF8ToUTF16("ca")); | |
65 EXPECT_EQ(ca.Rewrite(UTF8ToUTF16("qc")), ca.Rewrite(UTF8ToUTF16("quebec"))); | |
66 EXPECT_EQ(ca.Rewrite(UTF8ToUTF16("prince edward island")), | |
67 ca.Rewrite(UTF8ToUTF16("pei"))); | |
68 EXPECT_EQ(ca.Rewrite(UTF8ToUTF16("prince edward island")), | |
69 ca.Rewrite(UTF8ToUTF16("ile du prince edouard"))); | |
70 EXPECT_EQ(ca.Rewrite(UTF8ToUTF16("st")), ca.Rewrite(UTF8ToUTF16("street"))); | |
71 EXPECT_EQ(ca.Rewrite(UTF8ToUTF16("sainte")), | |
72 ca.Rewrite(UTF8ToUTF16("saint"))); | |
73 } | |
74 | |
75 TEST(AddressRewriterTest, CH) { | |
76 AddressRewriter ch = AddressRewriter::ForCountryCode(UTF8ToUTF16("ch")); | |
77 EXPECT_EQ(ch.Rewrite(UTF8ToUTF16("appenzell rhodes exterieures")), | |
78 ch.Rewrite(UTF8ToUTF16("appenzell ausserrhoden"))); | |
79 EXPECT_EQ(ch.Rewrite(UTF8ToUTF16("prettigovia davos")), | |
80 ch.Rewrite(UTF8ToUTF16("prattigau davos"))); | |
81 } | |
82 | |
83 TEST(AddressRewriterTest, CL) { | |
84 AddressRewriter cl = AddressRewriter::ForCountryCode(UTF8ToUTF16("cl")); | |
85 EXPECT_EQ( | |
86 cl.Rewrite(UTF8ToUTF16("aisen del general carlos ibanez del campo")), | |
87 cl.Rewrite(UTF8ToUTF16("xi"))); | |
88 EXPECT_EQ(cl.Rewrite(UTF8ToUTF16("metropolitana de santiago de chile")), | |
89 cl.Rewrite(UTF8ToUTF16("metropolitana de santiago"))); | |
90 } | |
91 | |
92 TEST(AddressRewriterTest, CO) { | |
93 AddressRewriter co = AddressRewriter::ForCountryCode(UTF8ToUTF16("co")); | |
94 EXPECT_EQ(co.Rewrite(UTF8ToUTF16("columbia")), | |
95 co.Rewrite(UTF8ToUTF16("colombia"))); | |
96 } | |
97 | |
98 TEST(AddressRewriterTest, DE) { | |
99 AddressRewriter de = AddressRewriter::ForCountryCode(UTF8ToUTF16("de")); | |
100 EXPECT_EQ(de.Rewrite(UTF8ToUTF16("federal republic of germany")), | |
101 de.Rewrite(UTF8ToUTF16("deutschland"))); | |
102 EXPECT_EQ(de.Rewrite(UTF8ToUTF16("germany")), | |
103 de.Rewrite(UTF8ToUTF16("bundesrepublik deutschland"))); | |
104 } | |
105 | |
106 TEST(AddressRewriterTest, DK) { | |
107 AddressRewriter dk = AddressRewriter::ForCountryCode(UTF8ToUTF16("dk")); | |
108 EXPECT_EQ(dk.Rewrite(UTF8ToUTF16("denmark")), | |
109 dk.Rewrite(UTF8ToUTF16("danmark"))); | |
110 } | |
111 | |
112 TEST(AddressRewriterTest, ES) { | |
113 AddressRewriter es = AddressRewriter::ForCountryCode(UTF8ToUTF16("es")); | |
114 EXPECT_EQ(es.Rewrite(UTF8ToUTF16("balearic islands")), | |
115 es.Rewrite(UTF8ToUTF16("islas baleares"))); | |
116 } | |
117 | |
118 TEST(AddressRewriterTest, FR) { | |
119 AddressRewriter fr = AddressRewriter::ForCountryCode(UTF8ToUTF16("fr")); | |
120 EXPECT_EQ(fr.Rewrite(UTF8ToUTF16("quatorzieme")), | |
121 fr.Rewrite(UTF8ToUTF16("14"))); | |
122 } | |
123 | |
124 TEST(AddressRewriterTest, GB) { | |
125 AddressRewriter gb = AddressRewriter::ForCountryCode(UTF8ToUTF16("gb")); | |
126 EXPECT_EQ(gb.Rewrite(UTF8ToUTF16("north east lincolnshire")), | |
127 gb.Rewrite(UTF8ToUTF16("gb-nel"))); | |
128 | |
129 EXPECT_NE(gb.Rewrite(UTF8ToUTF16("norfolk")), | |
130 gb.Rewrite(UTF8ToUTF16("suffolk"))); | |
131 } | |
132 | |
133 TEST(AddressRewriterTest, GR) { | |
134 AddressRewriter gr = AddressRewriter::ForCountryCode(UTF8ToUTF16("gr")); | |
135 EXPECT_EQ(gr.Rewrite(UTF8ToUTF16("aitolia kai akarnania")), | |
136 gr.Rewrite(UTF8ToUTF16("aitoloakarnania"))); | |
137 } | |
138 | |
139 TEST(AddressRewriterTest, HK) { | |
140 AddressRewriter hk = AddressRewriter::ForCountryCode(UTF8ToUTF16("hk")); | |
141 EXPECT_EQ(hk.Rewrite(UTF8ToUTF16("hong kong")), | |
142 hk.Rewrite(UTF8ToUTF16("hk"))); | |
143 } | |
144 | |
145 TEST(AddressRewriterTest, ID) { | |
146 AddressRewriter id = AddressRewriter::ForCountryCode(UTF8ToUTF16("id")); | |
147 EXPECT_EQ(id.Rewrite(UTF8ToUTF16("nanggroe aceh darussalam")), | |
148 id.Rewrite(UTF8ToUTF16("aceh"))); | |
149 } | |
150 | |
151 TEST(AddressRewriterTest, IE) { | |
152 AddressRewriter ie = AddressRewriter::ForCountryCode(UTF8ToUTF16("ie")); | |
153 EXPECT_EQ(ie.Rewrite(UTF8ToUTF16("avenue")), ie.Rewrite(UTF8ToUTF16("ave"))); | |
154 } | |
155 | |
156 TEST(AddressRewriterTest, IN) { | |
157 AddressRewriter in = AddressRewriter::ForCountryCode(UTF8ToUTF16("in")); | |
158 EXPECT_EQ(in.Rewrite(UTF8ToUTF16("thiruvananthapuram")), | |
159 in.Rewrite(UTF8ToUTF16("tiruvananthapuram"))); | |
160 } | |
161 | |
162 TEST(AddressRewriterTest, IT) { | |
163 AddressRewriter it = AddressRewriter::ForCountryCode(UTF8ToUTF16("it")); | |
164 EXPECT_EQ(it.Rewrite(UTF8ToUTF16("trentino alto adige")), | |
165 it.Rewrite(UTF8ToUTF16("trentino sudtirol"))); | |
166 } | |
167 | |
168 TEST(AddressRewriterTest, LU) { | |
169 AddressRewriter lu = AddressRewriter::ForCountryCode(UTF8ToUTF16("lu")); | |
170 EXPECT_EQ(lu.Rewrite(UTF8ToUTF16("esplanade")), | |
171 lu.Rewrite(UTF8ToUTF16("espl"))); | |
172 } | |
173 | |
174 TEST(AddressRewriterTest, MX) { | |
175 AddressRewriter mx = AddressRewriter::ForCountryCode(UTF8ToUTF16("mx")); | |
176 EXPECT_EQ(mx.Rewrite(UTF8ToUTF16("estado de mexico")), | |
177 mx.Rewrite(UTF8ToUTF16("mexico"))); | |
178 } | |
179 | |
180 TEST(AddressRewriterTest, MY) { | |
181 AddressRewriter my = AddressRewriter::ForCountryCode(UTF8ToUTF16("my")); | |
182 EXPECT_EQ(my.Rewrite(UTF8ToUTF16("malaysia")), my.Rewrite(UTF8ToUTF16("my"))); | |
183 } | |
184 | |
185 TEST(AddressRewriterTest, NL) { | |
186 AddressRewriter nl = AddressRewriter::ForCountryCode(UTF8ToUTF16("nl")); | |
187 EXPECT_EQ(nl.Rewrite(UTF8ToUTF16("nordholland")), | |
188 nl.Rewrite(UTF8ToUTF16("noord holland"))); | |
189 } | |
190 | |
191 TEST(AddressRewriterTest, NZ) { | |
192 AddressRewriter nz = AddressRewriter::ForCountryCode(UTF8ToUTF16("nz")); | |
193 EXPECT_EQ(nz.Rewrite(UTF8ToUTF16("oceanbeach")), | |
194 nz.Rewrite(UTF8ToUTF16("ocean beach"))); | |
195 } | |
196 | |
197 TEST(AddressRewriterTest, PE) { | |
198 AddressRewriter pe = AddressRewriter::ForCountryCode(UTF8ToUTF16("pe")); | |
199 EXPECT_EQ(pe.Rewrite(UTF8ToUTF16("avenida")), pe.Rewrite(UTF8ToUTF16("av"))); | |
200 } | |
201 | |
202 TEST(AddressRewriterTest, PH) { | |
203 AddressRewriter ph = AddressRewriter::ForCountryCode(UTF8ToUTF16("ph")); | |
204 EXPECT_EQ(ph.Rewrite(UTF8ToUTF16("philippines")), | |
205 ph.Rewrite(UTF8ToUTF16("ph"))); | |
206 } | |
207 | |
208 TEST(AddressRewriterTest, PL) { | |
209 AddressRewriter pl = AddressRewriter::ForCountryCode(UTF8ToUTF16("pl")); | |
210 EXPECT_EQ(pl.Rewrite(UTF8ToUTF16("warmian masurian")), | |
211 pl.Rewrite(UTF8ToUTF16("warminsko"))); | |
212 } | |
213 | |
214 TEST(AddressRewriterTest, PR) { | |
215 AddressRewriter pr = AddressRewriter::ForCountryCode(UTF8ToUTF16("pr")); | |
216 EXPECT_EQ(pr.Rewrite(UTF8ToUTF16("san juan antiguo")), | |
217 pr.Rewrite(UTF8ToUTF16("old san juan"))); | |
218 } | |
219 | |
220 TEST(AddressRewriterTest, PT) { | |
221 AddressRewriter pt = AddressRewriter::ForCountryCode(UTF8ToUTF16("pt")); | |
222 EXPECT_EQ(pt.Rewrite(UTF8ToUTF16("doctor")), | |
223 pt.Rewrite(UTF8ToUTF16("doutor"))); | |
224 } | |
225 | |
226 TEST(AddressRewriterTest, RO) { | |
227 AddressRewriter ro = AddressRewriter::ForCountryCode(UTF8ToUTF16("ro")); | |
228 EXPECT_EQ(ro.Rewrite(UTF8ToUTF16("romania")), ro.Rewrite(UTF8ToUTF16("ro"))); | |
229 } | |
230 | |
231 TEST(AddressRewriterTest, RU) { | |
232 AddressRewriter ru = AddressRewriter::ForCountryCode(UTF8ToUTF16("ru")); | |
233 // TODO(rogerm): UTF8 matching isnt' working as expected. Fix it! | |
234 EXPECT_NE(ru.Rewrite(UTF8ToUTF16("россия")), | |
235 ru.Rewrite(UTF8ToUTF16("russia"))); | |
236 } | |
237 | |
238 TEST(AddressRewriterTest, SE) { | |
239 AddressRewriter se = AddressRewriter::ForCountryCode(UTF8ToUTF16("se")); | |
240 EXPECT_EQ(se.Rewrite(UTF8ToUTF16("oestergoetland")), | |
241 se.Rewrite(UTF8ToUTF16("vastergoetland"))); | |
242 } | |
243 | |
244 TEST(AddressRewriterTest, TH) { | |
245 AddressRewriter th = AddressRewriter::ForCountryCode(UTF8ToUTF16("th")); | |
246 // TODO(rogerm): UTF8 matching isnt' working as expected. Fix it! | |
247 EXPECT_NE(th.Rewrite(UTF8ToUTF16("ประเทศไทย")), | |
248 th.Rewrite(UTF8ToUTF16("thailand"))); | |
249 } | |
250 | |
251 TEST(AddressRewriterTest, TR) { | |
252 AddressRewriter tr = AddressRewriter::ForCountryCode(UTF8ToUTF16("tr")); | |
253 EXPECT_EQ(tr.Rewrite(UTF8ToUTF16("turkiye")), | |
254 tr.Rewrite(UTF8ToUTF16("turkey"))); | |
255 } | |
256 | |
257 TEST(AddressRewriterTest, US) { | |
258 AddressRewriter us = AddressRewriter::ForCountryCode(UTF8ToUTF16("us")); | |
259 EXPECT_EQ(us.Rewrite(UTF8ToUTF16("ca")), | |
260 us.Rewrite(UTF8ToUTF16("california"))); | |
261 EXPECT_EQ(us.Rewrite(UTF8ToUTF16("west virginia")), | |
262 us.Rewrite(UTF8ToUTF16("wv"))); | |
263 EXPECT_EQ(us.Rewrite(UTF8ToUTF16("virginia")), us.Rewrite(UTF8ToUTF16("va"))); | |
264 EXPECT_EQ(us.Rewrite(UTF8ToUTF16("washington d c")), | |
265 us.Rewrite(UTF8ToUTF16("washington dc"))); | |
266 | |
267 // Similar names, but not the same. | |
268 EXPECT_NE(us.Rewrite(UTF8ToUTF16("west virginia")), | |
269 us.Rewrite(UTF8ToUTF16("virginia"))); | |
270 EXPECT_NE(us.Rewrite(UTF8ToUTF16("washington")), | |
271 us.Rewrite(UTF8ToUTF16("washington dc"))); | |
272 } | |
273 | |
274 TEST(AddressRewriterTest, VN) { | |
275 AddressRewriter vn = AddressRewriter::ForCountryCode(UTF8ToUTF16("vn")); | |
276 EXPECT_EQ(vn.Rewrite(UTF8ToUTF16("viet nam")), | |
277 vn.Rewrite(UTF8ToUTF16("vietnam"))); | |
278 } | |
279 | |
280 TEST(AddressRewriterTest, ZA) { | |
281 AddressRewriter za = AddressRewriter::ForCountryCode(UTF8ToUTF16("za")); | |
282 EXPECT_EQ(za.Rewrite(UTF8ToUTF16("republic of south africa")), | |
283 za.Rewrite(UTF8ToUTF16("south africa"))); | |
284 } | |
OLD | NEW |