lastfm 1.9.0 → 1.10.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/README.rdoc +4 -0
- data/lastfm.gemspec +1 -1
- data/lib/lastfm/method_category/tasteometer.rb +9 -0
- data/lib/lastfm.rb +5 -0
- data/spec/fixtures/tasteometer_compare.xml +37 -0
- data/spec/method_specs/tasteometer_spec.rb +24 -0
- metadata +9 -4
data/README.rdoc
CHANGED
@@ -52,6 +52,10 @@ It supports methods which require {authentication}[http://www.last.fm/api/authen
|
|
52
52
|
|
53
53
|
* {tag.getTopArtists}[http://www.lastfm.jp/api/show/tag.getTopArtists]
|
54
54
|
|
55
|
+
=== Tasteometer
|
56
|
+
|
57
|
+
* {tasteometer.compare}[http://www.lastfm.jp/api/show/tasteometer.compare]
|
58
|
+
|
55
59
|
=== Track
|
56
60
|
|
57
61
|
* {track.addTags}[http://www.lastfm.jp/api/show?service=304]
|
data/lastfm.gemspec
CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |gem|
|
|
12
12
|
gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
13
13
|
gem.name = %q{lastfm}
|
14
14
|
gem.require_paths = ["lib"]
|
15
|
-
gem.version = "1.
|
15
|
+
gem.version = "1.10.0"
|
16
16
|
|
17
17
|
gem.add_dependency "xml-simple"
|
18
18
|
gem.add_dependency "httparty"
|
data/lib/lastfm.rb
CHANGED
@@ -13,6 +13,7 @@ require 'lastfm/method_category/event'
|
|
13
13
|
require 'lastfm/method_category/geo'
|
14
14
|
require 'lastfm/method_category/library'
|
15
15
|
require 'lastfm/method_category/tag'
|
16
|
+
require 'lastfm/method_category/tasteometer'
|
16
17
|
require 'lastfm/method_category/track'
|
17
18
|
require 'lastfm/method_category/user'
|
18
19
|
|
@@ -67,6 +68,10 @@ class Lastfm
|
|
67
68
|
MethodCategory::Tag.new(self)
|
68
69
|
end
|
69
70
|
|
71
|
+
def tasteometer
|
72
|
+
MethodCategory::Tasteometer.new(self)
|
73
|
+
end
|
74
|
+
|
70
75
|
def track
|
71
76
|
MethodCategory::Track.new(self)
|
72
77
|
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
<?xml version="1.0"?>
|
2
|
+
<lfm status="ok">
|
3
|
+
<comparison>
|
4
|
+
<result>
|
5
|
+
<score>0.74</score>
|
6
|
+
<artists matches="43">
|
7
|
+
<artist>
|
8
|
+
<name>Radiohead</name>
|
9
|
+
<url>http://www.last.fm/music/Radiohead</url>
|
10
|
+
<image size="large">http://userserve-ak.last.fm/serve/160/169665.gif</image>
|
11
|
+
<image size="medium">http://userserve-ak.last.fm/serve/85/169665.gif</image>
|
12
|
+
<image size="small">http://userserve-ak.last.fm/serve/50/169665.gif</image>
|
13
|
+
</artist>
|
14
|
+
<artist>
|
15
|
+
<name>The Beatles</name>
|
16
|
+
<url>http://www.last.fm/music/The+Beatles</url>
|
17
|
+
<image size="large">http://userserve-ak.last.fm/serve/160/153358.jpg</image>
|
18
|
+
<image size="medium">http://userserve-ak.last.fm/serve/85/153358.jpg</image>
|
19
|
+
<image size="small">http://userserve-ak.last.fm/serve/50/153358.jpg</image>
|
20
|
+
</artist>
|
21
|
+
</artists>
|
22
|
+
</result>
|
23
|
+
<input>
|
24
|
+
<user>
|
25
|
+
<name>jwheare</name>
|
26
|
+
<url>http://www.last.fm/user/jwheare/</url>
|
27
|
+
<image size="large">http://userserve-ak.last.fm/serve/160/857567.png</image>
|
28
|
+
<image size="medium">http://userserve-ak.last.fm/serve/85/857567.png</image>
|
29
|
+
<image size="small">http://userserve-ak.last.fm/serve/50/857567.png</image>
|
30
|
+
</user>
|
31
|
+
<myspace>
|
32
|
+
<url>http://www.myspace.com/mcscrobbler</url>
|
33
|
+
<image>http://x.myspace.com/images/clear.gif</image>
|
34
|
+
</myspace>
|
35
|
+
</input>
|
36
|
+
</comparison>
|
37
|
+
</lfm>
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe '#tasteometer' do
|
4
|
+
before { init_lastfm }
|
5
|
+
|
6
|
+
it 'should return an instance of Lastfm::Tasteometer' do
|
7
|
+
@lastfm.tasteometer.should be_an_instance_of(Lastfm::MethodCategory::Tasteometer)
|
8
|
+
end
|
9
|
+
|
10
|
+
describe '#compare' do
|
11
|
+
it 'should compare users' do
|
12
|
+
@lastfm.should_receive(:request).with('tasteometer.compare', {
|
13
|
+
:type1 => 'user',
|
14
|
+
:type2 => 'user',
|
15
|
+
:value1 => 'foo',
|
16
|
+
:value2 => 'bar',
|
17
|
+
:limit => nil
|
18
|
+
}).and_return(make_response('tasteometer_compare'))
|
19
|
+
compare = @lastfm.tasteometer.compare(:type1 => 'user', :type2 => 'user', :value1 =>'foo', :value2 => 'bar')
|
20
|
+
compare['score'].should == '0.74'
|
21
|
+
compare['artists']['artist'][1]['name'].should == 'The Beatles'
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lastfm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.10.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-10-
|
12
|
+
date: 2012-10-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: xml-simple
|
@@ -115,6 +115,7 @@ files:
|
|
115
115
|
- lib/lastfm/method_category/geo.rb
|
116
116
|
- lib/lastfm/method_category/library.rb
|
117
117
|
- lib/lastfm/method_category/tag.rb
|
118
|
+
- lib/lastfm/method_category/tasteometer.rb
|
118
119
|
- lib/lastfm/method_category/track.rb
|
119
120
|
- lib/lastfm/method_category/user.rb
|
120
121
|
- lib/lastfm/response.rb
|
@@ -134,6 +135,7 @@ files:
|
|
134
135
|
- spec/fixtures/ng.xml
|
135
136
|
- spec/fixtures/ok.xml
|
136
137
|
- spec/fixtures/tag_get_top_artists.xml
|
138
|
+
- spec/fixtures/tasteometer_compare.xml
|
137
139
|
- spec/fixtures/track_get_correction.xml
|
138
140
|
- spec/fixtures/track_get_info.xml
|
139
141
|
- spec/fixtures/track_get_info_force_array.xml
|
@@ -167,6 +169,7 @@ files:
|
|
167
169
|
- spec/method_specs/geo_spec.rb
|
168
170
|
- spec/method_specs/library_spec.rb
|
169
171
|
- spec/method_specs/tag_spec.rb
|
172
|
+
- spec/method_specs/tasteometer_spec.rb
|
170
173
|
- spec/method_specs/track_spec.rb
|
171
174
|
- spec/method_specs/user_spec.rb
|
172
175
|
- spec/response_spec.rb
|
@@ -186,7 +189,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
186
189
|
version: '0'
|
187
190
|
segments:
|
188
191
|
- 0
|
189
|
-
hash: -
|
192
|
+
hash: -1211690192638560457
|
190
193
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
191
194
|
none: false
|
192
195
|
requirements:
|
@@ -195,7 +198,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
195
198
|
version: '0'
|
196
199
|
segments:
|
197
200
|
- 0
|
198
|
-
hash: -
|
201
|
+
hash: -1211690192638560457
|
199
202
|
requirements: []
|
200
203
|
rubyforge_project:
|
201
204
|
rubygems_version: 1.8.24
|
@@ -218,6 +221,7 @@ test_files:
|
|
218
221
|
- spec/fixtures/ng.xml
|
219
222
|
- spec/fixtures/ok.xml
|
220
223
|
- spec/fixtures/tag_get_top_artists.xml
|
224
|
+
- spec/fixtures/tasteometer_compare.xml
|
221
225
|
- spec/fixtures/track_get_correction.xml
|
222
226
|
- spec/fixtures/track_get_info.xml
|
223
227
|
- spec/fixtures/track_get_info_force_array.xml
|
@@ -251,6 +255,7 @@ test_files:
|
|
251
255
|
- spec/method_specs/geo_spec.rb
|
252
256
|
- spec/method_specs/library_spec.rb
|
253
257
|
- spec/method_specs/tag_spec.rb
|
258
|
+
- spec/method_specs/tasteometer_spec.rb
|
254
259
|
- spec/method_specs/track_spec.rb
|
255
260
|
- spec/method_specs/user_spec.rb
|
256
261
|
- spec/response_spec.rb
|