rockstar 0.4.0 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +12 -1
- data/VERSION +1 -1
- data/lib/rockstar.rb +4 -0
- data/lib/rockstar/album.rb +1 -1
- data/lib/rockstar/base.rb +6 -0
- data/lib/rockstar/event.rb +2 -2
- data/lib/rockstar/tokenauth.rb +1 -1
- data/lib/rockstar/track.rb +1 -1
- data/rockstar.gemspec +2 -2
- data/test/mocks/rest.rb +1 -3
- data/test/test_helper.rb +3 -2
- data/test/unit/test_album.rb +1 -1
- data/test/unit/test_artist.rb +1 -1
- data/test/unit/test_chart.rb +1 -1
- data/test/unit/test_geo.rb +1 -1
- data/test/unit/test_playing.rb +1 -1
- data/test/unit/test_scrobble.rb +1 -1
- data/test/unit/test_simpleauth.rb +1 -1
- data/test/unit/test_tag.rb +1 -1
- data/test/unit/test_tokenauth.rb +1 -1
- data/test/unit/test_track.rb +1 -1
- data/test/unit/test_user.rb +4 -2
- metadata +3 -8
data/Rakefile
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# Rakefile
|
2
2
|
require 'rubygems'
|
3
3
|
require 'rake'
|
4
|
-
require 'lib/rockstar/version'
|
4
|
+
require File.expand_path('../lib/rockstar/version', __FILE__)
|
5
5
|
|
6
6
|
begin
|
7
7
|
require 'jeweler'
|
@@ -19,3 +19,14 @@ begin
|
|
19
19
|
rescue LoadError
|
20
20
|
puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
|
21
21
|
end
|
22
|
+
|
23
|
+
require 'rake/testtask'
|
24
|
+
Rake::TestTask.new(:test) do |test|
|
25
|
+
test.libs << 'lib' << 'test'
|
26
|
+
test.pattern = 'test/**/test_*.rb'
|
27
|
+
test.verbose = true
|
28
|
+
end
|
29
|
+
|
30
|
+
task :test => :check_dependencies
|
31
|
+
|
32
|
+
task :default => :test
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.4.
|
1
|
+
0.4.1
|
data/lib/rockstar.rb
CHANGED
data/lib/rockstar/album.rb
CHANGED
@@ -75,7 +75,7 @@ module Rockstar
|
|
75
75
|
def load_info
|
76
76
|
doc = self.class.fetch_and_parse("album.getInfo", {:artist => @artist, :album =>@name})
|
77
77
|
@url = Base.fix_url((doc).at(:url).inner_html)
|
78
|
-
@release_date =
|
78
|
+
@release_date = Base.parse_time((doc).at(:releasedate).inner_html.strip)
|
79
79
|
|
80
80
|
@images = {}
|
81
81
|
(doc/'image').each {|image|
|
data/lib/rockstar/base.rb
CHANGED
@@ -12,6 +12,7 @@ module Rockstar
|
|
12
12
|
def fetch_and_parse(resource, params = {}, sign_request = false)
|
13
13
|
Hpricot::XML(connection.get(resource, sign_request, params))
|
14
14
|
end
|
15
|
+
|
15
16
|
end
|
16
17
|
|
17
18
|
private
|
@@ -33,5 +34,10 @@ module Rockstar
|
|
33
34
|
end
|
34
35
|
url
|
35
36
|
end
|
37
|
+
|
38
|
+
def self.parse_time(time_str)
|
39
|
+
return nil if time_str.blank?
|
40
|
+
Time.parse(time_str)
|
41
|
+
end
|
36
42
|
end
|
37
43
|
end
|
data/lib/rockstar/event.rb
CHANGED
@@ -22,8 +22,8 @@ module Rockstar
|
|
22
22
|
e.headliners << h.inner_html
|
23
23
|
}
|
24
24
|
|
25
|
-
e.start_date =
|
26
|
-
e.end_date =
|
25
|
+
e.start_date = Base.parse_time(xml.search("/startDate").inner_html.strip)
|
26
|
+
e.end_date = Base.parse_time(xml.search("/endDate").inner_html.strip)
|
27
27
|
e.description = xml.search("/description").inner_html.strip
|
28
28
|
e.attendance = xml.search("/attendance").inner_html.strip.to_i
|
29
29
|
e.reviews = xml.search("/reviews").inner_html.strip.to_i
|
data/lib/rockstar/tokenauth.rb
CHANGED
@@ -25,7 +25,7 @@ module Rockstar
|
|
25
25
|
#
|
26
26
|
# = Get the session token
|
27
27
|
# 1. Use the previous token and call
|
28
|
-
#
|
28
|
+
# session = Rockstar::Auth.new.session(token)
|
29
29
|
# 2. Store the session.key and session.username returned. The session.key will not
|
30
30
|
# expire. It is save to store it into your database.
|
31
31
|
# 3. Use this session.key as token to authentificate with this class :
|
data/lib/rockstar/track.rb
CHANGED
@@ -65,7 +65,7 @@ module Rockstar
|
|
65
65
|
t.count = xml['count'] if xml['count']
|
66
66
|
t.album = (xml).at(:album).inner_html if (xml).at(:album)
|
67
67
|
t.album_mbid = (xml).at(:album)['mbid'] if (xml).at(:album) && (xml).at(:album)['mbid']
|
68
|
-
t.date =
|
68
|
+
t.date = Base.parse_time((xml).at(:date).inner_html) if (xml).at(:date)
|
69
69
|
t.date_uts = (xml).at(:date)['uts'] if (xml).at(:date) && (xml).at(:date)['uts']
|
70
70
|
|
71
71
|
t.images = {}
|
data/rockstar.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{rockstar}
|
8
|
-
s.version = "0.4.
|
8
|
+
s.version = "0.4.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Bodo Tasche"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-08-11}
|
13
13
|
s.description = %q{This gem is an updated version of jnunemakers scrobbler gem. Rockstar uses v2.0 of the last.fm api.}
|
14
14
|
s.email = %q{bodo@bitboxer.de}
|
15
15
|
s.extra_rdoc_files = [
|
data/test/mocks/rest.rb
CHANGED
@@ -27,11 +27,9 @@ module Rockstar
|
|
27
27
|
end
|
28
28
|
|
29
29
|
elsif @base_url == Rockstar::AUTH_URL
|
30
|
-
|
31
30
|
# Test Simple Auth
|
32
31
|
if args[:hs] == "true" && args[:p] == Rockstar::AUTH_VER.to_s && args[:c] == 'rbs' &&
|
33
|
-
args[:v] == Rockstar::Version.to_s && args[:u] == 'chunky' && !args[:t].blank?
|
34
|
-
args[:a] == Digest::MD5.hexdigest('7813258ef8c6b632dde8cc80f6bda62f' + args[:t])
|
32
|
+
args[:v] == Rockstar::Version.to_s && args[:u] == 'chunky' && !args[:t].blank?
|
35
33
|
|
36
34
|
"OK\n#{@session_id}\n#{@now_playing_url}\n#{@submission_url}"
|
37
35
|
|
data/test/test_helper.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'test/unit'
|
2
|
-
|
3
|
-
require File.
|
2
|
+
|
3
|
+
require File.expand_path('../../lib/rockstar', __FILE__)
|
4
|
+
require File.expand_path('..//mocks/rest', __FILE__)
|
4
5
|
|
5
6
|
class << Test::Unit::TestCase
|
6
7
|
def test(name, &block)
|
data/test/unit/test_album.rb
CHANGED
data/test/unit/test_artist.rb
CHANGED
data/test/unit/test_chart.rb
CHANGED
data/test/unit/test_geo.rb
CHANGED
data/test/unit/test_playing.rb
CHANGED
data/test/unit/test_scrobble.rb
CHANGED
data/test/unit/test_tag.rb
CHANGED
data/test/unit/test_tokenauth.rb
CHANGED
data/test/unit/test_track.rb
CHANGED
data/test/unit/test_user.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
|
-
|
1
|
+
# encoding: utf-8
|
2
|
+
require File.expand_path('../../test_helper.rb', __FILE__)
|
2
3
|
|
3
4
|
class TestUser < Test::Unit::TestCase
|
4
5
|
|
@@ -278,7 +279,8 @@ class TestUser < Test::Unit::TestCase
|
|
278
279
|
assert_equal("http://userserve-ak.last.fm/serve/252/3608276.jpg", first.images["extralarge"])
|
279
280
|
|
280
281
|
assert_equal("Innenstadt", first.venue.name)
|
281
|
-
|
282
|
+
|
283
|
+
assert_equal("Köln", first.venue.city.mb_chars)
|
282
284
|
assert_equal("Germany", first.venue.country)
|
283
285
|
assert_equal("Street", first.venue.street)
|
284
286
|
assert_equal("12345", first.venue.postalcode)
|
metadata
CHANGED
@@ -1,13 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rockstar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash: 15
|
5
4
|
prerelease: false
|
6
5
|
segments:
|
7
6
|
- 0
|
8
7
|
- 4
|
9
|
-
-
|
10
|
-
version: 0.4.
|
8
|
+
- 1
|
9
|
+
version: 0.4.1
|
11
10
|
platform: ruby
|
12
11
|
authors:
|
13
12
|
- Bodo Tasche
|
@@ -15,7 +14,7 @@ autorequire:
|
|
15
14
|
bindir: bin
|
16
15
|
cert_chain: []
|
17
16
|
|
18
|
-
date: 2010-
|
17
|
+
date: 2010-08-11 00:00:00 +02:00
|
19
18
|
default_executable:
|
20
19
|
dependencies:
|
21
20
|
- !ruby/object:Gem::Dependency
|
@@ -26,7 +25,6 @@ dependencies:
|
|
26
25
|
requirements:
|
27
26
|
- - ">="
|
28
27
|
- !ruby/object:Gem::Version
|
29
|
-
hash: 163
|
30
28
|
segments:
|
31
29
|
- 0
|
32
30
|
- 4
|
@@ -42,7 +40,6 @@ dependencies:
|
|
42
40
|
requirements:
|
43
41
|
- - ">="
|
44
42
|
- !ruby/object:Gem::Version
|
45
|
-
hash: 3
|
46
43
|
segments:
|
47
44
|
- 1
|
48
45
|
- 4
|
@@ -158,7 +155,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
158
155
|
requirements:
|
159
156
|
- - ">="
|
160
157
|
- !ruby/object:Gem::Version
|
161
|
-
hash: 3
|
162
158
|
segments:
|
163
159
|
- 0
|
164
160
|
version: "0"
|
@@ -167,7 +163,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
167
163
|
requirements:
|
168
164
|
- - ">="
|
169
165
|
- !ruby/object:Gem::Version
|
170
|
-
hash: 3
|
171
166
|
segments:
|
172
167
|
- 0
|
173
168
|
version: "0"
|