hypem 0.1.5 → 0.1.6

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.md CHANGED
@@ -34,7 +34,7 @@ General playlists can be accessed using the following methods. The last argument
34
34
 
35
35
  #### Misc. ####
36
36
 
37
- - `Hypem.playlist.create_url([hypem_track1,hypem_track2])` --- create a custom Hypem-based playlist URL using array of `Hypem::Track`'s
37
+ - `Hypem.playlist.new_from_tracks([hypem_track1,hypem_track2])` --- create a custom playlist from an array of `Hypem::Track`'s
38
38
 
39
39
  ******
40
40
 
@@ -32,11 +32,13 @@ module Hypem
32
32
  Playlist.new(@type,@arg,num).tap(&:get)
33
33
  end
34
34
 
35
- def self.create_url(tracks)
36
- raise ArgumentError if (!tracks.is_a? Array) || (!tracks.first.is_a? Hypem::Track)
35
+ def url
36
+ Hypem::ROOT_PATH + path
37
+ end
38
+
39
+ def self.new_from_tracks(tracks)
37
40
  track_params = tracks.map(&:id).join(',')
38
- playlist = Playlist.new('set',track_params)
39
- return Hypem::ROOT_PATH + playlist.path
41
+ Playlist.new('set',track_params)
40
42
  end
41
43
 
42
44
  def self.latest(filter=:all,page=nil)
@@ -1,3 +1,3 @@
1
1
  module Hypem
2
- VERSION = "0.1.5"
2
+ VERSION = "0.1.6"
3
3
  end
@@ -14,9 +14,7 @@ describe Hypem::Playlist do
14
14
  ########################################
15
15
 
16
16
  context "when initialized" do
17
- it "assigns the path attribute" do
18
- playlist.path.should == "/playlist/latest/all/json/1"
19
- end
17
+ its(:path) { should == "/playlist/latest/all/json/1" }
20
18
 
21
19
  it "assigns proper path for blog" do
22
20
  blog_playlist.path.should == "/playlist/blog/1/json/1"
@@ -27,16 +25,17 @@ describe Hypem::Playlist do
27
25
  its(:tracks) { should_not be_empty }
28
26
  end
29
27
 
30
- describe ".create_url" do
28
+ describe ".new_from_tracks" do
31
29
  let(:tracks) {[mock('Hypem::Track',id: 'track1',), mock('Hypem::Track',id:'track2')]}
30
+ subject { Hypem::Playlist.new_from_tracks(tracks) }
31
+ it { should be_a Hypem::Playlist }
32
+ its(:path) { should == '/playlist/set/track1,track2/json/1' }
32
33
 
33
- it "raises if not given an array of tracks" do
34
- expect { described_class.create_url(['not_a_track'])}.to raise_error ArgumentError
35
- end
34
+ end
36
35
 
36
+ describe "#url" do
37
37
  it "returns the correct playlist url " do
38
- tracks.first.stub(:is_a?).and_return(true)
39
- described_class.create_url(tracks).should == 'http://hypem.com/playlist/set/track1,track2/json/1'
38
+ subject.url.should == 'http://hypem.com/playlist/latest/all/json/1'
40
39
  end
41
40
  end
42
41
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hypem
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-06-01 00:00:00.000000000 Z
12
+ date: 2012-06-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70329316144900 !ruby/object:Gem::Requirement
16
+ requirement: &70186325743340 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '2.6'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70329316144900
24
+ version_requirements: *70186325743340
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: vcr
27
- requirement: &70329316144440 !ruby/object:Gem::Requirement
27
+ requirement: &70186325742880 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '2.0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70329316144440
35
+ version_requirements: *70186325742880
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &70329316144060 !ruby/object:Gem::Requirement
38
+ requirement: &70186325742500 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70329316144060
46
+ version_requirements: *70186325742500
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: faraday
49
- requirement: &70329316143520 !ruby/object:Gem::Requirement
49
+ requirement: &70186325741960 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0.7'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70329316143520
57
+ version_requirements: *70186325741960
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: multi_json
60
- requirement: &70329316143020 !ruby/object:Gem::Requirement
60
+ requirement: &70186325741460 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '1.1'
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70329316143020
68
+ version_requirements: *70186325741460
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: hashie
71
- requirement: &70329316142560 !ruby/object:Gem::Requirement
71
+ requirement: &70186325741000 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,7 +76,7 @@ dependencies:
76
76
  version: '1.2'
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *70329316142560
79
+ version_requirements: *70186325741000
80
80
  description:
81
81
  email:
82
82
  - jackcanderson@gmail.com
@@ -142,7 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
142
142
  version: '0'
143
143
  segments:
144
144
  - 0
145
- hash: 3059941134840549137
145
+ hash: -3176725025681081128
146
146
  requirements: []
147
147
  rubyforge_project: hypem
148
148
  rubygems_version: 1.8.10