piliponi 1.1.0 → 1.2.0
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.
- checksums.yaml +4 -4
- data/README.md +0 -2
- data/lib/piliponi/config/telco.yml +57 -0
- data/lib/piliponi/piliponi_api.rb +7 -16
- data/lib/piliponi/version.rb +1 -1
- data/spec/piliponi_spec.rb +68 -199
- metadata +14 -13
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2fc73d412120edaa5b8dbd13b56df4742cdcb0c3
|
|
4
|
+
data.tar.gz: e9bb625a0be9c043c20e28bcfeb3f0da28b37b2e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 61f57fc4c136cdfe3758bb0bb1eeaf59d38ae78a3e65931be7e947bf9f72b2fd92139440c6fcd90ff8dcd6f979309f3234264215c88e24efbc677bd40c240640
|
|
7
|
+
data.tar.gz: a5e8368ed8c8dfd83d66211c4be625b3322565be48cacc3dd971a5beea4067f13175571ad4a7098a1fa2d6c01b53764703f28fcd9cee17bbfcf086f207611f8a
|
data/README.md
CHANGED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
smart:
|
|
2
|
+
- 0813
|
|
3
|
+
- 0907
|
|
4
|
+
- 0908
|
|
5
|
+
- 0909
|
|
6
|
+
- 0910
|
|
7
|
+
- 0911
|
|
8
|
+
- 0912
|
|
9
|
+
- 0913
|
|
10
|
+
- 0914
|
|
11
|
+
- 0918
|
|
12
|
+
- 0919
|
|
13
|
+
- 0920
|
|
14
|
+
- 0921
|
|
15
|
+
- 0928
|
|
16
|
+
- 0929
|
|
17
|
+
- 0930
|
|
18
|
+
- 0938
|
|
19
|
+
- 0939
|
|
20
|
+
- 0946
|
|
21
|
+
- 0947
|
|
22
|
+
- 0948
|
|
23
|
+
- 0949
|
|
24
|
+
- 0989
|
|
25
|
+
- 0998
|
|
26
|
+
- 0999
|
|
27
|
+
sun:
|
|
28
|
+
- 0922
|
|
29
|
+
- 0923
|
|
30
|
+
- 0924
|
|
31
|
+
- 0932
|
|
32
|
+
- 0933
|
|
33
|
+
- 0934
|
|
34
|
+
- 0942
|
|
35
|
+
- 0943
|
|
36
|
+
globe:
|
|
37
|
+
- 0817
|
|
38
|
+
- 0905
|
|
39
|
+
- 0906
|
|
40
|
+
- 0915
|
|
41
|
+
- 0916
|
|
42
|
+
- 0917
|
|
43
|
+
- 0925
|
|
44
|
+
- 0926
|
|
45
|
+
- 0927
|
|
46
|
+
- 0935
|
|
47
|
+
- 0936
|
|
48
|
+
- 0937
|
|
49
|
+
- 0994
|
|
50
|
+
- 0996
|
|
51
|
+
- 0997
|
|
52
|
+
- 0977
|
|
53
|
+
- 0979
|
|
54
|
+
exetel:
|
|
55
|
+
- 0973
|
|
56
|
+
- 0974
|
|
57
|
+
|
|
@@ -1,23 +1,14 @@
|
|
|
1
|
+
require 'yaml'
|
|
2
|
+
|
|
1
3
|
module Core
|
|
4
|
+
|
|
5
|
+
PREFIXES = YAML.load_file(File.join(File.dirname(__FILE__),"config/telco.yml"))
|
|
6
|
+
|
|
2
7
|
class PiliponiApi
|
|
3
8
|
def lookup(prefix)
|
|
4
|
-
|
|
5
|
-
globe = %w{0817 0905 0906 0915 0916 0917 0925 0926 0927 0935 0936 0937 0945 0994 0995 0996 0997}
|
|
6
|
-
sun = %w{0922 0923 0932 0933 0934 0942 0943}
|
|
7
|
-
smart_others = %w{0907 0908 0909 0910 0912 0919 0920 0921 0928 0929 0930 0938 0939 0946 0948 0949 0989}
|
|
8
|
-
|
|
9
|
+
network = PREFIXES.find { |k,v| v.include? prefix }
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
"smart"
|
|
12
|
-
elsif globe.include? prefix
|
|
13
|
-
"globe"
|
|
14
|
-
elsif sun.include? prefix
|
|
15
|
-
"sun"
|
|
16
|
-
elsif smart_others.include? prefix
|
|
17
|
-
"smart_others"
|
|
18
|
-
else
|
|
19
|
-
"unknown"
|
|
20
|
-
end
|
|
11
|
+
network ? network[0] : "unknown"
|
|
21
12
|
end
|
|
22
13
|
|
|
23
14
|
end
|
data/lib/piliponi/version.rb
CHANGED
data/spec/piliponi_spec.rb
CHANGED
|
@@ -1,259 +1,128 @@
|
|
|
1
1
|
require 'spec_helper'
|
|
2
2
|
|
|
3
|
-
class Dummy
|
|
4
|
-
include Piliponi
|
|
5
|
-
end
|
|
6
|
-
|
|
7
3
|
describe Piliponi do
|
|
8
4
|
|
|
9
|
-
describe "
|
|
10
|
-
let!(:piliponi) { Dummy.new }
|
|
11
|
-
|
|
12
|
-
context "#plausible?" do
|
|
13
|
-
|
|
14
|
-
it "works" do
|
|
15
|
-
lambda do
|
|
16
|
-
piliponi.plausible?("whatevs")
|
|
17
|
-
end.should_not raise_error
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
it "returns true given 9170000001" do
|
|
21
|
-
piliponi.plausible?("9170000001").should eq(true)
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
it "returns true given 639170000001" do
|
|
25
|
-
piliponi.plausible?("639170000001").should eq(true)
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
it "returns true given +639170000001" do
|
|
29
|
-
piliponi.plausible?("+639170000001").should eq(true)
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
it "returns false given a non-numerical string" do
|
|
33
|
-
piliponi.plausible?("wawa").should eq(false)
|
|
34
|
-
end
|
|
5
|
+
describe ".plausible?" do
|
|
35
6
|
|
|
7
|
+
it "returns true given 9170000001" do
|
|
8
|
+
expect(Piliponi.plausible? "9170000001").to eq(true)
|
|
36
9
|
end
|
|
37
10
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
it "removes characters" do
|
|
41
|
-
piliponi.clean("+639170000001").should eq("639170000001")
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
it "returns nil if no number is placed" do
|
|
45
|
-
piliponi.clean.should be_nil
|
|
46
|
-
end
|
|
47
|
-
|
|
11
|
+
it "returns true given 639170000001" do
|
|
12
|
+
expect(Piliponi.plausible? "639170000001").to eq(true)
|
|
48
13
|
end
|
|
49
14
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
it "formats to 09XXXXXXXX" do
|
|
54
|
-
piliponi.normalize(number, {format: 'local'}).should eq('09193632598')
|
|
55
|
-
end
|
|
56
|
-
|
|
57
|
-
it "formats to +639XXXXXXX" do
|
|
58
|
-
piliponi.normalize(number, {format: 'international'}).should eq('+639193632598')
|
|
59
|
-
end
|
|
60
|
-
|
|
61
|
-
it "formats to 9XXXXXXX" do
|
|
62
|
-
piliponi.normalize(number, {format: 'pure'}).should eq('9193632598')
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
context "when the format passed is not recognized" do
|
|
66
|
-
|
|
67
|
-
it "raises FormatNotRecognizedException" do
|
|
68
|
-
expect{
|
|
69
|
-
piliponi.normalize(number, format: :foo)
|
|
70
|
-
}.to raise_error(FormatNotRecognizedException)
|
|
71
|
-
|
|
72
|
-
expect{
|
|
73
|
-
piliponi.normalize(number, format: :foo)
|
|
74
|
-
}.to raise_error(FormatNotRecognizedException)
|
|
75
|
-
end
|
|
76
|
-
|
|
77
|
-
end
|
|
78
|
-
|
|
79
|
-
context "when the number is not valid" do
|
|
80
|
-
|
|
81
|
-
it "raises InvalidPhoneNumberException" do
|
|
82
|
-
expect{
|
|
83
|
-
piliponi.normalize("notanumber", format: :local)
|
|
84
|
-
}.to raise_error(InvalidPhoneNumberException)
|
|
85
|
-
end
|
|
86
|
-
|
|
87
|
-
end
|
|
15
|
+
it "returns true given +639170000001" do
|
|
16
|
+
expect(Piliponi.plausible? "+639170000001").to eq(true)
|
|
88
17
|
end
|
|
89
18
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
it "returns smart for 09XX" do
|
|
93
|
-
piliponi.telco?('09181234567').should eq('smart')
|
|
94
|
-
end
|
|
95
|
-
|
|
96
|
-
it "returns globe for 09XX" do
|
|
97
|
-
piliponi.telco?("09170000000").should eq("globe")
|
|
98
|
-
end
|
|
99
|
-
|
|
100
|
-
it "returns sun for 09XX" do
|
|
101
|
-
piliponi.telco?("09220000000").should eq("sun")
|
|
102
|
-
end
|
|
103
|
-
|
|
104
|
-
it "returns talk and text/ addict or red" do
|
|
105
|
-
piliponi.telco?("09070000000").should eq("smart_others")
|
|
106
|
-
end
|
|
107
|
-
|
|
19
|
+
it "returns false given a non-numerical string" do
|
|
20
|
+
expect(Piliponi.plausible? "wawa").to eq(false)
|
|
108
21
|
end
|
|
109
22
|
|
|
110
|
-
|
|
111
|
-
describe '09171231234' do
|
|
23
|
+
end
|
|
112
24
|
|
|
113
|
-
|
|
114
|
-
expect(piliponi.prefix('09171231234')).to eq '0917'
|
|
115
|
-
expect(piliponi.prefix('639171231234')).to eq '0917'
|
|
116
|
-
expect(piliponi.prefix('9171231234')).to eq '0917'
|
|
117
|
-
end
|
|
25
|
+
describe ".clean" do
|
|
118
26
|
|
|
119
|
-
|
|
27
|
+
it "removes characters" do
|
|
28
|
+
expect(Piliponi.clean "+639170000001").to eq("639170000001")
|
|
120
29
|
end
|
|
121
30
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
it 'retunrs 0917' do
|
|
126
|
-
expect(piliponi.prefix('0917')).to eq '0917'
|
|
127
|
-
expect(piliponi.prefix('63917')).to eq '0917'
|
|
128
|
-
expect(piliponi.prefix('917')).to eq '0917'
|
|
129
|
-
end
|
|
130
|
-
|
|
131
|
-
end
|
|
31
|
+
it "returns nil if no number is placed" do
|
|
32
|
+
expect(Piliponi.clean).to be_nil
|
|
132
33
|
end
|
|
133
|
-
end
|
|
134
|
-
|
|
135
|
-
describe "as Singleton Methods" do
|
|
136
|
-
|
|
137
|
-
context "#plausible?" do
|
|
138
34
|
|
|
139
|
-
|
|
140
|
-
lambda do
|
|
141
|
-
Piliponi.plausible?("whatevs")
|
|
142
|
-
end.should_not raise_error
|
|
143
|
-
end
|
|
144
|
-
|
|
145
|
-
it "returns true given 9170000001" do
|
|
146
|
-
Piliponi.plausible?("9170000001").should eq(true)
|
|
147
|
-
end
|
|
148
|
-
|
|
149
|
-
it "returns true given 639170000001" do
|
|
150
|
-
Piliponi.plausible?("639170000001").should eq(true)
|
|
151
|
-
end
|
|
35
|
+
end
|
|
152
36
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
end
|
|
156
|
-
|
|
157
|
-
it "returns false given a non-numerical string" do
|
|
158
|
-
Piliponi.plausible?("wawa").should eq(false)
|
|
159
|
-
end
|
|
37
|
+
describe ".normalize" do
|
|
38
|
+
let(:number) { '(0919) 363-2598' }
|
|
160
39
|
|
|
40
|
+
it "formats to 09XXXXXXXX" do
|
|
41
|
+
expect(Piliponi.normalize number, {format: 'local'}).to eq('09193632598')
|
|
161
42
|
end
|
|
162
43
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
it "removes characters" do
|
|
166
|
-
Piliponi.clean("+639170000001").should eq("639170000001")
|
|
167
|
-
end
|
|
168
|
-
|
|
169
|
-
it "returns nil if no number is placed" do
|
|
170
|
-
Piliponi.clean.should be_nil
|
|
171
|
-
end
|
|
172
|
-
|
|
44
|
+
it "formats to +639XXXXXXX" do
|
|
45
|
+
expect(Piliponi.normalize number, {format: 'international'}).to eq('+639193632598')
|
|
173
46
|
end
|
|
174
47
|
|
|
175
|
-
|
|
176
|
-
|
|
48
|
+
it "formats to 9XXXXXXX" do
|
|
49
|
+
expect(Piliponi.normalize number, {format: 'pure'}).to eq('9193632598')
|
|
50
|
+
end
|
|
177
51
|
|
|
178
|
-
|
|
179
|
-
Piliponi.normalize(number, {format: 'local'}).should eq('09193632598')
|
|
180
|
-
end
|
|
52
|
+
context "when the format passed is not recognized" do
|
|
181
53
|
|
|
182
|
-
it "
|
|
183
|
-
|
|
184
|
-
|
|
54
|
+
it "raises FormatNotRecognizedException" do
|
|
55
|
+
expect{
|
|
56
|
+
Piliponi.normalize(number, format: :foo)
|
|
57
|
+
}.to raise_error(FormatNotRecognizedException)
|
|
185
58
|
|
|
186
|
-
|
|
187
|
-
|
|
59
|
+
expect{
|
|
60
|
+
Piliponi.normalize(number, format: :foo)
|
|
61
|
+
}.to raise_error(FormatNotRecognizedException)
|
|
188
62
|
end
|
|
189
63
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
it "raises FormatNotRecognizedException" do
|
|
193
|
-
expect{
|
|
194
|
-
Piliponi.normalize(number, format: :foo)
|
|
195
|
-
}.to raise_error(FormatNotRecognizedException)
|
|
64
|
+
end
|
|
196
65
|
|
|
197
|
-
|
|
198
|
-
Piliponi.normalize(number, format: :foo)
|
|
199
|
-
}.to raise_error(FormatNotRecognizedException)
|
|
200
|
-
end
|
|
66
|
+
context "when the number is not valid" do
|
|
201
67
|
|
|
68
|
+
it "raises InvalidPhoneNumberException" do
|
|
69
|
+
expect{
|
|
70
|
+
Piliponi.normalize("notanumber", format: :local)
|
|
71
|
+
}.to raise_error(InvalidPhoneNumberException)
|
|
202
72
|
end
|
|
203
73
|
|
|
204
|
-
context "when the number is not valid" do
|
|
205
|
-
|
|
206
|
-
it "raises InvalidPhoneNumberException" do
|
|
207
|
-
expect{
|
|
208
|
-
Piliponi.normalize("notanumber", format: :local)
|
|
209
|
-
}.to raise_error(InvalidPhoneNumberException)
|
|
210
|
-
end
|
|
211
|
-
|
|
212
|
-
end
|
|
213
74
|
end
|
|
75
|
+
end
|
|
214
76
|
|
|
215
|
-
|
|
77
|
+
describe ".telco?" do
|
|
216
78
|
|
|
79
|
+
context "with valid prefixes" do
|
|
217
80
|
it "returns smart for 09XX" do
|
|
218
|
-
Piliponi.telco?
|
|
81
|
+
expect(Piliponi.telco? '09181234567').to eq('smart')
|
|
219
82
|
end
|
|
220
83
|
|
|
221
84
|
it "returns globe for 09XX" do
|
|
222
|
-
Piliponi.telco?
|
|
85
|
+
expect(Piliponi.telco? "09170000000").to eq('globe')
|
|
223
86
|
end
|
|
224
87
|
|
|
225
88
|
it "returns sun for 09XX" do
|
|
226
|
-
Piliponi.telco?
|
|
89
|
+
expect(Piliponi.telco? "09220000000").to eq('sun')
|
|
227
90
|
end
|
|
228
91
|
|
|
229
|
-
it "returns
|
|
230
|
-
Piliponi.telco?
|
|
92
|
+
it "returns exetel" do
|
|
93
|
+
expect(Piliponi.telco? "09730000000").to eq('exetel')
|
|
231
94
|
end
|
|
95
|
+
end
|
|
232
96
|
|
|
97
|
+
context "with unknown prefixes" do
|
|
98
|
+
it "returns unknown" do
|
|
99
|
+
expect(Piliponi.telco? "0890000000").to eq('unknown')
|
|
100
|
+
end
|
|
233
101
|
end
|
|
234
102
|
|
|
235
|
-
|
|
236
|
-
describe '09171231234' do
|
|
103
|
+
end
|
|
237
104
|
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
expect(Piliponi.prefix('639171231234')).to eq '0917'
|
|
241
|
-
expect(Piliponi.prefix('9171231234')).to eq '0917'
|
|
242
|
-
end
|
|
105
|
+
describe '.prefix' do
|
|
106
|
+
context '09171231234' do
|
|
243
107
|
|
|
108
|
+
it 'returns 0917' do
|
|
109
|
+
expect(Piliponi.prefix('09171231234')).to eq '0917'
|
|
110
|
+
expect(Piliponi.prefix('639171231234')).to eq '0917'
|
|
111
|
+
expect(Piliponi.prefix('9171231234')).to eq '0917'
|
|
244
112
|
end
|
|
245
|
-
end
|
|
246
113
|
|
|
247
|
-
|
|
248
|
-
|
|
114
|
+
end
|
|
115
|
+
end
|
|
249
116
|
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
expect(Piliponi.prefix('63917')).to eq '0917'
|
|
253
|
-
expect(Piliponi.prefix('917')).to eq '0917'
|
|
254
|
-
end
|
|
117
|
+
describe '.clean_prefix' do
|
|
118
|
+
context '0917' do
|
|
255
119
|
|
|
120
|
+
it 'returns 0917' do
|
|
121
|
+
expect(Piliponi.prefix('0917')).to eq '0917'
|
|
122
|
+
expect(Piliponi.prefix('63917')).to eq '0917'
|
|
123
|
+
expect(Piliponi.prefix('917')).to eq '0917'
|
|
256
124
|
end
|
|
125
|
+
|
|
257
126
|
end
|
|
258
127
|
end
|
|
259
128
|
end
|
metadata
CHANGED
|
@@ -1,55 +1,55 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: piliponi
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ace Dimasuhid
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2015-06-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- - ~>
|
|
17
|
+
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
19
|
version: '1.3'
|
|
20
20
|
type: :development
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
|
-
- - ~>
|
|
24
|
+
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
26
|
version: '1.3'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: rake
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- -
|
|
31
|
+
- - ">="
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
33
|
version: '0'
|
|
34
34
|
type: :development
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
|
-
- -
|
|
38
|
+
- - ">="
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
40
|
version: '0'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: rspec
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
|
-
- -
|
|
45
|
+
- - ">="
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
47
|
version: '0'
|
|
48
48
|
type: :development
|
|
49
49
|
prerelease: false
|
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
51
|
requirements:
|
|
52
|
-
- -
|
|
52
|
+
- - ">="
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '0'
|
|
55
55
|
description: Philippine Mobile Phone Formatter
|
|
@@ -59,13 +59,14 @@ executables: []
|
|
|
59
59
|
extensions: []
|
|
60
60
|
extra_rdoc_files: []
|
|
61
61
|
files:
|
|
62
|
-
- .gitignore
|
|
63
|
-
- .travis.yml
|
|
62
|
+
- ".gitignore"
|
|
63
|
+
- ".travis.yml"
|
|
64
64
|
- Gemfile
|
|
65
65
|
- LICENSE.txt
|
|
66
66
|
- README.md
|
|
67
67
|
- Rakefile
|
|
68
68
|
- lib/piliponi.rb
|
|
69
|
+
- lib/piliponi/config/telco.yml
|
|
69
70
|
- lib/piliponi/core.rb
|
|
70
71
|
- lib/piliponi/piliponi_api.rb
|
|
71
72
|
- lib/piliponi/support.rb
|
|
@@ -83,17 +84,17 @@ require_paths:
|
|
|
83
84
|
- lib
|
|
84
85
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
85
86
|
requirements:
|
|
86
|
-
- -
|
|
87
|
+
- - ">="
|
|
87
88
|
- !ruby/object:Gem::Version
|
|
88
89
|
version: '0'
|
|
89
90
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
90
91
|
requirements:
|
|
91
|
-
- -
|
|
92
|
+
- - ">="
|
|
92
93
|
- !ruby/object:Gem::Version
|
|
93
94
|
version: '0'
|
|
94
95
|
requirements: []
|
|
95
96
|
rubyforge_project:
|
|
96
|
-
rubygems_version: 2.
|
|
97
|
+
rubygems_version: 2.4.5
|
|
97
98
|
signing_key:
|
|
98
99
|
specification_version: 4
|
|
99
100
|
summary: Mobile Phone Number Formatter for the Philippines
|