phony 2.10.5 → 2.11.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/phony/country_codes.rb +2 -1
- data/spec/functional/format_spec.rb +47 -44
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f33428121d0615a5ce85afb3ab4b5d84345632bd
|
4
|
+
data.tar.gz: c8eb442ccd1c658d6728a7b1a2c1dc3fff8e4b7b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f7115867a3578cf7c9e0b90d2d580bc2cfa4cdd04ae4ad8d21fa855033b4da7d1d89744c23079dcc3b01a9405a547e1720fc7907bcd37ef1fa8f683719f72fbb
|
7
|
+
data.tar.gz: 5fb4d549e393a87078d74157ac11ad4d234a4040bf817954723e81f609f07f0b9421575ccec084eb7b7a0f1c1b32eddac57eff412c260ecf1463b03ee0ed1d25
|
data/lib/phony/country_codes.rb
CHANGED
@@ -107,6 +107,7 @@ module Phony
|
|
107
107
|
else
|
108
108
|
format_local(local_space, parts) unless parts.empty?
|
109
109
|
end
|
110
|
+
|
110
111
|
format_cc_ndc format, space, cc, trunk, ndc, local
|
111
112
|
|
112
113
|
# cc_ndc = cc_ndc.slice 0...cc_ndc.rindex(space.to_s) if parts.empty?
|
@@ -128,7 +129,7 @@ module Phony
|
|
128
129
|
trunk = trunk % space if trunk && trunk.size > 1
|
129
130
|
ndc && !ndc.empty? ?
|
130
131
|
@national_format % [trunk, ndc, space, local] :
|
131
|
-
@national_format % [trunk, nil, nil,
|
132
|
+
@national_format % [trunk, nil, nil, local]
|
132
133
|
when :local
|
133
134
|
local
|
134
135
|
end
|
@@ -34,152 +34,155 @@ describe 'Phony#format' do
|
|
34
34
|
end
|
35
35
|
end
|
36
36
|
describe 'default' do
|
37
|
-
it '
|
37
|
+
it 'formats Swiss numbers' do
|
38
38
|
Phony.format('41443643532').should eql '+41 44 364 35 32'
|
39
39
|
end
|
40
|
-
it '
|
40
|
+
it 'formats Swiss national numbers' do
|
41
41
|
Phony.format('41443643532', :format => :national).should eql '044 364 35 32'
|
42
42
|
end
|
43
43
|
# TODO
|
44
44
|
#
|
45
|
-
it '
|
45
|
+
it 'formats Swiss service numbers' do
|
46
46
|
Phony.format('41800112233').should eql '+41 800 112 233'
|
47
47
|
end
|
48
|
-
it '
|
48
|
+
it 'formats Austrian numbers' do
|
49
49
|
Phony.format('43198110').should eql '+43 1 98110'
|
50
50
|
end
|
51
|
-
it '
|
51
|
+
it 'formats Danish national numbers' do
|
52
|
+
Phony.format('4540506070', format: :national).should eql '40 50 60 70'
|
53
|
+
end
|
54
|
+
it 'formats American numbers' do
|
52
55
|
Phony.format('18705551122').should eql '+1 870 555 1122'
|
53
56
|
end
|
54
|
-
it '
|
57
|
+
it 'formats New Zealand 021 6-digit mobile numbers' do
|
55
58
|
Phony.format('6421123456').should eql '+64 21 123 456'
|
56
59
|
end
|
57
|
-
it '
|
60
|
+
it 'formats New Zealand 021 7-digit mobile numbers' do
|
58
61
|
Phony.format('64211234567').should eql '+64 21 123 4567'
|
59
62
|
end
|
60
|
-
it '
|
63
|
+
it 'formats New Zealand 021 8-digit mobile numbers' do
|
61
64
|
Phony.format('642112345678').should eql '+64 21 12 345 678'
|
62
65
|
end
|
63
|
-
it '
|
66
|
+
it 'formats New Zealand landline numbers' do
|
64
67
|
Phony.format('6493791234').should eql '+64 9 379 1234'
|
65
68
|
end
|
66
|
-
it '
|
69
|
+
it 'formats Indian numbers' do
|
67
70
|
Phony.format('914433993939').should eql '+91 44 339 93 939'
|
68
71
|
end
|
69
|
-
it '
|
72
|
+
it 'formats Russian numbers' do
|
70
73
|
Phony.format(Phony.normalize('+370 800 12345'), :format => :international).should eql '+370 800 12 345'
|
71
74
|
end
|
72
|
-
it '
|
75
|
+
it 'formats Russian numbers' do
|
73
76
|
Phony.format(Phony.normalize('+7 812 123 4567'), :format => :international).should eql '+7 812 123-45-67'
|
74
77
|
end
|
75
|
-
it '
|
78
|
+
it 'formats Russian numbers' do
|
76
79
|
Phony.format(Phony.normalize('+370 800 12345'), :format => :national).should eql '8800 12 345'
|
77
80
|
end
|
78
|
-
it '
|
81
|
+
it 'formats Russian numbers' do
|
79
82
|
Phony.format(Phony.normalize('+7 812 123 4567'), :format => :national).should eql '8812 123-45-67'
|
80
83
|
end
|
81
84
|
end
|
82
85
|
describe 'international' do
|
83
|
-
it '
|
86
|
+
it 'formats north american numbers' do
|
84
87
|
Phony.format('18091231234', :format => :international).should eql '+1 809 123 1234'
|
85
88
|
end
|
86
|
-
it '
|
89
|
+
it 'formats austrian numbers' do
|
87
90
|
Phony.format('43198110', :format => :international).should eql '+43 1 98110'
|
88
91
|
end
|
89
|
-
it '
|
92
|
+
it 'formats austrian numbers' do
|
90
93
|
Phony.format('43198110', :format => :international_absolute).should eql '+43 1 98110'
|
91
94
|
end
|
92
|
-
it '
|
95
|
+
it 'formats french numbers' do
|
93
96
|
Phony.format('33142278186', :format => :+).should eql '+33 1 42 27 81 86'
|
94
97
|
end
|
95
|
-
it '
|
98
|
+
it 'formats austrian numbers' do
|
96
99
|
Phony.format('43198110', :format => :international_relative).should eql '0043 1 98110'
|
97
100
|
end
|
98
|
-
it '
|
101
|
+
it 'formats liechtensteiner numbers' do
|
99
102
|
Phony.format('4233841148', :format => :international_relative).should eql '00423 384 11 48'
|
100
103
|
end
|
101
104
|
context 'with no spaces' do
|
102
|
-
it '
|
105
|
+
it 'formats north american numbers' do
|
103
106
|
Phony.format('18091231234', :format => :international, :spaces => '').should eql '+18091231234'
|
104
107
|
end
|
105
|
-
it '
|
108
|
+
it 'formats austrian numbers' do
|
106
109
|
Phony.format('43198110', :format => :international, :spaces => '').should eql '+43198110'
|
107
110
|
end
|
108
|
-
it '
|
111
|
+
it 'formats austrian numbers' do
|
109
112
|
Phony.format('43198110', :format => :international_absolute, :spaces => '').should eql '+43198110'
|
110
113
|
end
|
111
|
-
it '
|
114
|
+
it 'formats french numbers' do
|
112
115
|
Phony.format('33142278186', :format => :+, :spaces => '').should eql '+33142278186'
|
113
116
|
end
|
114
|
-
it '
|
117
|
+
it 'formats austrian numbers' do
|
115
118
|
Phony.format('43198110', :format => :international_relative, :spaces => '').should eql '0043198110'
|
116
119
|
end
|
117
|
-
it '
|
120
|
+
it 'formats liechtensteiner numbers' do
|
118
121
|
Phony.format('4233841148', :format => :international_relative, :spaces => '').should eql '004233841148'
|
119
122
|
end
|
120
123
|
end
|
121
124
|
context 'with special spaces' do
|
122
|
-
it '
|
125
|
+
it 'formats swiss numbers' do
|
123
126
|
Phony.format('41443643532', :format => :international).should eql '+41 44 364 35 32'
|
124
127
|
end
|
125
|
-
it '
|
128
|
+
it 'formats north american numbers' do
|
126
129
|
Phony.format('18091231234', :format => :international, :spaces => :-).should eql '+1-809-123-1234'
|
127
130
|
end
|
128
|
-
it '
|
131
|
+
it 'formats austrian numbers' do
|
129
132
|
Phony.format('43198110', :format => :international, :spaces => :-).should eql '+43-1-98110'
|
130
133
|
end
|
131
|
-
it '
|
134
|
+
it 'formats austrian numbers' do
|
132
135
|
Phony.format('43198110', :format => :international_absolute, :spaces => :-).should eql '+43-1-98110'
|
133
136
|
end
|
134
|
-
it '
|
137
|
+
it 'formats french numbers' do
|
135
138
|
Phony.format('33142278186', :format => :+, :spaces => :-).should eql '+33-1-42-27-81-86'
|
136
139
|
end
|
137
|
-
it '
|
140
|
+
it 'formats austrian numbers' do
|
138
141
|
Phony.format('43198110', :format => :international_relative, :spaces => :-).should eql '0043-1-98110'
|
139
142
|
end
|
140
|
-
it '
|
143
|
+
it 'formats liechtensteiner numbers' do
|
141
144
|
Phony.format('4233841148', :format => :international_relative, :spaces => :-).should eql '00423-384-11-48'
|
142
145
|
end
|
143
146
|
end
|
144
147
|
describe "'unsupported' countries" do
|
145
|
-
it '
|
148
|
+
it 'formats as a single block' do
|
146
149
|
Phony.format('88132155605220').should eql '+881 32155605220'
|
147
150
|
end
|
148
|
-
it '
|
151
|
+
it 'formats as a single block, regardless of format' do
|
149
152
|
Phony.format('8811819372205', :format => :international).should eql '+881 1819372205'
|
150
153
|
end
|
151
|
-
it '
|
154
|
+
it 'formats as a single block, respecting custom spaces' do
|
152
155
|
Phony.format('8811819372205', :spaces => :-).should eql '+881-1819372205'
|
153
156
|
end
|
154
|
-
it '
|
157
|
+
it 'formats as a single block, even without spaces' do
|
155
158
|
Phony.format('8811819372205', :spaces => '').should eql '+8811819372205'
|
156
159
|
end
|
157
160
|
end
|
158
161
|
end
|
159
162
|
describe 'national' do
|
160
|
-
it '
|
163
|
+
it 'formats swiss numbers' do
|
161
164
|
Phony.format('41443643532', :format => :national).should eql '044 364 35 32'
|
162
165
|
end
|
163
166
|
# TODO
|
164
167
|
#
|
165
|
-
it '
|
168
|
+
it 'formats swiss service numbers' do
|
166
169
|
Phony.format('41800112233', :format => :national).should eql '0800 112 233'
|
167
170
|
end
|
168
|
-
it '
|
171
|
+
it 'formats austrian numbers' do
|
169
172
|
Phony.format('43198110', :format => :national).should eql '01 98110'
|
170
173
|
end
|
171
|
-
it '
|
174
|
+
it 'formats US numbers with a leading trunk 1' do
|
172
175
|
Phony.format('14159224711', :format => :national).should eql '1 415 922 4711'
|
173
176
|
end
|
174
|
-
it '
|
177
|
+
it 'formats Dutch numbers with a trunk code' do
|
175
178
|
Phony.format('311012341234', :format => :national).should eql '010 123 41234'
|
176
179
|
end
|
177
180
|
end
|
178
181
|
describe 'local' do
|
179
|
-
it '
|
182
|
+
it 'formats swiss numbers' do
|
180
183
|
Phony.format('41443643532', :format => :local).should eql '364 35 32'
|
181
184
|
end
|
182
|
-
it '
|
185
|
+
it 'formats german numbers' do
|
183
186
|
Phony.format('493038625454', :format => :local).should eql '386 25454'
|
184
187
|
end
|
185
188
|
end
|