yahoo-placemaker 0.0.4.1 → 0.0.5

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.
@@ -1,4 +1,5 @@
1
1
  require "yahoo-placemaker/response"
2
+ require "yahoo-placemaker/exception"
2
3
  require "yahoo-placemaker/version"
3
4
 
4
5
  require "json"
@@ -10,6 +11,11 @@ module Yahoo
10
11
  # Main method for interacting w/ the Yahoo! Placemaker API
11
12
 
12
13
  def self.extract (text = '', options = {})
14
+
15
+ unless defined?(Yahoo::Placemaker::APP_ID)
16
+ raise Yahoo::Placemaker::Exception.new("Invalid APP_ID")
17
+ end
18
+
13
19
  result = nil
14
20
  host = 'wherein.yahooapis.com'
15
21
 
@@ -32,7 +32,7 @@ class Yahoo::Placemaker::Document
32
32
  @places << Yahoo::Placemaker::Place.new(json['placeDetails'])
33
33
  end
34
34
 
35
- if json.class == Array
35
+ if json.class == Hash
36
36
  multiple_place_details = (json.map{ |k,v| k =~ /^[\d]+$/ ? v : nil }).compact
37
37
  if multiple_place_details.any?
38
38
  multiple_place_details.each do |place|
@@ -0,0 +1,2 @@
1
+ class Yahoo::Placemaker::Exception < Exception
2
+ end
@@ -4,7 +4,7 @@ class Yahoo::Placemaker::Extents
4
4
 
5
5
  attr_accessor :center, :south_west, :north_east
6
6
 
7
- def initialize (json)
7
+ def initialize(json)
8
8
  @center = Yahoo::Placemaker::LatLng.new(json['center'])
9
9
  @south_west = Yahoo::Placemaker::LatLng.new(json['southWest'])
10
10
  @north_east = Yahoo::Placemaker::LatLng.new(json['northEast'])
@@ -1,5 +1,5 @@
1
1
  module Yahoo
2
2
  module Placemaker
3
- VERSION = "0.0.4.1"
3
+ VERSION = "0.0.5"
4
4
  end
5
5
  end
@@ -16,6 +16,13 @@ describe Yahoo::Placemaker do
16
16
  end
17
17
  end
18
18
 
19
+ it "returns two places (a country, and a city)" do
20
+ VCR.use_cassette('France Columbus Ohio') do
21
+ response = Yahoo::Placemaker.extract "Columbus Ohio France"
22
+ response.document.places.size.should == 2
23
+ end
24
+ end
25
+
19
26
  it "contains only one item in reference_list when given 'Atlanta Georgia'" do
20
27
  VCR.use_cassette('atlanta_georgia') do
21
28
  response = Yahoo::Placemaker.extract "Atlanta Georgia"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yahoo-placemaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4.1
4
+ version: 0.0.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-02-26 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70231339663460 !ruby/object:Gem::Requirement
16
+ requirement: &70294204088140 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70231339663460
24
+ version_requirements: *70294204088140
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: fakeweb
27
- requirement: &70231339662920 !ruby/object:Gem::Requirement
27
+ requirement: &70294204087600 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70231339662920
35
+ version_requirements: *70294204087600
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: vcr
38
- requirement: &70231339662340 !ruby/object:Gem::Requirement
38
+ requirement: &70294204087020 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70231339662340
46
+ version_requirements: *70294204087020
47
47
  description: Easily interact w/ the Yahoo Placemaker API
48
48
  email:
49
49
  - kyle.decot@me.com
@@ -62,6 +62,7 @@ files:
62
62
  - lib/yahoo-placemaker/ancestor.rb
63
63
  - lib/yahoo-placemaker/config.rb
64
64
  - lib/yahoo-placemaker/document.rb
65
+ - lib/yahoo-placemaker/exception.rb
65
66
  - lib/yahoo-placemaker/extents.rb
66
67
  - lib/yahoo-placemaker/geographic_scope.rb
67
68
  - lib/yahoo-placemaker/lat_lng.rb