notu 0.2.2 → 0.3.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.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/lib/notu.rb +1 -0
- data/lib/notu/library.rb +4 -0
- data/lib/notu/listing.rb +3 -1
- data/lib/notu/loved_tracks.rb +0 -1
- data/lib/notu/most_played_tracks.rb +0 -1
- data/lib/notu/played_tracks.rb +26 -0
- data/notu.gemspec +2 -2
- data/spec/cassettes/Notu_PlayedTracks/_each/returns_nil.yml +3925 -0
- data/spec/cassettes/Notu_PlayedTracks/_each/returns_some_tracks.yml +7845 -0
- data/spec/cassettes/Notu_PlayedTracks/_page_urls/is_correct.yml +7843 -0
- data/spec/cassettes/Notu_PlayedTracks/_pages_count/is_correct.yml +3923 -0
- data/spec/notu/library_spec.rb +8 -0
- data/spec/notu/loved_tracks_spec.rb +1 -1
- data/spec/notu/played_tracks_spec.rb +62 -0
- metadata +17 -6
data/spec/notu/library_spec.rb
CHANGED
@@ -46,6 +46,14 @@ describe Notu::Library do
|
|
46
46
|
|
47
47
|
end
|
48
48
|
|
49
|
+
describe '#played_tracks' do
|
50
|
+
|
51
|
+
it 'returns a PlayedTrack object' do
|
52
|
+
expect(library.played_tracks).to be_a(Notu::PlayedTracks)
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
56
|
+
|
49
57
|
describe '#username' do
|
50
58
|
|
51
59
|
it 'is username set at initialization' do
|
@@ -0,0 +1,62 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Notu::PlayedTracks, :vcr do
|
4
|
+
|
5
|
+
let(:library) { Notu::Library.new(username: 'alexistoulotte') }
|
6
|
+
let(:played_tracks) { Notu::PlayedTracks.new(library) }
|
7
|
+
|
8
|
+
describe '#each' do
|
9
|
+
|
10
|
+
it 'returns some tracks' do
|
11
|
+
tracks = played_tracks.take(42)
|
12
|
+
expect(tracks.size).to eq(42)
|
13
|
+
tracks.each do |track|
|
14
|
+
expect(track).to be_a(Notu::Track)
|
15
|
+
expect(track.artist).to be_present
|
16
|
+
expect(track.plays_count).to be_nil
|
17
|
+
expect(track.title).to be_present
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'returns nil' do
|
22
|
+
allow(played_tracks).to receive(:pages_count).and_return(1)
|
23
|
+
expect(played_tracks.each {}).to be_nil
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
|
28
|
+
describe '#page_urls' do
|
29
|
+
|
30
|
+
it 'is correct' do
|
31
|
+
urls = played_tracks.page_urls
|
32
|
+
expect(urls.size).to eq(played_tracks.pages_count)
|
33
|
+
expect(urls).to include('http://www.last.fm/user/alexistoulotte/library?page=12')
|
34
|
+
expect(urls).to include('http://www.last.fm/user/alexistoulotte/library?page=3')
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
describe '#pages_count' do
|
40
|
+
|
41
|
+
it 'is correct' do
|
42
|
+
expect(played_tracks.pages_count).to be_within(500).of(1500)
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
46
|
+
|
47
|
+
describe '#params' do
|
48
|
+
|
49
|
+
it 'is an empty hash' do
|
50
|
+
expect(played_tracks.params).to eq({})
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
54
|
+
|
55
|
+
describe '#path' do
|
56
|
+
|
57
|
+
it 'is "library"' do
|
58
|
+
expect(played_tracks.path).to eq('library')
|
59
|
+
end
|
60
|
+
|
61
|
+
end
|
62
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: notu
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexis Toulotte
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-09-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -59,7 +59,7 @@ dependencies:
|
|
59
59
|
version: 3.2.0
|
60
60
|
- - "<"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version:
|
62
|
+
version: 7.0.0
|
63
63
|
type: :development
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -69,7 +69,7 @@ dependencies:
|
|
69
69
|
version: 3.2.0
|
70
70
|
- - "<"
|
71
71
|
- !ruby/object:Gem::Version
|
72
|
-
version:
|
72
|
+
version: 7.0.0
|
73
73
|
- !ruby/object:Gem::Dependency
|
74
74
|
name: rake
|
75
75
|
requirement: !ruby/object:Gem::Requirement
|
@@ -99,7 +99,7 @@ dependencies:
|
|
99
99
|
version: 3.1.0
|
100
100
|
- - "<"
|
101
101
|
- !ruby/object:Gem::Version
|
102
|
-
version: 3.
|
102
|
+
version: 3.4.0
|
103
103
|
type: :development
|
104
104
|
prerelease: false
|
105
105
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -109,7 +109,7 @@ dependencies:
|
|
109
109
|
version: 3.1.0
|
110
110
|
- - "<"
|
111
111
|
- !ruby/object:Gem::Version
|
112
|
-
version: 3.
|
112
|
+
version: 3.4.0
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
114
|
name: vcr
|
115
115
|
requirement: !ruby/object:Gem::Requirement
|
@@ -173,6 +173,7 @@ files:
|
|
173
173
|
- lib/notu/most_played_tracks.rb
|
174
174
|
- lib/notu/network_error.rb
|
175
175
|
- lib/notu/parse_error.rb
|
176
|
+
- lib/notu/played_tracks.rb
|
176
177
|
- lib/notu/track.rb
|
177
178
|
- notu.gemspec
|
178
179
|
- spec/cassettes/Notu_HtmlDocument/_get/follows_redirects.yml
|
@@ -192,6 +193,10 @@ files:
|
|
192
193
|
- spec/cassettes/Notu_MostPlayedTracks/_each/returns_some_tracks.yml
|
193
194
|
- spec/cassettes/Notu_MostPlayedTracks/_page_urls/is_correct.yml
|
194
195
|
- spec/cassettes/Notu_MostPlayedTracks/_pages_count/is_correct.yml
|
196
|
+
- spec/cassettes/Notu_PlayedTracks/_each/returns_nil.yml
|
197
|
+
- spec/cassettes/Notu_PlayedTracks/_each/returns_some_tracks.yml
|
198
|
+
- spec/cassettes/Notu_PlayedTracks/_page_urls/is_correct.yml
|
199
|
+
- spec/cassettes/Notu_PlayedTracks/_pages_count/is_correct.yml
|
195
200
|
- spec/notu/error_spec.rb
|
196
201
|
- spec/notu/html_document_spec.rb
|
197
202
|
- spec/notu/http_download_spec.rb
|
@@ -200,6 +205,7 @@ files:
|
|
200
205
|
- spec/notu/most_played_tracks_spec.rb
|
201
206
|
- spec/notu/network_error_spec.rb
|
202
207
|
- spec/notu/parse_error_spec.rb
|
208
|
+
- spec/notu/played_tracks_spec.rb
|
203
209
|
- spec/notu/track_spec.rb
|
204
210
|
- spec/spec_helper.rb
|
205
211
|
- spec/support/vcr.rb
|
@@ -245,6 +251,10 @@ test_files:
|
|
245
251
|
- spec/cassettes/Notu_MostPlayedTracks/_each/returns_some_tracks.yml
|
246
252
|
- spec/cassettes/Notu_MostPlayedTracks/_page_urls/is_correct.yml
|
247
253
|
- spec/cassettes/Notu_MostPlayedTracks/_pages_count/is_correct.yml
|
254
|
+
- spec/cassettes/Notu_PlayedTracks/_each/returns_nil.yml
|
255
|
+
- spec/cassettes/Notu_PlayedTracks/_each/returns_some_tracks.yml
|
256
|
+
- spec/cassettes/Notu_PlayedTracks/_page_urls/is_correct.yml
|
257
|
+
- spec/cassettes/Notu_PlayedTracks/_pages_count/is_correct.yml
|
248
258
|
- spec/notu/error_spec.rb
|
249
259
|
- spec/notu/html_document_spec.rb
|
250
260
|
- spec/notu/http_download_spec.rb
|
@@ -253,6 +263,7 @@ test_files:
|
|
253
263
|
- spec/notu/most_played_tracks_spec.rb
|
254
264
|
- spec/notu/network_error_spec.rb
|
255
265
|
- spec/notu/parse_error_spec.rb
|
266
|
+
- spec/notu/played_tracks_spec.rb
|
256
267
|
- spec/notu/track_spec.rb
|
257
268
|
- spec/spec_helper.rb
|
258
269
|
- spec/support/vcr.rb
|