phony 1.8.5 → 1.8.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/phony/countries.rb +24 -14
- data/spec/lib/phony/countries_spec.rb +5 -0
- metadata +2 -2
data/lib/phony/countries.rb
CHANGED
@@ -295,17 +295,22 @@ Phony.define do
|
|
295
295
|
country '248', todo # Seychelles
|
296
296
|
country '249', fixed(2) >> split(3,4) # Sudan
|
297
297
|
|
298
|
-
|
299
|
-
|
298
|
+
# Rwanda
|
299
|
+
# http://en.wikipedia.org/wiki/Telephone_numbers_in_Rwanda
|
300
300
|
country '250',
|
301
|
-
|
302
|
-
|
303
|
-
|
301
|
+
one_of('25') >> split(7) | # Geographic, fixed
|
302
|
+
match(/^(7[238])/) >> split(7) | # Non-geographic, mobile
|
303
|
+
one_of('06') >> split(6) # Satellite
|
304
304
|
|
305
305
|
country '251', todo # Ethiopia
|
306
306
|
country '252', todo # Somali Democratic Republic
|
307
307
|
country '253', todo # Djibouti
|
308
|
-
|
308
|
+
|
309
|
+
# Kenya
|
310
|
+
# http://en.wikipedia.org/wiki/Telephone_numbers_in_Kenya
|
311
|
+
country '254',
|
312
|
+
match(/^(7\d\d)/) >> split(6) | # mobile
|
313
|
+
fixed(2) >> split(7) # landline
|
309
314
|
|
310
315
|
# Tanzania.
|
311
316
|
#
|
@@ -324,7 +329,12 @@ Phony.define do
|
|
324
329
|
country '258', todo # Mozambique
|
325
330
|
country '259', todo # -
|
326
331
|
|
327
|
-
|
332
|
+
# Zambia
|
333
|
+
# http://en.wikipedia.org/wiki/Telephone_numbers_in_Zambia
|
334
|
+
country '260',
|
335
|
+
match(/^(9[567])/) >> split(7) | # Mobile
|
336
|
+
match(/^(21[1-8])/) >> split(6) # Geographic
|
337
|
+
|
328
338
|
country '261', todo # Madagascar
|
329
339
|
country '262', todo # Reunion / Mayotte (new)
|
330
340
|
country '263', todo # Zimbabwe
|
@@ -360,8 +370,8 @@ Phony.define do
|
|
360
370
|
# Gibraltar
|
361
371
|
country '350',
|
362
372
|
match(/^(2[012]\d)\d+$/) >> split(5) | # fixed
|
363
|
-
match(/^([56]\d)\d+$/)
|
364
|
-
match(/^(8\d\d\d)$/)
|
373
|
+
match(/^([56]\d)\d+$/) >> split(6) | # mobile
|
374
|
+
match(/^(8\d\d\d)$/) >> split(0)
|
365
375
|
|
366
376
|
# Portugal.
|
367
377
|
#
|
@@ -374,11 +384,11 @@ Phony.define do
|
|
374
384
|
# Luxembourg
|
375
385
|
#
|
376
386
|
country '352',
|
377
|
-
one_of('4')
|
378
|
-
match(/^(2[467]\d{2})$/)
|
379
|
-
match(/^(6\d[18])\d+$/)
|
380
|
-
match(/^(60\d{2})\d{8}$/)
|
381
|
-
match(/^([2-9]\d)/)
|
387
|
+
one_of('4') >> split(2,2,2) | # Luxembourg City
|
388
|
+
match(/^(2[467]\d{2})$/) >> split(2,2,2) | # 4-digit NDC
|
389
|
+
match(/^(6\d[18])\d+$/) >> split(3,3) | # mobile
|
390
|
+
match(/^(60\d{2})\d{8}$/) >> split(2,2,2,2) | # mobile machine to machine
|
391
|
+
match(/^([2-9]\d)/) >> split(2,2,2) # 2-digit NDC
|
382
392
|
|
383
393
|
# country '353' # Republic of Ireland, see special file.
|
384
394
|
|
@@ -165,6 +165,7 @@ describe 'country descriptions' do
|
|
165
165
|
describe 'Kenya' do
|
166
166
|
it_splits '254201234567', ['254', '20', '1234567'] # Nairobi
|
167
167
|
it_splits '254111234567', ['254', '11', '1234567'] # Mombasa
|
168
|
+
it_splits '254723100220', ['254', '723', '100220'] # Mombasa
|
168
169
|
end
|
169
170
|
describe 'Lithuania' do
|
170
171
|
it_splits '37070012123', ['370', '700', '12', '123'] # Service
|
@@ -343,6 +344,10 @@ describe 'country descriptions' do
|
|
343
344
|
it { Phony.split('8499612345').should == ['84', '996', '12345'] } # GTel
|
344
345
|
it { Phony.split('8441234567').should == ['84', '4', '1234567'] } # Hanoi
|
345
346
|
end
|
347
|
+
describe 'Zambia' do
|
348
|
+
it_splits '260977640895', ['260', '97', '7640895'] # mobile
|
349
|
+
it_splits '260211229049', ['260', '211', '229049'] # fixed
|
350
|
+
end
|
346
351
|
describe 'New Zealand' do
|
347
352
|
it { Phony.split('6491234567').should == ['64', '9', '123', '4567'] }
|
348
353
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: phony
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.8.
|
4
|
+
version: 1.8.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-02-05 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: ! 'Fast international phone number (E164 standard) normalizing, splitting
|
15
15
|
and formatting. Lots of formatting options: International (+.., 00..), national
|