gowalla-ruby 0.0.1 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,40 @@
1
+ require 'helper'
2
+
3
+ class TestEvent < Test::Unit::TestCase
4
+ context 'An event' do
5
+ setup do
6
+ @id = '18568'
7
+ @spot_data = YAML::load_file File.join(File.dirname(__FILE__), "fixtures", "spot.json")
8
+ @event_data = YAML::load_file File.join(File.dirname(__FILE__), "fixtures", "event.json")
9
+ Spot.stubs(:fetch).with(@id).returns(@spot_data)
10
+ Event.stubs(:fetch).with(@id).returns(@event_data)
11
+ @event = Spot.find(@id).events
12
+ end
13
+ should "have a URL" do
14
+ assert_equal '/spots/18568', @event.url
15
+ assert_equal String, @event.url.class
16
+ end
17
+ should "have an array of activities" do
18
+ assert_equal 16, @event.activity.size.to_i
19
+ assert_equal Array, @event.activity.class
20
+ end
21
+ context "with an activity" do
22
+ setup{ @activity = @event.activity.first }
23
+ should "have a type" do
24
+ assert_equal 'checkin', @activity.type
25
+ assert_equal String, @activity.type.class
26
+ end
27
+ should "have a message" do
28
+ assert_equal 'Obligatacos', @activity.message
29
+ assert_equal String, @activity.message.class
30
+ end
31
+ should "have a user" do
32
+ assert_equal 'Phillip', @activity.user.first_name
33
+ assert_equal 'http://s3.amazonaws.com/static.gowalla.com/users/12-standard.jpg?1249405659', @activity.user.image_url
34
+ assert_equal '/users/12', @activity.user.url
35
+ assert_equal 'Bowden', @activity.user.last_name
36
+ assert_equal User, @activity.user.class
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,122 @@
1
+ require 'helper'
2
+
3
+ class TestSpot < Test::Unit::TestCase
4
+ context 'a spot' do
5
+ setup do
6
+ @id = '18568'
7
+ @spot_data = YAML::load_file File.join(File.dirname(__FILE__), "fixtures", "spot.json")
8
+ Spot.stubs(:fetch).with(@id).returns(@spot_data)
9
+ @spot = Spot.find(@id)
10
+ end
11
+ should "have a specific amount of data" do
12
+ # ensure stub API response has all the Spot fields covered, divide in half for just the getters
13
+ assert_equal @spot_data.size, (Gowalla::Spot.public_instance_methods(false).size / 2)
14
+ end
15
+ should "have an activity url" do
16
+ assert_equal '/spots/18568/events', @spot.activity_url
17
+ assert_equal String, @spot.activity_url.class
18
+ end
19
+ should "have a radius meters" do
20
+ assert_equal 50, @spot.radius_meters.to_i
21
+ assert_equal Fixnum, @spot.radius_meters.class
22
+ end
23
+ should "have a remove bookmark url" do
24
+ assert_equal nil, @spot.remove_bookmark_url
25
+ end
26
+ should "have a checkins url" do
27
+ assert_equal '/checkins?spot_id=18568', @spot.checkins_url
28
+ assert_equal String, @spot.checkins_url.class
29
+ end
30
+ should "have a checkins count" do
31
+ assert_equal 303, @spot.checkins_count.to_i
32
+ assert_equal Fixnum, @spot.checkins_count.class
33
+ end
34
+ should "have an items count" do
35
+ assert_equal 12, @spot.items_count.to_i
36
+ assert_equal Fixnum, @spot.items_count.class
37
+ end
38
+ should "have a facebook url" do
39
+ assert_equal 'http://facebook.com/TorchysTacos', @spot.facebook_url
40
+ assert_equal String, @spot.facebook_url.class
41
+ end
42
+ should "have websites" do
43
+ assert_equal ['http://www.wahoos.com/'], @spot.websites
44
+ assert_equal Array, @spot.websites.class
45
+ end
46
+ should "have founders" do
47
+ assert_equal Array, @spot.founders.class
48
+ assert_equal 11, @spot.founders.size
49
+ end
50
+ should "have a description" do
51
+ assert_equal String, @spot.description.class
52
+ end
53
+ should "have a bookmarks url" do
54
+ assert_equal String, @spot.bookmarks_url.class
55
+ end
56
+ should "have a max items count" do
57
+ assert_equal Fixnum, @spot.max_items_count.class
58
+ end
59
+ should "have a trending level" do
60
+ assert_equal Fixnum, @spot.trending_level.class
61
+ end
62
+ should "have a lat and lng" do
63
+ assert_equal Float, @spot.lat.class
64
+ assert_equal Float, @spot.lng.class
65
+ end
66
+ should "have a users count" do
67
+ assert_equal Fixnum, @spot.users_count.class
68
+ end
69
+ should "have a twitter username" do
70
+ assert_equal String, @spot.twitter_username.class
71
+ end
72
+ should "have a creator" do
73
+ assert_equal Gowalla::User, @spot.creator.class
74
+ end
75
+ should "have a list image url 320" do
76
+ assert_equal String, @spot.list_image_url_320.class
77
+ end
78
+ should "have a items url" do
79
+ assert_equal String, @spot.items_url.class
80
+ end
81
+ should "have spot categories" do
82
+ assert_equal Array, @spot.spot_categories.class
83
+ assert_equal Gowalla::Category, @spot.spot_categories.first.class
84
+ assert_equal 'Mexican', @spot.spot_categories.first.name
85
+ end
86
+ should "have a strict radius" do
87
+ assert_equal false, @spot.strict_radius
88
+ end
89
+ should "have map bounds" do
90
+ assert_equal Gowalla::MapBound, @spot.map_bounds.class
91
+ end
92
+ should "have a phone number" do
93
+ assert_equal String, @spot.phone_number.class
94
+ end
95
+ should "have a top 10" do
96
+ assert_equal Array, @spot.top_10.class
97
+ assert_equal 'Sandi', @spot.top_10.first.first_name
98
+ assert_equal 'Weldon', @spot.top_10.first.last_name
99
+ end
100
+
101
+ context "a founder" do
102
+ setup{ @founder = @spot.founders.first }
103
+ should "have a first name" do
104
+ assert_equal 'Court', @founder.first_name
105
+ assert_equal String, @founder.first_name.class
106
+ end
107
+ should "have a last name" do
108
+ assert_equal 'Simas', @founder.last_name
109
+ assert_equal String, @founder.last_name.class
110
+ end
111
+ should "have a url" do
112
+ assert_equal '/users/151', @founder.url
113
+ assert_equal String, @founder.url.class
114
+ end
115
+ should "have an image url" do
116
+ assert_equal 'http://s3.amazonaws.com/static.gowalla.com/users/151-standard.jpg?1266952532', @founder.image_url
117
+ assert_equal String, @founder.image_url.class
118
+ end
119
+ end
120
+ end
121
+
122
+ end
@@ -1,17 +1,17 @@
1
1
  require 'helper'
2
2
 
3
3
  class TestStamp < Test::Unit::TestCase
4
- context 'Stamps' do
4
+ context 'A stamp' do
5
5
  setup do
6
6
  @username = 'andyatkinson'
7
7
  @stamp_data = YAML::load_file(File.join(File.dirname(__FILE__), "fixtures", "stamps.json"))
8
8
  Stamp.stubs(:fetch).with(@username).returns(@stamp_data)
9
9
  @stamp = Stamp.find(@username).first
10
10
  end
11
- should "API response for stamp should match number of fields being stored" do
11
+ should "match number of fields being stored to API response" do
12
12
  assert_equal @stamp_data["stamps"].first.size, (Stamp.public_instance_methods(false).size / 2)
13
13
  end
14
- should "should have a spot with all fields" do
14
+ should "have a spot with all fields" do
15
15
  assert_equal 'Roosevelt High School', @stamp.spot.name
16
16
  assert_equal Address, @stamp.spot.address.class
17
17
  assert_equal "MN", @stamp.spot.address.region
@@ -99,9 +99,16 @@ class TestUser < Test::Unit::TestCase
99
99
  assert_equal Array, @user.last_checkins.class
100
100
  assert_equal Checkin, @user.last_checkins.first.class
101
101
  end
102
- should "have stamps" do
103
- assert_equal 20, @user.stamps.size
104
- assert_equal Gowalla::Stamp, @user.stamps.first.class
102
+ context "with stamps" do
103
+ setup do
104
+ @stamp_data = YAML::load_file(File.join(File.dirname(__FILE__), "fixtures", "stamps.json"))
105
+ @user_id = '19628' # user_id for @username
106
+ Stamp.stubs(:fetch).with(@user_id).returns(@stamp_data)
107
+ end
108
+ should "have stamps" do
109
+ assert_equal 20, @user.stamps.size
110
+ assert_equal Gowalla::Stamp, @user.stamps.first.class
111
+ end
105
112
  end
106
113
  end
107
114
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gowalla-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andy Atkinson
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-02-21 00:00:00 -06:00
12
+ date: 2010-03-07 00:00:00 -06:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -52,11 +52,16 @@ extra_rdoc_files:
52
52
  - LICENSE
53
53
  - README.markdown
54
54
  - lib/gowalla.rb
55
+ - lib/gowalla/activity.rb
55
56
  - lib/gowalla/address.rb
56
57
  - lib/gowalla/base.rb
58
+ - lib/gowalla/category.rb
57
59
  - lib/gowalla/checkin.rb
60
+ - lib/gowalla/event.rb
61
+ - lib/gowalla/map_bound.rb
58
62
  - lib/gowalla/spot.rb
59
63
  - lib/gowalla/stamp.rb
64
+ - lib/gowalla/top_10.rb
60
65
  - lib/gowalla/user.rb
61
66
  files:
62
67
  - LICENSE
@@ -64,15 +69,25 @@ files:
64
69
  - Rakefile
65
70
  - init.rb
66
71
  - lib/gowalla.rb
72
+ - lib/gowalla/activity.rb
67
73
  - lib/gowalla/address.rb
68
74
  - lib/gowalla/base.rb
75
+ - lib/gowalla/category.rb
69
76
  - lib/gowalla/checkin.rb
77
+ - lib/gowalla/event.rb
78
+ - lib/gowalla/map_bound.rb
70
79
  - lib/gowalla/spot.rb
71
80
  - lib/gowalla/stamp.rb
81
+ - lib/gowalla/top_10.rb
72
82
  - lib/gowalla/user.rb
83
+ - test/fixtures/event.json
84
+ - test/fixtures/spot.json
85
+ - test/fixtures/spots.json
73
86
  - test/fixtures/stamps.json
74
87
  - test/fixtures/user.json
75
88
  - test/helper.rb
89
+ - test/test_event.rb
90
+ - test/test_spot.rb
76
91
  - test/test_stamp.rb
77
92
  - test/test_user.rb
78
93
  - Manifest
@@ -111,5 +126,7 @@ signing_key:
111
126
  specification_version: 3
112
127
  summary: Gowalla API wrapper for Ruby
113
128
  test_files:
129
+ - test/test_event.rb
130
+ - test/test_spot.rb
114
131
  - test/test_stamp.rb
115
132
  - test/test_user.rb