gphone 0.2.0 → 0.2.1
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/VERSION +1 -1
- data/ext/gphone/gphone.cc +5 -4
- data/gphone.gemspec +20 -2
- data/spec/gphone_spec.rb +51 -0
- metadata +99 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.1
|
data/ext/gphone/gphone.cc
CHANGED
@@ -53,6 +53,7 @@ namespace {
|
|
53
53
|
|
54
54
|
GPhone(const string number, const string cc = "ZZ") {
|
55
55
|
raw_number = number;
|
56
|
+
iso_country_code = cc;
|
56
57
|
|
57
58
|
PhoneNumberUtil::ErrorType er = pu().Parse(raw_number, iso_country_code, &parsed_number);
|
58
59
|
|
@@ -61,11 +62,11 @@ namespace {
|
|
61
62
|
}
|
62
63
|
|
63
64
|
if (cc != "ZZ") {
|
64
|
-
|
65
|
+
iso_country_code = cc;
|
65
66
|
} else {
|
66
|
-
|
67
|
+
pu().GetRegionCodeForNumber(parsed_number, &iso_country_code);
|
67
68
|
}
|
68
|
-
|
69
|
+
|
69
70
|
type = pu().GetNumberType(parsed_number);
|
70
71
|
|
71
72
|
}
|
@@ -84,7 +85,7 @@ namespace {
|
|
84
85
|
string formatted_number;
|
85
86
|
pu().Format(parsed_number, PhoneNumberUtil::E164, &formatted_number);
|
86
87
|
return formatted_number;
|
87
|
-
}
|
88
|
+
}
|
88
89
|
|
89
90
|
bool is_valid()
|
90
91
|
{
|
data/gphone.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "gphone"
|
8
|
-
s.version = "0.2.
|
8
|
+
s.version = "0.2.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Tobias Begalke"]
|
12
|
-
s.date = "2014-
|
12
|
+
s.date = "2014-07-07"
|
13
13
|
s.description = "ruby bindings for Google's libphonenumber (see http://code.google.com/p/libphonenumber/)"
|
14
14
|
s.email = "tob@spyz.org"
|
15
15
|
s.extensions = ["ext/gphone/extconf.rb"]
|
@@ -84,6 +84,12 @@ Gem::Specification.new do |s|
|
|
84
84
|
s.add_development_dependency(%q<bundler>, [">= 1.0.0"])
|
85
85
|
s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
|
86
86
|
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
87
|
+
s.add_development_dependency(%q<ruby-debug19>, [">= 0"])
|
88
|
+
s.add_development_dependency(%q<rspec>, ["~> 2.8.0"])
|
89
|
+
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
90
|
+
s.add_development_dependency(%q<bundler>, [">= 1.0.0"])
|
91
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
|
92
|
+
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
87
93
|
else
|
88
94
|
s.add_dependency(%q<gphone>, [">= 0"])
|
89
95
|
s.add_dependency(%q<rice>, [">= 0"])
|
@@ -122,6 +128,12 @@ Gem::Specification.new do |s|
|
|
122
128
|
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
123
129
|
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
124
130
|
s.add_dependency(%q<simplecov>, [">= 0"])
|
131
|
+
s.add_dependency(%q<ruby-debug19>, [">= 0"])
|
132
|
+
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
133
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
134
|
+
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
135
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
136
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
125
137
|
end
|
126
138
|
else
|
127
139
|
s.add_dependency(%q<gphone>, [">= 0"])
|
@@ -161,6 +173,12 @@ Gem::Specification.new do |s|
|
|
161
173
|
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
162
174
|
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
163
175
|
s.add_dependency(%q<simplecov>, [">= 0"])
|
176
|
+
s.add_dependency(%q<ruby-debug19>, [">= 0"])
|
177
|
+
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
178
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
179
|
+
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
180
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
181
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
164
182
|
end
|
165
183
|
end
|
166
184
|
|
data/spec/gphone_spec.rb
CHANGED
@@ -25,6 +25,57 @@ describe "GPhone.new('+49 09131/76352435', 'DE') (ie. with a valid number)" do
|
|
25
25
|
|
26
26
|
end
|
27
27
|
|
28
|
+
describe "GPhone.new('09131/76352435', 'DE') (with a valid number but sans country prefix)" do
|
29
|
+
subject { GPhone.new('09131/76352435', 'DE') }
|
30
|
+
|
31
|
+
it { should be }
|
32
|
+
|
33
|
+
it { should be_an_instance_of GPhone }
|
34
|
+
its(:valid?) { should be }
|
35
|
+
it "should be valid for region 'DE'" do
|
36
|
+
subject.valid_for_region?('DE').should be
|
37
|
+
end
|
38
|
+
|
39
|
+
it "should not be valid for region 'US'" do
|
40
|
+
subject.valid_for_region?('US').should_not be
|
41
|
+
end
|
42
|
+
its(:possible?) { should be }
|
43
|
+
its(:raw_number) { should == '09131/76352435' }
|
44
|
+
its(:country_code) { should == 'DE' }
|
45
|
+
its(:numeric_country_code) { should == 49 }
|
46
|
+
its(:national_number) { should == 913176352435 }
|
47
|
+
its(:normalize) { should == '+49913176352435' }
|
48
|
+
its(:format_national) { should == '09131 76352435' }
|
49
|
+
its(:type) { should == 'fixed line' }
|
50
|
+
end
|
51
|
+
|
52
|
+
|
53
|
+
describe "GPhone.new('+499131/76352435') (with a valid number but sans country prefix and sans country code)" do
|
54
|
+
subject { GPhone.new('+499131/76352435') }
|
55
|
+
|
56
|
+
it { should be }
|
57
|
+
|
58
|
+
it { should be_an_instance_of GPhone }
|
59
|
+
its(:valid?) { should be }
|
60
|
+
it "should be valid for region 'DE'" do
|
61
|
+
subject.valid_for_region?('DE').should be
|
62
|
+
end
|
63
|
+
|
64
|
+
it "should not be valid for region 'US'" do
|
65
|
+
subject.valid_for_region?('US').should_not be
|
66
|
+
end
|
67
|
+
its(:possible?) { should be }
|
68
|
+
its(:raw_number) { should == '+499131/76352435' }
|
69
|
+
its(:country_code) { should == 'DE' }
|
70
|
+
its(:numeric_country_code) { should == 49 }
|
71
|
+
its(:national_number) { should == 913176352435 }
|
72
|
+
its(:normalize) { should == '+49913176352435' }
|
73
|
+
its(:format_national) { should == '09131 76352435' }
|
74
|
+
its(:type) { should == 'fixed line' }
|
75
|
+
end
|
76
|
+
|
77
|
+
|
78
|
+
|
28
79
|
|
29
80
|
describe "GPhone.new('09543657 4567474567 4674', 'DE') (ie. with an invalid number)" do
|
30
81
|
it { lambda { GPhone.new('09543657 4567474567 4674', 'DE') }.should raise_error }
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gphone
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
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: 2014-
|
12
|
+
date: 2014-07-07 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: gphone
|
@@ -603,6 +603,102 @@ dependencies:
|
|
603
603
|
- - ! '>='
|
604
604
|
- !ruby/object:Gem::Version
|
605
605
|
version: '0'
|
606
|
+
- !ruby/object:Gem::Dependency
|
607
|
+
name: ruby-debug19
|
608
|
+
requirement: !ruby/object:Gem::Requirement
|
609
|
+
none: false
|
610
|
+
requirements:
|
611
|
+
- - ! '>='
|
612
|
+
- !ruby/object:Gem::Version
|
613
|
+
version: '0'
|
614
|
+
type: :development
|
615
|
+
prerelease: false
|
616
|
+
version_requirements: !ruby/object:Gem::Requirement
|
617
|
+
none: false
|
618
|
+
requirements:
|
619
|
+
- - ! '>='
|
620
|
+
- !ruby/object:Gem::Version
|
621
|
+
version: '0'
|
622
|
+
- !ruby/object:Gem::Dependency
|
623
|
+
name: rspec
|
624
|
+
requirement: !ruby/object:Gem::Requirement
|
625
|
+
none: false
|
626
|
+
requirements:
|
627
|
+
- - ~>
|
628
|
+
- !ruby/object:Gem::Version
|
629
|
+
version: 2.8.0
|
630
|
+
type: :development
|
631
|
+
prerelease: false
|
632
|
+
version_requirements: !ruby/object:Gem::Requirement
|
633
|
+
none: false
|
634
|
+
requirements:
|
635
|
+
- - ~>
|
636
|
+
- !ruby/object:Gem::Version
|
637
|
+
version: 2.8.0
|
638
|
+
- !ruby/object:Gem::Dependency
|
639
|
+
name: rdoc
|
640
|
+
requirement: !ruby/object:Gem::Requirement
|
641
|
+
none: false
|
642
|
+
requirements:
|
643
|
+
- - ~>
|
644
|
+
- !ruby/object:Gem::Version
|
645
|
+
version: '3.12'
|
646
|
+
type: :development
|
647
|
+
prerelease: false
|
648
|
+
version_requirements: !ruby/object:Gem::Requirement
|
649
|
+
none: false
|
650
|
+
requirements:
|
651
|
+
- - ~>
|
652
|
+
- !ruby/object:Gem::Version
|
653
|
+
version: '3.12'
|
654
|
+
- !ruby/object:Gem::Dependency
|
655
|
+
name: bundler
|
656
|
+
requirement: !ruby/object:Gem::Requirement
|
657
|
+
none: false
|
658
|
+
requirements:
|
659
|
+
- - ! '>='
|
660
|
+
- !ruby/object:Gem::Version
|
661
|
+
version: 1.0.0
|
662
|
+
type: :development
|
663
|
+
prerelease: false
|
664
|
+
version_requirements: !ruby/object:Gem::Requirement
|
665
|
+
none: false
|
666
|
+
requirements:
|
667
|
+
- - ! '>='
|
668
|
+
- !ruby/object:Gem::Version
|
669
|
+
version: 1.0.0
|
670
|
+
- !ruby/object:Gem::Dependency
|
671
|
+
name: jeweler
|
672
|
+
requirement: !ruby/object:Gem::Requirement
|
673
|
+
none: false
|
674
|
+
requirements:
|
675
|
+
- - ~>
|
676
|
+
- !ruby/object:Gem::Version
|
677
|
+
version: 1.8.4
|
678
|
+
type: :development
|
679
|
+
prerelease: false
|
680
|
+
version_requirements: !ruby/object:Gem::Requirement
|
681
|
+
none: false
|
682
|
+
requirements:
|
683
|
+
- - ~>
|
684
|
+
- !ruby/object:Gem::Version
|
685
|
+
version: 1.8.4
|
686
|
+
- !ruby/object:Gem::Dependency
|
687
|
+
name: simplecov
|
688
|
+
requirement: !ruby/object:Gem::Requirement
|
689
|
+
none: false
|
690
|
+
requirements:
|
691
|
+
- - ! '>='
|
692
|
+
- !ruby/object:Gem::Version
|
693
|
+
version: '0'
|
694
|
+
type: :development
|
695
|
+
prerelease: false
|
696
|
+
version_requirements: !ruby/object:Gem::Requirement
|
697
|
+
none: false
|
698
|
+
requirements:
|
699
|
+
- - ! '>='
|
700
|
+
- !ruby/object:Gem::Version
|
701
|
+
version: '0'
|
606
702
|
description: ruby bindings for Google's libphonenumber (see http://code.google.com/p/libphonenumber/)
|
607
703
|
email: tob@spyz.org
|
608
704
|
executables: []
|
@@ -645,7 +741,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
645
741
|
version: '0'
|
646
742
|
segments:
|
647
743
|
- 0
|
648
|
-
hash:
|
744
|
+
hash: 625849012759600100
|
649
745
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
650
746
|
none: false
|
651
747
|
requirements:
|