spec/lastfm_spec.rb in lastfm-0.2.1 vs spec/lastfm_spec.rb in lastfm-0.3.0
- old
+ new
@@ -342,6 +342,49 @@
events[0]['tickets']['ticket']['supplier'].should eql("TicketMaster")
events[0]['tickets']['ticket']['content'].should eql("http://www.last.fm/affiliate/byid/29/1584537/12/ws.artist.events.b25b959554ed76058ac220b7b2e0a026")
events[0]['tags']['tag'].should == ["pop", "dance", "female vocalists", "80s", "cher"]
end
end
+
+ describe '#user' do
+ it 'should return and instance of Lastfm::User' do
+ @lastfm.user.should be_an_instance_of(Lastfm::MethodCategory::User)
+ end
+
+ describe '#get_info' do
+ it 'should get user info' do
+ @lastfm.should_receive(:request).with('user.getInfo', {:user => 'test'}).and_return(make_response('user_get_info'))
+ info = @lastfm.user.get_info('test')
+ info['id'].should eql('1000002')
+ end
+ end
+
+ describe '#get_friends' do
+ it 'should get user\'s friends' do
+ @lastfm.should_receive(:request).with('user.getFriends', {
+ :user => 'test',
+ :recenttracks => nil,
+ :page => nil,
+ :limit => nil
+ }).and_return(make_response('user_get_friends'))
+ friends = @lastfm.user.get_friends('test')
+ friends.size.should == 1
+ friends[0]['name'].should eql('polaroide')
+ end
+ end
+
+ describe '#get_recent_tracks' do
+ it 'should get user\'s recent tracks' do
+ @lastfm.should_receive(:request).with('user.getRecentTracks', {
+ :user => 'test',
+ :page => nil,
+ :limit => nil,
+ :to => nil,
+ :from => nil
+ }).and_return(make_response('user_get_recent_tracks'))
+ tracks = @lastfm.user.get_recent_tracks('test')
+ tracks[1]['artist']['content'].should eql('Kylie Minogue')
+ tracks.size.should == 2
+ end
+ end
+ end
end