scrobbler2 0.0.4

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.
Files changed (117) hide show
  1. data/.gitignore +1 -0
  2. data/README.rdoc +155 -0
  3. data/Rakefile +8 -0
  4. data/TODO +23 -0
  5. data/VERSION.yml +4 -0
  6. data/generators/acceptance_test/USAGE +9 -0
  7. data/generators/acceptance_test/acceptance_test_generator.rb +57 -0
  8. data/generators/acceptance_test/templates/acceptance_test.rb.erb +14 -0
  9. data/generators/resource/USAGE +8 -0
  10. data/generators/resource/resource_generator.rb +47 -0
  11. data/generators/resource/templates/resource.rb.erb +11 -0
  12. data/generators/resource/templates/spec.rb.erb +22 -0
  13. data/lib/scrobbler2.rb +23 -0
  14. data/lib/scrobbler2/album.rb +11 -0
  15. data/lib/scrobbler2/artist.rb +26 -0
  16. data/lib/scrobbler2/auth.rb +19 -0
  17. data/lib/scrobbler2/base.rb +100 -0
  18. data/lib/scrobbler2/event.rb +12 -0
  19. data/lib/scrobbler2/geo.rb +15 -0
  20. data/lib/scrobbler2/group.rb +14 -0
  21. data/lib/scrobbler2/library.rb +12 -0
  22. data/lib/scrobbler2/playlist.rb +10 -0
  23. data/lib/scrobbler2/tag.rb +18 -0
  24. data/lib/scrobbler2/track.rb +13 -0
  25. data/lib/scrobbler2/user.rb +29 -0
  26. data/lib/scrobbler2/venue.rb +12 -0
  27. data/script/console +10 -0
  28. data/script/destroy +14 -0
  29. data/script/generate +14 -0
  30. data/scrobbler2.gemspec +243 -0
  31. data/tasks/jeweler.rake +15 -0
  32. data/tasks/rcov.rake +9 -0
  33. data/tasks/rdoc.rake +7 -0
  34. data/tasks/tests.rake +10 -0
  35. data/test/acceptance/album/info_test.rb +56 -0
  36. data/test/acceptance/artist/add_tags_test.rb +14 -0
  37. data/test/acceptance/artist/events_test.rb +47 -0
  38. data/test/acceptance/artist/info_test.rb +53 -0
  39. data/test/acceptance/artist/shouts_test.rb +48 -0
  40. data/test/acceptance/artist/similar_artists_test.rb +20 -0
  41. data/test/acceptance/artist/tags_test.rb +24 -0
  42. data/test/acceptance/artist/top_albums_test.rb +34 -0
  43. data/test/acceptance/artist/top_fans.rb +19 -0
  44. data/test/acceptance/artist/top_tags.rb +18 -0
  45. data/test/acceptance/artist/top_tracks.rb +47 -0
  46. data/test/acceptance/auth/auth_test.rb +21 -0
  47. data/test/acceptance/event/info_test.rb +66 -0
  48. data/test/acceptance/event/shouts_test.rb +49 -0
  49. data/test/acceptance/geo/events_test.rb +14 -0
  50. data/test/acceptance/geo/top_artists_test.rb +16 -0
  51. data/test/acceptance/geo/top_tracks_test.rb +16 -0
  52. data/test/acceptance/group/members_test.rb +60 -0
  53. data/test/acceptance/group/weekly_album_chart_test.rb +61 -0
  54. data/test/acceptance/group/weekly_artist_chart_test.rb +54 -0
  55. data/test/acceptance/group/weekly_chart_list_test.rb +39 -0
  56. data/test/acceptance/group/weekly_track_chart_test.rb +61 -0
  57. data/test/acceptance/library/albums_test.rb +34 -0
  58. data/test/acceptance/library/artists_test.rb +33 -0
  59. data/test/acceptance/library/tracks_test.rb +33 -0
  60. data/test/acceptance/playlist/fetch_test.rb +68 -0
  61. data/test/acceptance/shared/album.rb +41 -0
  62. data/test/acceptance/shared/artist.rb +16 -0
  63. data/test/acceptance/shared/paged_result.rb +16 -0
  64. data/test/acceptance/shared/top_fans.rb +29 -0
  65. data/test/acceptance/shared/top_tags.rb +23 -0
  66. data/test/acceptance/shared/track.rb +23 -0
  67. data/test/acceptance/tag/similar_test.rb +15 -0
  68. data/test/acceptance/tag/top_albums_test.rb +37 -0
  69. data/test/acceptance/tag/top_artists_test.rb +31 -0
  70. data/test/acceptance/tag/top_tags_test.rb +32 -0
  71. data/test/acceptance/tag/top_tracks_test.rb +33 -0
  72. data/test/acceptance/tag/weekly_artist_chart.rb +54 -0
  73. data/test/acceptance/tag/weekly_chart_list.rb +39 -0
  74. data/test/acceptance/test_helper.rb +15 -0
  75. data/test/acceptance/track/info_test.rb +47 -0
  76. data/test/acceptance/track/similar_test.rb +22 -0
  77. data/test/acceptance/track/top_fans_test.rb +23 -0
  78. data/test/acceptance/track/top_tags_test.rb +24 -0
  79. data/test/acceptance/user/events_test.rb +27 -0
  80. data/test/acceptance/user/friends_test.rb +14 -0
  81. data/test/acceptance/user/info_test.rb +19 -0
  82. data/test/acceptance/user/loved_tracks_test.rb +14 -0
  83. data/test/acceptance/user/neighbours_test.rb +14 -0
  84. data/test/acceptance/user/past_events_test.rb +14 -0
  85. data/test/acceptance/user/playlists_test.rb +14 -0
  86. data/test/acceptance/user/recent_tracks_test.rb +14 -0
  87. data/test/acceptance/user/recommended_artists_test.rb +16 -0
  88. data/test/acceptance/user/recommended_events_test.rb +16 -0
  89. data/test/acceptance/user/shouts_test.rb +14 -0
  90. data/test/acceptance/user/top_albums_test.rb +14 -0
  91. data/test/acceptance/user/top_artists_test.rb +14 -0
  92. data/test/acceptance/user/top_tags_test.rb +14 -0
  93. data/test/acceptance/user/top_tracks_test.rb +14 -0
  94. data/test/acceptance/user/weekly_album_chart_test.rb +14 -0
  95. data/test/acceptance/user/weekly_artist_chart_test.rb +14 -0
  96. data/test/acceptance/user/weekly_chart_list_test.rb +14 -0
  97. data/test/acceptance/user/weekly_track_chart_test.rb +14 -0
  98. data/test/acceptance/venue/events_test.rb +14 -0
  99. data/test/acceptance/venue/past_events_test.rb +14 -0
  100. data/test/generators/test_acceptance_test_generator.rb +46 -0
  101. data/test/generators/test_generator_helper.rb +29 -0
  102. data/test/generators/test_resource_generator.rb +71 -0
  103. data/test/unit/album_spec.rb +17 -0
  104. data/test/unit/artist_spec.rb +62 -0
  105. data/test/unit/auth_spec.rb +22 -0
  106. data/test/unit/base_spec.rb +193 -0
  107. data/test/unit/event_spec.rb +23 -0
  108. data/test/unit/geo_spec.rb +36 -0
  109. data/test/unit/group_spec.rb +38 -0
  110. data/test/unit/library_spec.rb +27 -0
  111. data/test/unit/playlist_spec.rb +18 -0
  112. data/test/unit/spec_helper.rb +7 -0
  113. data/test/unit/tag_spec.rb +50 -0
  114. data/test/unit/track_spec.rb +33 -0
  115. data/test/unit/user_spec.rb +148 -0
  116. data/test/unit/venue_spec.rb +29 -0
  117. metadata +272 -0
@@ -0,0 +1,23 @@
1
+ require File.dirname(__FILE__) + "/spec_helper.rb"
2
+
3
+ describe "Event" do
4
+ before(:each) do
5
+ @event = Scrobbler2::Event.new "328799"
6
+ @event.class.stub!(:get).and_return Hash.new
7
+ end
8
+
9
+ it "should have a default query {:event => '328799'}" do
10
+ @event.instance_variable_get(:@query).should == {:event => "328799"}
11
+ end
12
+
13
+ it "info should call get with 'event.getInfo' with query params :event => @event" do
14
+ @event.class.should_receive(:get).with('event.getinfo', {:event => "328799"}, {}).and_return Hash.new
15
+ @event.info
16
+ end
17
+
18
+ it "shouts should call get with 'event.getShouts' with query params :event => @event" do
19
+ @event.class.should_receive(:get).with('event.getshouts', {:event => "328799"}, {}).and_return Hash.new
20
+ @event.shouts
21
+ end
22
+
23
+ end
@@ -0,0 +1,36 @@
1
+ require File.dirname(__FILE__) + "/spec_helper.rb"
2
+
3
+ describe "Geo" do
4
+ before(:each) do
5
+ @geo = Scrobbler2::Geo.new
6
+ @geo.class.stub!(:get).and_return Hash.new
7
+ end
8
+
9
+ it "should have no default query" do
10
+ @geo.instance_variable_get(:@query).should == {}
11
+ end
12
+
13
+
14
+
15
+ it "events should call get with 'geo.getevents'" do
16
+ @geo.class.should_receive(:get).with('geo.getevents', anything(), anything()).and_return Hash.new
17
+ @geo.events
18
+ end
19
+
20
+
21
+
22
+ it "top_artists should call get with 'geo.gettop_artists'" do
23
+ @geo.class.should_receive(:get).with('geo.gettopartists', anything(), anything()).and_return Hash.new
24
+ @geo.top_artists
25
+ end
26
+
27
+
28
+
29
+ it "top_tracks should call get with 'geo.gettop_tracks'" do
30
+ @geo.class.should_receive(:get).with('geo.gettoptracks', anything(), anything()).and_return Hash.new
31
+ @geo.top_tracks
32
+ end
33
+
34
+
35
+
36
+ end
@@ -0,0 +1,38 @@
1
+ require File.dirname(__FILE__) + "/spec_helper.rb"
2
+
3
+ describe "Group" do
4
+ before(:each) do
5
+ @group = Scrobbler2::Group.new "Stubborn Tiny Lights"
6
+ @group.class.stub!(:get).and_return Hash.new
7
+ end
8
+
9
+ it "should have a default query {:group => 'Stubborn Tiny Lights'}" do
10
+ @group.instance_variable_get(:@query).should == {:group => 'Stubborn Tiny Lights'}
11
+ end
12
+
13
+ it "members should call get with 'group.getMembers' with query params :group => @group" do
14
+ @group.class.should_receive(:get).with('group.getmembers', {:group => 'Stubborn Tiny Lights'}, {}).and_return Hash.new
15
+ @group.members
16
+ end
17
+
18
+ it "weekly_artist_chart should call get with 'group.getShouts' with query params :group => @group" do
19
+ @group.class.should_receive(:get).with('group.getweeklyartistchart', {:group => 'Stubborn Tiny Lights'}, {}).and_return Hash.new
20
+ @group.weekly_artist_chart
21
+ end
22
+
23
+ it "weekly_album_chart should call get with 'group.getShouts' with query params :group => @group" do
24
+ @group.class.should_receive(:get).with('group.getweeklyalbumchart', {:group => 'Stubborn Tiny Lights'}, {}).and_return Hash.new
25
+ @group.weekly_album_chart
26
+ end
27
+
28
+ it "weekly_track_chart should call get with 'group.getShouts' with query params :group => @group" do
29
+ @group.class.should_receive(:get).with('group.getweeklytrackchart', {:group => 'Stubborn Tiny Lights'}, {}).and_return Hash.new
30
+ @group.weekly_track_chart
31
+ end
32
+
33
+ it "weekly_chart_list should call get with 'group.getShouts' with query params :group => @group" do
34
+ @group.class.should_receive(:get).with('group.getweeklychartlist', {:group => 'Stubborn Tiny Lights'}, {}).and_return Hash.new
35
+ @group.weekly_chart_list
36
+ end
37
+
38
+ end
@@ -0,0 +1,27 @@
1
+ require File.dirname(__FILE__) + "/spec_helper.rb"
2
+
3
+ describe "Library" do
4
+ before(:each) do
5
+ @library = Scrobbler2::Library.new "gingerhendrix"
6
+ @library.class.stub!(:get).and_return Hash.new
7
+ end
8
+
9
+ it "should have a default query {:user => 'gingerhendrix'}" do
10
+ @library.instance_variable_get(:@query).should == {:user => 'gingerhendrix'}
11
+ end
12
+
13
+ it "tracks should call get with 'library.getTracks' with query params :user => @user" do
14
+ @library.class.should_receive(:get).with('library.gettracks', {:user => 'gingerhendrix'}, {}).and_return Hash.new
15
+ @library.tracks
16
+ end
17
+
18
+ it "artists should call get with 'library.getArtists' with query params :user => @user" do
19
+ @library.class.should_receive(:get).with('library.getartists', {:user => 'gingerhendrix'}, {}).and_return Hash.new
20
+ @library.artists
21
+ end
22
+
23
+ it "tracks should call get with 'library.getTracks' with query params :user => @user" do
24
+ @library.class.should_receive(:get).with('library.getalbums', {:user => 'gingerhendrix'}, {}).and_return Hash.new
25
+ @library.albums
26
+ end
27
+ end
@@ -0,0 +1,18 @@
1
+ require File.dirname(__FILE__) + "/spec_helper.rb"
2
+
3
+ describe "Playlist" do
4
+ before(:each) do
5
+ @playlist = Scrobbler2::Playlist.new "lastfm://playlist/album/2026126"
6
+ @playlist.class.stub!(:get).and_return Hash.new
7
+ end
8
+
9
+ it "should have a default query {:playlistURL => 'lastfm://playlist/album/2026126'}" do
10
+ @playlist.instance_variable_get(:@query).should == {:playlistURL => 'lastfm://playlist/album/2026126'}
11
+ end
12
+
13
+ it "fetch should call get with 'playlist.fetch' with query params :playlistURL => @url" do
14
+ @playlist.class.should_receive(:get).with('playlist.fetch', {:playlistURL => 'lastfm://playlist/album/2026126'}, {}).and_return Hash.new
15
+ @playlist.fetch
16
+ end
17
+
18
+ end
@@ -0,0 +1,7 @@
1
+ require 'rubygems'
2
+ require 'spec'
3
+ require 'spec/interop/test'
4
+
5
+ $: << File.dirname(__FILE__) + "/../../lib/"
6
+
7
+ require 'scrobbler2'
@@ -0,0 +1,50 @@
1
+ require File.dirname(__FILE__) + "/spec_helper.rb"
2
+
3
+ describe "Tag" do
4
+ before(:each) do
5
+ @tag = Scrobbler2::Tag.new "Disco"
6
+ @tag.class.stub!(:get).and_return Hash.new
7
+ end
8
+
9
+ it "should have a default query {:tag => 'Disco'}" do
10
+ @tag.instance_variable_get(:@query).should == {:tag => 'Disco'}
11
+ end
12
+
13
+ it "similar should call get with 'tag.getSimilar' with query params :tag => @tag" do
14
+ @tag.class.should_receive(:get).with('tag.getsimilar', {:tag => "Disco"}, {}).and_return Hash.new
15
+ @tag.similar
16
+ end
17
+
18
+ it "top_albums should call get with 'tag.getTopAlbums' with query params :tag => @tag" do
19
+ @tag.class.should_receive(:get).with('tag.gettopalbums', {:tag => "Disco"}, {}).and_return Hash.new
20
+ @tag.top_albums
21
+ end
22
+
23
+ it "top_artists should call get with 'tag.getTopArtists' with query params :tag => @tag" do
24
+ @tag.class.should_receive(:get).with('tag.gettopartists', {:tag => "Disco"}, {}).and_return Hash.new
25
+ @tag.top_artists
26
+ end
27
+
28
+ it "top_tracks should call get with 'tag.getTopTracks' with query params :tag => @tag" do
29
+ @tag.class.should_receive(:get).with('tag.gettoptracks', {:tag => "Disco"}, {}).and_return Hash.new
30
+ @tag.top_tracks
31
+ end
32
+
33
+ it "top_tags should call get with 'tag.getTopTags' with query params :tag => @tag" do
34
+ @tag.class.should_receive(:get).with('tag.gettoptags', {:tag => "Disco"}, {}).and_return Hash.new
35
+ @tag.top_tags
36
+ end
37
+
38
+ it "weekly_artist_chart should call get with 'tag.getWeeklyArtistChart' with query params :tag => @tag" do
39
+ @tag.class.should_receive(:get).with('tag.getweeklyartistchart', {:tag => "Disco"}, {}).and_return Hash.new
40
+ @tag.weekly_artist_chart
41
+ end
42
+
43
+
44
+ it "weekly_chart_list should call get with 'tag.getWeeklyChartList' with query params :tag => @tag" do
45
+ @tag.class.should_receive(:get).with('tag.getweeklychartlist', {:tag => "Disco"}, {}).and_return Hash.new
46
+ @tag.weekly_chart_list
47
+ end
48
+
49
+ end
50
+
@@ -0,0 +1,33 @@
1
+ require File.dirname(__FILE__) + "/spec_helper.rb"
2
+
3
+ describe "Track" do
4
+ before(:each) do
5
+ @track = Scrobbler2::Track.new "Metallica", "Blackened"
6
+ @track.class.stub!(:get).and_return Hash.new
7
+ end
8
+
9
+ it "should have a default query {:artist => 'Metallica', :track => 'Blackened'}" do
10
+ @track.instance_variable_get(:@query).should == {:artist => 'Metallica', :track => 'Blackened'}
11
+ end
12
+
13
+ it "info should call get with 'track.getInfo' with query params :artist => @artist, :track => @album" do
14
+ @track.class.should_receive(:get).with('track.getinfo', {:artist => "Metallica", :track => "Blackened"}, {}).and_return Hash.new
15
+ @track.info
16
+ end
17
+
18
+ it "similar should call get with 'track.getSimilar' with query params :artist => @artist, :track => @album" do
19
+ @track.class.should_receive(:get).with('track.getsimilar', {:artist => "Metallica", :track => "Blackened"}, {}).and_return Hash.new
20
+ @track.similar
21
+ end
22
+
23
+ it "top_fans should call get with 'track.getTopFans' with query params :artist => @artist, :track => @album" do
24
+ @track.class.should_receive(:get).with('track.gettopfans', {:artist => "Metallica", :track => "Blackened"}, {}).and_return Hash.new
25
+ @track.top_fans
26
+ end
27
+
28
+ it "top_tags should call get with 'track.getTopTags' with query params :artist => @artist, :track => @album" do
29
+ @track.class.should_receive(:get).with('track.gettoptags', {:artist => "Metallica", :track => "Blackened"}, {}).and_return Hash.new
30
+ @track.top_tags
31
+ end
32
+
33
+ end
@@ -0,0 +1,148 @@
1
+ require File.dirname(__FILE__) + "/spec_helper.rb"
2
+
3
+ describe "User" do
4
+ before(:each) do
5
+ @user = Scrobbler2::User.new "username"
6
+ @user.class.stub!(:get).and_return Hash.new
7
+ end
8
+
9
+ it "should have a default query {:user => username}" do
10
+ @user.instance_variable_get(:@query).should == {:user => "username"}
11
+ end
12
+
13
+
14
+
15
+ it "events should call get with 'user.getevents'" do
16
+ @user.class.should_receive(:get).with('user.getevents', anything(), anything()).and_return Hash.new
17
+ @user.events
18
+ end
19
+
20
+
21
+
22
+ it "info should call get with 'user.getinfo'" do
23
+ @user.class.should_receive(:get_with_auth).with('user.getinfo', anything(), anything()).and_return Hash.new
24
+ @user.info
25
+ end
26
+
27
+
28
+
29
+ it "friends should call get with 'user.getfriends'" do
30
+ @user.class.should_receive(:get).with('user.getfriends', anything(), anything()).and_return Hash.new
31
+ @user.friends
32
+ end
33
+
34
+
35
+
36
+ it "loved_tracks should call get with 'user.getloved_tracks'" do
37
+ @user.class.should_receive(:get).with('user.getlovedtracks', anything(), anything()).and_return Hash.new
38
+ @user.loved_tracks
39
+ end
40
+
41
+
42
+
43
+ it "neighbours should call get with 'user.getneighbours'" do
44
+ @user.class.should_receive(:get).with('user.getneighbours', anything(), anything()).and_return Hash.new
45
+ @user.neighbours
46
+ end
47
+
48
+
49
+
50
+ it "past_events should call get with 'user.getpastevents'" do
51
+ @user.class.should_receive(:get).with('user.getpastevents', anything(), anything()).and_return Hash.new
52
+ @user.past_events
53
+ end
54
+
55
+
56
+
57
+ it "playlists should call get with 'user.getplaylists'" do
58
+ @user.class.should_receive(:get).with('user.getplaylists', anything(), anything()).and_return Hash.new
59
+ @user.playlists
60
+ end
61
+
62
+
63
+
64
+ it "recent_tracks should call get with 'user.getrecenttracks'" do
65
+ @user.class.should_receive(:get).with('user.getrecenttracks', anything(), anything()).and_return Hash.new
66
+ @user.recent_tracks
67
+ end
68
+
69
+
70
+
71
+ it "recommended_artists should call get with 'user.getrecommendedartists'" do
72
+ @user.class.should_receive(:get_with_auth).with('user.getrecommendedartists', anything(), anything()).and_return Hash.new
73
+ @user.recommended_artists
74
+ end
75
+
76
+
77
+
78
+ it "recommended_events should call get with 'user.getrecommendedevents'" do
79
+ @user.class.should_receive(:get_with_auth).with('user.getrecommendedevents', anything(), anything()).and_return Hash.new
80
+ @user.recommended_events
81
+ end
82
+
83
+
84
+
85
+ it "shouts should call get with 'user.getshouts'" do
86
+ @user.class.should_receive(:get).with('user.getshouts', anything(), anything()).and_return Hash.new
87
+ @user.shouts
88
+ end
89
+
90
+
91
+
92
+ it "top_albums should call get with 'user.gettop_albums'" do
93
+ @user.class.should_receive(:get).with('user.gettopalbums', anything(), anything()).and_return Hash.new
94
+ @user.top_albums
95
+ end
96
+
97
+
98
+
99
+ it "top_artists should call get with 'user.gettop_artists'" do
100
+ @user.class.should_receive(:get).with('user.gettopartists', anything(), anything()).and_return Hash.new
101
+ @user.top_artists
102
+ end
103
+
104
+
105
+
106
+ it "top_tags should call get with 'user.gettop_tags'" do
107
+ @user.class.should_receive(:get).with('user.gettoptags', anything(), anything()).and_return Hash.new
108
+ @user.top_tags
109
+ end
110
+
111
+
112
+
113
+ it "top_tracks should call get with 'user.gettop_tracks'" do
114
+ @user.class.should_receive(:get).with('user.gettoptracks', anything(), anything()).and_return Hash.new
115
+ @user.top_tracks
116
+ end
117
+
118
+
119
+
120
+ it "weekly_album_chart should call get with 'user.getweekly_album_chart'" do
121
+ @user.class.should_receive(:get).with('user.getweeklyalbumchart', anything(), anything()).and_return Hash.new
122
+ @user.weekly_album_chart
123
+ end
124
+
125
+
126
+
127
+ it "weekly_artist_chart should call get with 'user.getweekly_artist_chart'" do
128
+ @user.class.should_receive(:get).with('user.getweeklyartistchart', anything(), anything()).and_return Hash.new
129
+ @user.weekly_artist_chart
130
+ end
131
+
132
+
133
+
134
+ it "weekly_chart_list should call get with 'user.getweekly_chart_list'" do
135
+ @user.class.should_receive(:get).with('user.getweeklychartlist', anything(), anything()).and_return Hash.new
136
+ @user.weekly_chart_list
137
+ end
138
+
139
+
140
+
141
+ it "weekly_track_chart should call get with 'user.getweekly_track_chart'" do
142
+ @user.class.should_receive(:get).with('user.getweeklytrackchart', anything(), anything()).and_return Hash.new
143
+ @user.weekly_track_chart
144
+ end
145
+
146
+
147
+
148
+ end
@@ -0,0 +1,29 @@
1
+ require File.dirname(__FILE__) + "/spec_helper.rb"
2
+
3
+ describe "Venue" do
4
+ before(:each) do
5
+ @venue = Scrobbler2::Venue.new "8929268"
6
+ @venue.class.stub!(:get).and_return Hash.new
7
+ end
8
+
9
+ it "should have a default query {:venue => id}" do
10
+ @venue.instance_variable_get(:@query).should == {:venue => "8929268"}
11
+ end
12
+
13
+
14
+
15
+ it "events should call get with 'venue.getevents'" do
16
+ @venue.class.should_receive(:get).with('venue.getevents', anything(), anything()).and_return Hash.new
17
+ @venue.events
18
+ end
19
+
20
+
21
+
22
+ it "past_events should call get with 'venue.getpastevents'" do
23
+ @venue.class.should_receive(:get).with('venue.getpastevents', anything(), anything()).and_return Hash.new
24
+ @venue.past_events
25
+ end
26
+
27
+
28
+
29
+ end
metadata ADDED
@@ -0,0 +1,272 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: scrobbler2
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.4
5
+ platform: ruby
6
+ authors:
7
+ - Gareth Andrew
8
+ - Kurt Schrader
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2010-01-12 00:00:00 +00:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: httparty
18
+ type: :runtime
19
+ version_requirement:
20
+ version_requirements: !ruby/object:Gem::Requirement
21
+ requirements:
22
+ - - ">="
23
+ - !ruby/object:Gem::Version
24
+ version: 0.2.2
25
+ version:
26
+ - !ruby/object:Gem::Dependency
27
+ name: activesupport
28
+ type: :runtime
29
+ version_requirement:
30
+ version_requirements: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: "0"
35
+ version:
36
+ description: A ruby library for accessing the last.fm v2 webservices
37
+ email: gingerhendrix@gmail.com
38
+ executables: []
39
+
40
+ extensions: []
41
+
42
+ extra_rdoc_files:
43
+ - README.rdoc
44
+ - TODO
45
+ files:
46
+ - .gitignore
47
+ - README.rdoc
48
+ - Rakefile
49
+ - TODO
50
+ - VERSION.yml
51
+ - generators/acceptance_test/USAGE
52
+ - generators/acceptance_test/acceptance_test_generator.rb
53
+ - generators/acceptance_test/templates/acceptance_test.rb.erb
54
+ - generators/resource/USAGE
55
+ - generators/resource/resource_generator.rb
56
+ - generators/resource/templates/resource.rb.erb
57
+ - generators/resource/templates/spec.rb.erb
58
+ - lib/scrobbler2.rb
59
+ - lib/scrobbler2/album.rb
60
+ - lib/scrobbler2/artist.rb
61
+ - lib/scrobbler2/auth.rb
62
+ - lib/scrobbler2/base.rb
63
+ - lib/scrobbler2/event.rb
64
+ - lib/scrobbler2/geo.rb
65
+ - lib/scrobbler2/group.rb
66
+ - lib/scrobbler2/library.rb
67
+ - lib/scrobbler2/playlist.rb
68
+ - lib/scrobbler2/tag.rb
69
+ - lib/scrobbler2/track.rb
70
+ - lib/scrobbler2/user.rb
71
+ - lib/scrobbler2/venue.rb
72
+ - script/console
73
+ - script/destroy
74
+ - script/generate
75
+ - scrobbler2.gemspec
76
+ - tasks/jeweler.rake
77
+ - tasks/rcov.rake
78
+ - tasks/rdoc.rake
79
+ - tasks/tests.rake
80
+ - test/acceptance/album/info_test.rb
81
+ - test/acceptance/artist/add_tags_test.rb
82
+ - test/acceptance/artist/events_test.rb
83
+ - test/acceptance/artist/info_test.rb
84
+ - test/acceptance/artist/shouts_test.rb
85
+ - test/acceptance/artist/similar_artists_test.rb
86
+ - test/acceptance/artist/tags_test.rb
87
+ - test/acceptance/artist/top_albums_test.rb
88
+ - test/acceptance/artist/top_fans.rb
89
+ - test/acceptance/artist/top_tags.rb
90
+ - test/acceptance/artist/top_tracks.rb
91
+ - test/acceptance/auth/auth_test.rb
92
+ - test/acceptance/event/info_test.rb
93
+ - test/acceptance/event/shouts_test.rb
94
+ - test/acceptance/geo/events_test.rb
95
+ - test/acceptance/geo/top_artists_test.rb
96
+ - test/acceptance/geo/top_tracks_test.rb
97
+ - test/acceptance/group/members_test.rb
98
+ - test/acceptance/group/weekly_album_chart_test.rb
99
+ - test/acceptance/group/weekly_artist_chart_test.rb
100
+ - test/acceptance/group/weekly_chart_list_test.rb
101
+ - test/acceptance/group/weekly_track_chart_test.rb
102
+ - test/acceptance/library/albums_test.rb
103
+ - test/acceptance/library/artists_test.rb
104
+ - test/acceptance/library/tracks_test.rb
105
+ - test/acceptance/playlist/fetch_test.rb
106
+ - test/acceptance/shared/album.rb
107
+ - test/acceptance/shared/artist.rb
108
+ - test/acceptance/shared/paged_result.rb
109
+ - test/acceptance/shared/top_fans.rb
110
+ - test/acceptance/shared/top_tags.rb
111
+ - test/acceptance/shared/track.rb
112
+ - test/acceptance/tag/similar_test.rb
113
+ - test/acceptance/tag/top_albums_test.rb
114
+ - test/acceptance/tag/top_artists_test.rb
115
+ - test/acceptance/tag/top_tags_test.rb
116
+ - test/acceptance/tag/top_tracks_test.rb
117
+ - test/acceptance/tag/weekly_artist_chart.rb
118
+ - test/acceptance/tag/weekly_chart_list.rb
119
+ - test/acceptance/test_helper.rb
120
+ - test/acceptance/track/info_test.rb
121
+ - test/acceptance/track/similar_test.rb
122
+ - test/acceptance/track/top_fans_test.rb
123
+ - test/acceptance/track/top_tags_test.rb
124
+ - test/acceptance/user/events_test.rb
125
+ - test/acceptance/user/friends_test.rb
126
+ - test/acceptance/user/info_test.rb
127
+ - test/acceptance/user/loved_tracks_test.rb
128
+ - test/acceptance/user/neighbours_test.rb
129
+ - test/acceptance/user/past_events_test.rb
130
+ - test/acceptance/user/playlists_test.rb
131
+ - test/acceptance/user/recent_tracks_test.rb
132
+ - test/acceptance/user/recommended_artists_test.rb
133
+ - test/acceptance/user/recommended_events_test.rb
134
+ - test/acceptance/user/shouts_test.rb
135
+ - test/acceptance/user/top_albums_test.rb
136
+ - test/acceptance/user/top_artists_test.rb
137
+ - test/acceptance/user/top_tags_test.rb
138
+ - test/acceptance/user/top_tracks_test.rb
139
+ - test/acceptance/user/weekly_album_chart_test.rb
140
+ - test/acceptance/user/weekly_artist_chart_test.rb
141
+ - test/acceptance/user/weekly_chart_list_test.rb
142
+ - test/acceptance/user/weekly_track_chart_test.rb
143
+ - test/acceptance/venue/events_test.rb
144
+ - test/acceptance/venue/past_events_test.rb
145
+ - test/generators/test_acceptance_test_generator.rb
146
+ - test/generators/test_generator_helper.rb
147
+ - test/generators/test_resource_generator.rb
148
+ - test/unit/album_spec.rb
149
+ - test/unit/artist_spec.rb
150
+ - test/unit/auth_spec.rb
151
+ - test/unit/base_spec.rb
152
+ - test/unit/event_spec.rb
153
+ - test/unit/geo_spec.rb
154
+ - test/unit/group_spec.rb
155
+ - test/unit/library_spec.rb
156
+ - test/unit/playlist_spec.rb
157
+ - test/unit/spec_helper.rb
158
+ - test/unit/tag_spec.rb
159
+ - test/unit/track_spec.rb
160
+ - test/unit/user_spec.rb
161
+ - test/unit/venue_spec.rb
162
+ has_rdoc: true
163
+ homepage: http://github.com/gingerhendrix/scrobbler2
164
+ licenses: []
165
+
166
+ post_install_message:
167
+ rdoc_options:
168
+ - --charset=UTF-8
169
+ require_paths:
170
+ - lib
171
+ required_ruby_version: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ version: "0"
176
+ version:
177
+ required_rubygems_version: !ruby/object:Gem::Requirement
178
+ requirements:
179
+ - - ">="
180
+ - !ruby/object:Gem::Version
181
+ version: "0"
182
+ version:
183
+ requirements: []
184
+
185
+ rubyforge_project:
186
+ rubygems_version: 1.3.5
187
+ signing_key:
188
+ specification_version: 3
189
+ summary: A ruby library for accessing the last.fm v2 webservices
190
+ test_files:
191
+ - test/acceptance/album/info_test.rb
192
+ - test/acceptance/artist/add_tags_test.rb
193
+ - test/acceptance/artist/events_test.rb
194
+ - test/acceptance/artist/info_test.rb
195
+ - test/acceptance/artist/shouts_test.rb
196
+ - test/acceptance/artist/similar_artists_test.rb
197
+ - test/acceptance/artist/tags_test.rb
198
+ - test/acceptance/artist/top_albums_test.rb
199
+ - test/acceptance/artist/top_fans.rb
200
+ - test/acceptance/artist/top_tags.rb
201
+ - test/acceptance/artist/top_tracks.rb
202
+ - test/acceptance/auth/auth_test.rb
203
+ - test/acceptance/event/info_test.rb
204
+ - test/acceptance/event/shouts_test.rb
205
+ - test/acceptance/geo/events_test.rb
206
+ - test/acceptance/geo/top_artists_test.rb
207
+ - test/acceptance/geo/top_tracks_test.rb
208
+ - test/acceptance/group/members_test.rb
209
+ - test/acceptance/group/weekly_album_chart_test.rb
210
+ - test/acceptance/group/weekly_artist_chart_test.rb
211
+ - test/acceptance/group/weekly_chart_list_test.rb
212
+ - test/acceptance/group/weekly_track_chart_test.rb
213
+ - test/acceptance/library/albums_test.rb
214
+ - test/acceptance/library/artists_test.rb
215
+ - test/acceptance/library/tracks_test.rb
216
+ - test/acceptance/playlist/fetch_test.rb
217
+ - test/acceptance/shared/album.rb
218
+ - test/acceptance/shared/artist.rb
219
+ - test/acceptance/shared/paged_result.rb
220
+ - test/acceptance/shared/top_fans.rb
221
+ - test/acceptance/shared/top_tags.rb
222
+ - test/acceptance/shared/track.rb
223
+ - test/acceptance/tag/similar_test.rb
224
+ - test/acceptance/tag/top_albums_test.rb
225
+ - test/acceptance/tag/top_artists_test.rb
226
+ - test/acceptance/tag/top_tags_test.rb
227
+ - test/acceptance/tag/top_tracks_test.rb
228
+ - test/acceptance/tag/weekly_artist_chart.rb
229
+ - test/acceptance/tag/weekly_chart_list.rb
230
+ - test/acceptance/test_helper.rb
231
+ - test/acceptance/track/info_test.rb
232
+ - test/acceptance/track/similar_test.rb
233
+ - test/acceptance/track/top_fans_test.rb
234
+ - test/acceptance/track/top_tags_test.rb
235
+ - test/acceptance/user/events_test.rb
236
+ - test/acceptance/user/friends_test.rb
237
+ - test/acceptance/user/info_test.rb
238
+ - test/acceptance/user/loved_tracks_test.rb
239
+ - test/acceptance/user/neighbours_test.rb
240
+ - test/acceptance/user/past_events_test.rb
241
+ - test/acceptance/user/playlists_test.rb
242
+ - test/acceptance/user/recent_tracks_test.rb
243
+ - test/acceptance/user/recommended_artists_test.rb
244
+ - test/acceptance/user/recommended_events_test.rb
245
+ - test/acceptance/user/shouts_test.rb
246
+ - test/acceptance/user/top_albums_test.rb
247
+ - test/acceptance/user/top_artists_test.rb
248
+ - test/acceptance/user/top_tags_test.rb
249
+ - test/acceptance/user/top_tracks_test.rb
250
+ - test/acceptance/user/weekly_album_chart_test.rb
251
+ - test/acceptance/user/weekly_artist_chart_test.rb
252
+ - test/acceptance/user/weekly_chart_list_test.rb
253
+ - test/acceptance/user/weekly_track_chart_test.rb
254
+ - test/acceptance/venue/events_test.rb
255
+ - test/acceptance/venue/past_events_test.rb
256
+ - test/generators/test_acceptance_test_generator.rb
257
+ - test/generators/test_generator_helper.rb
258
+ - test/generators/test_resource_generator.rb
259
+ - test/unit/album_spec.rb
260
+ - test/unit/artist_spec.rb
261
+ - test/unit/auth_spec.rb
262
+ - test/unit/base_spec.rb
263
+ - test/unit/event_spec.rb
264
+ - test/unit/geo_spec.rb
265
+ - test/unit/group_spec.rb
266
+ - test/unit/library_spec.rb
267
+ - test/unit/playlist_spec.rb
268
+ - test/unit/spec_helper.rb
269
+ - test/unit/tag_spec.rb
270
+ - test/unit/track_spec.rb
271
+ - test/unit/user_spec.rb
272
+ - test/unit/venue_spec.rb