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.
@@ -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
@@ -53,7 +53,7 @@ describe Notu::LovedTracks, :vcr do
53
53
  describe '#pages_count' do
54
54
 
55
55
  it 'is correct' do
56
- expect(loved_tracks.send(:pages_count)).to be_within(10).of(30)
56
+ expect(loved_tracks.pages_count).to be_within(10).of(30)
57
57
  end
58
58
 
59
59
  end
@@ -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.2.2
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-08-19 00:00:00.000000000 Z
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: 3.6.0
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: 3.6.0
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.2.0
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.2.0
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