geokit-premier 0.0.7 → 0.1.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.
- data/.gitignore +1 -0
- data/geokit-premier.gemspec +1 -1
- data/lib/geokit/geocoders.rb +170 -157
- data/lib/geokit/geocoders_mine.rb +119 -119
- data/lib/geokit/version.rb +1 -1
- data/spec/geocoder_spec.rb +61 -1
- data/spec/spec_helper.rb +1 -1
- metadata +114 -118
- data/Gemfile.lock +0 -56
data/lib/geokit/version.rb
CHANGED
data/spec/geocoder_spec.rb
CHANGED
@@ -69,5 +69,65 @@ describe "Geocoder" do
|
|
69
69
|
end
|
70
70
|
|
71
71
|
end
|
72
|
+
|
73
|
+
describe "sorting results" do
|
74
|
+
let(:raw_results) {
|
75
|
+
{
|
76
|
+
"results" => [
|
77
|
+
{ "formatted_address" => '1-First Rooftop Place',
|
78
|
+
"geometry" => {"location_type" => "ROOFTOP", "location" => {"lat" => 1.0, "lng" => 1.0}},
|
79
|
+
'address_components' => []},
|
80
|
+
|
81
|
+
{ "formatted_address" => '2-Second Rooftop Place',
|
82
|
+
"geometry" => {"location_type" => "ROOFTOP", "location" => {"lat" => 1.0, "lng" => 1.0}},
|
83
|
+
'address_components' => []},
|
84
|
+
|
85
|
+
{ "formatted_address" => '7-First Approximate Place',
|
86
|
+
"geometry" => {"location_type" => "APPROXIMATE", "location" => {"lat" => 1.0, "lng" => 1.0}},
|
87
|
+
'address_components' => []},
|
88
|
+
|
89
|
+
{ "formatted_address" => '8-First Approximate Place',
|
90
|
+
"geometry" => {"location_type" => "APPROXIMATE", "location" => {"lat" => 1.0, "lng" => 1.0}},
|
91
|
+
'address_components' => []},
|
92
|
+
|
93
|
+
{ "formatted_address" => '5-First Geometric-Center Place',
|
94
|
+
"geometry" => {"location_type" => "GEOMETRIC_CENTER", "location" => {"lat" => 1.0, "lng" => 1.0}},
|
95
|
+
'address_components' => []},
|
96
|
+
|
97
|
+
{ "formatted_address" => '6-Second Geometric-Center Place',
|
98
|
+
"geometry" => {"location_type" => "GEOMETRIC_CENTER", "location" => {"lat" => 1.0, "lng" => 1.0}},
|
99
|
+
'address_components' => []},
|
100
|
+
|
101
|
+
{ "formatted_address" => '3-First Range-Interpolated Place',
|
102
|
+
"geometry" => {"location_type" => "RANGE_INTERPOLATED", "location" => {"lat" => 1.0, "lng" => 1.0}},
|
103
|
+
'address_components' => []},
|
104
|
+
|
105
|
+
{ "formatted_address" => '4-Second Range-Interpolated Place',
|
106
|
+
"geometry" => {"location_type" => "RANGE_INTERPOLATED", "location" => {"lat" => 1.0, "lng" => 1.0}},
|
107
|
+
'address_components' => []}
|
108
|
+
]
|
109
|
+
}
|
110
|
+
}
|
111
|
+
|
112
|
+
it "returns the most relevant result first" do
|
113
|
+
JSON.stub(:decode).and_return(raw_results)
|
114
|
+
JSON.stub(:parse).and_return(raw_results)
|
115
|
+
|
116
|
+
results = Geokit::Geocoders::GoogleGeocoder3.json2GeoLoc('mock-json-string')
|
117
|
+
|
118
|
+
# first default result should be the first one.
|
119
|
+
results.full_address.should == '1-First Rooftop Place'
|
120
|
+
|
121
|
+
# all results should be ordered properly
|
122
|
+
results.all[0].full_address.should == '1-First Rooftop Place'
|
123
|
+
results.all[1].full_address.should == '2-Second Rooftop Place'
|
124
|
+
results.all[2].full_address.should == '3-First Range-Interpolated Place'
|
125
|
+
results.all[3].full_address.should == '4-Second Range-Interpolated Place'
|
126
|
+
results.all[4].full_address.should == '5-First Geometric-Center Place'
|
127
|
+
results.all[5].full_address.should == '6-Second Geometric-Center Place'
|
128
|
+
results.all[6].full_address.should == '7-First Approximate Place'
|
129
|
+
results.all[7].full_address.should == '8-First Approximate Place'
|
130
|
+
end
|
131
|
+
end
|
72
132
|
|
73
|
-
end
|
133
|
+
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,133 +1,138 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: geokit-premier
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 0
|
9
|
-
- 7
|
10
|
-
version: 0.0.7
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Andrew Forward (forked project from Andre Lewis and Bill Eisenhauer)
|
14
9
|
autorequire:
|
15
10
|
bindir: bin
|
16
11
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2014-05-29 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
21
15
|
name: json_pure
|
22
|
-
|
23
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
24
17
|
none: false
|
25
|
-
requirements:
|
26
|
-
- -
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
|
29
|
-
segments:
|
30
|
-
- 0
|
31
|
-
version: "0"
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
32
22
|
type: :runtime
|
33
|
-
version_requirements: *id001
|
34
|
-
- !ruby/object:Gem::Dependency
|
35
|
-
name: hoe
|
36
23
|
prerelease: false
|
37
|
-
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: hoe
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
38
33
|
none: false
|
39
|
-
requirements:
|
40
|
-
- -
|
41
|
-
- !ruby/object:Gem::Version
|
42
|
-
|
43
|
-
segments:
|
44
|
-
- 0
|
45
|
-
version: "0"
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
46
38
|
type: :runtime
|
47
|
-
version_requirements: *id002
|
48
|
-
- !ruby/object:Gem::Dependency
|
49
|
-
name: rspec
|
50
39
|
prerelease: false
|
51
|
-
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
41
|
none: false
|
53
|
-
requirements:
|
54
|
-
- -
|
55
|
-
- !ruby/object:Gem::Version
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: rspec
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: 2.14.1
|
60
54
|
type: :development
|
61
|
-
version_requirements: *id003
|
62
|
-
- !ruby/object:Gem::Dependency
|
63
|
-
name: autotest
|
64
55
|
prerelease: false
|
65
|
-
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
57
|
none: false
|
67
|
-
requirements:
|
68
|
-
- -
|
69
|
-
- !ruby/object:Gem::Version
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 2.14.1
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: autotest
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
74
70
|
type: :development
|
75
|
-
version_requirements: *id004
|
76
|
-
- !ruby/object:Gem::Dependency
|
77
|
-
name: ZenTest
|
78
71
|
prerelease: false
|
79
|
-
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
80
73
|
none: false
|
81
|
-
requirements:
|
82
|
-
- -
|
83
|
-
- !ruby/object:Gem::Version
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: ZenTest
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ! '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0'
|
88
86
|
type: :development
|
89
|
-
version_requirements: *id005
|
90
|
-
- !ruby/object:Gem::Dependency
|
91
|
-
name: standalone_migrations
|
92
87
|
prerelease: false
|
93
|
-
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: standalone_migrations
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
94
97
|
none: false
|
95
|
-
requirements:
|
96
|
-
- -
|
97
|
-
- !ruby/object:Gem::Version
|
98
|
-
|
99
|
-
segments:
|
100
|
-
- 0
|
101
|
-
version: "0"
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
102
102
|
type: :development
|
103
|
-
version_requirements: *id006
|
104
|
-
- !ruby/object:Gem::Dependency
|
105
|
-
name: mysql
|
106
103
|
prerelease: false
|
107
|
-
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: mysql
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
108
113
|
none: false
|
109
|
-
requirements:
|
110
|
-
- -
|
111
|
-
- !ruby/object:Gem::Version
|
112
|
-
|
113
|
-
segments:
|
114
|
-
- 0
|
115
|
-
version: "0"
|
114
|
+
requirements:
|
115
|
+
- - ! '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
116
118
|
type: :development
|
117
|
-
|
118
|
-
|
119
|
-
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ! '>='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '0'
|
126
|
+
description: Enhanced the google geocoder to take advantage of the premier account
|
127
|
+
offering
|
128
|
+
email:
|
120
129
|
- aforward@gmail.com
|
121
130
|
executables: []
|
122
|
-
|
123
131
|
extensions: []
|
124
|
-
|
125
132
|
extra_rdoc_files: []
|
126
|
-
|
127
|
-
files:
|
133
|
+
files:
|
128
134
|
- .gitignore
|
129
135
|
- Gemfile
|
130
|
-
- Gemfile.lock
|
131
136
|
- History.txt
|
132
137
|
- Manifest.txt
|
133
138
|
- README.markdown
|
@@ -158,38 +163,29 @@ files:
|
|
158
163
|
- test/test_yahoo_geocoder.rb
|
159
164
|
homepage: https://github.com/aforward/geokit-premier-gem
|
160
165
|
licenses: []
|
161
|
-
|
162
166
|
post_install_message:
|
163
167
|
rdoc_options: []
|
164
|
-
|
165
|
-
require_paths:
|
168
|
+
require_paths:
|
166
169
|
- lib
|
167
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
170
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
168
171
|
none: false
|
169
|
-
requirements:
|
170
|
-
- -
|
171
|
-
- !ruby/object:Gem::Version
|
172
|
-
|
173
|
-
|
174
|
-
- 0
|
175
|
-
version: "0"
|
176
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
172
|
+
requirements:
|
173
|
+
- - ! '>='
|
174
|
+
- !ruby/object:Gem::Version
|
175
|
+
version: '0'
|
176
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
177
177
|
none: false
|
178
|
-
requirements:
|
179
|
-
- -
|
180
|
-
- !ruby/object:Gem::Version
|
181
|
-
|
182
|
-
segments:
|
183
|
-
- 0
|
184
|
-
version: "0"
|
178
|
+
requirements:
|
179
|
+
- - ! '>='
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '0'
|
185
182
|
requirements: []
|
186
|
-
|
187
183
|
rubyforge_project:
|
188
|
-
rubygems_version: 1.8.
|
184
|
+
rubygems_version: 1.8.23
|
189
185
|
signing_key:
|
190
186
|
specification_version: 3
|
191
187
|
summary: Enables google geocoding using a premier account
|
192
|
-
test_files:
|
188
|
+
test_files:
|
193
189
|
- spec/geocoder_spec.rb
|
194
190
|
- spec/spec_helper.rb
|
195
191
|
- test/test_base_geocoder.rb
|
data/Gemfile.lock
DELETED
@@ -1,56 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
geokit-premier (0.0.7)
|
5
|
-
hoe
|
6
|
-
json_pure
|
7
|
-
|
8
|
-
GEM
|
9
|
-
remote: http://rubygems.org/
|
10
|
-
specs:
|
11
|
-
ZenTest (4.4.2)
|
12
|
-
activemodel (3.0.3)
|
13
|
-
activesupport (= 3.0.3)
|
14
|
-
builder (~> 2.1.2)
|
15
|
-
i18n (~> 0.4)
|
16
|
-
activerecord (3.0.3)
|
17
|
-
activemodel (= 3.0.3)
|
18
|
-
activesupport (= 3.0.3)
|
19
|
-
arel (~> 2.0.2)
|
20
|
-
tzinfo (~> 0.3.23)
|
21
|
-
activesupport (3.0.3)
|
22
|
-
arel (2.0.7)
|
23
|
-
autotest (4.4.2)
|
24
|
-
builder (2.1.2)
|
25
|
-
diff-lcs (1.1.2)
|
26
|
-
hoe (2.12.4)
|
27
|
-
rake (~> 0.8)
|
28
|
-
i18n (0.5.0)
|
29
|
-
json_pure (1.6.3)
|
30
|
-
mysql (2.8.1)
|
31
|
-
rake (0.8.7)
|
32
|
-
rspec (2.0.1)
|
33
|
-
rspec-core (~> 2.0.1)
|
34
|
-
rspec-expectations (~> 2.0.1)
|
35
|
-
rspec-mocks (~> 2.0.1)
|
36
|
-
rspec-core (2.0.1)
|
37
|
-
rspec-expectations (2.0.1)
|
38
|
-
diff-lcs (>= 1.1.2)
|
39
|
-
rspec-mocks (2.0.1)
|
40
|
-
rspec-core (~> 2.0.1)
|
41
|
-
rspec-expectations (~> 2.0.1)
|
42
|
-
standalone_migrations (0.3.0)
|
43
|
-
activerecord
|
44
|
-
rake
|
45
|
-
tzinfo (0.3.24)
|
46
|
-
|
47
|
-
PLATFORMS
|
48
|
-
ruby
|
49
|
-
|
50
|
-
DEPENDENCIES
|
51
|
-
ZenTest
|
52
|
-
autotest
|
53
|
-
geokit-premier!
|
54
|
-
mysql
|
55
|
-
rspec
|
56
|
-
standalone_migrations
|