spotif-aye 0.0.1
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/.gitignore +6 -0
- data/Gemfile +4 -0
- data/LICENSE +20 -0
- data/README +0 -0
- data/Rakefile +1 -0
- data/lib/spotif-aye/version.rb +3 -0
- data/lib/spotif-aye.rb +58 -0
- data/spec/artist_spec.rb +53 -0
- data/spec/mock_responses/multiple_results.txt +109 -0
- data/spec/mock_responses/single_result.txt +10 -0
- data/spec/spec_helper.rb +14 -0
- data/spotif-aye.gemspec +32 -0
- metadata +105 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2011 stuliston
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README
ADDED
File without changes
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
data/lib/spotif-aye.rb
ADDED
@@ -0,0 +1,58 @@
|
|
1
|
+
require "spotif-aye/version"
|
2
|
+
require 'httparty'
|
3
|
+
|
4
|
+
module SpotifAye
|
5
|
+
|
6
|
+
class Artist
|
7
|
+
include HTTParty
|
8
|
+
|
9
|
+
base_uri 'ws.spotify.com/search/1'
|
10
|
+
|
11
|
+
attr_accessor :name, :href, :popularity
|
12
|
+
|
13
|
+
def initialize(result)
|
14
|
+
self.name = result['name']
|
15
|
+
self.href = result['href']
|
16
|
+
self.popularity = result['popularity'].to_f
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.find(name)
|
20
|
+
response = get("/artist.json?q=#{name}")
|
21
|
+
if response.success?
|
22
|
+
return ResultSet.new(response)
|
23
|
+
else
|
24
|
+
raise response.response
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
class ResultSet
|
31
|
+
|
32
|
+
attr_accessor :num_results, :limit, :offset, :query, :type, :page, :results
|
33
|
+
|
34
|
+
def initialize(response)
|
35
|
+
results = JSON.parse(response)
|
36
|
+
populate_info(results['info'])
|
37
|
+
populate_results(results['artists'])
|
38
|
+
end
|
39
|
+
|
40
|
+
private
|
41
|
+
|
42
|
+
def populate_info(info)
|
43
|
+
self.num_results = info['num_results']
|
44
|
+
self.limit = info['limit']
|
45
|
+
self.offset = info['offset']
|
46
|
+
self.query = info['query']
|
47
|
+
self.type = info['type']
|
48
|
+
self.page = info['page']
|
49
|
+
end
|
50
|
+
|
51
|
+
def populate_results(artists)
|
52
|
+
self.results = []
|
53
|
+
artists.each { |a| self.results << Artist.new(a) }
|
54
|
+
end
|
55
|
+
|
56
|
+
end
|
57
|
+
|
58
|
+
end
|
data/spec/artist_spec.rb
ADDED
@@ -0,0 +1,53 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe SpotifAye::Artist do
|
4
|
+
|
5
|
+
describe 'find' do
|
6
|
+
|
7
|
+
before :each do
|
8
|
+
stub_request(:get, "http://ws.spotify.com/search/1/artist.json?q=stone").to_return(
|
9
|
+
:status => 200,
|
10
|
+
:body => File.new('spec/mock_responses/single_result.txt'),
|
11
|
+
:headers => {})
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'should return a result set' do
|
15
|
+
SpotifAye::Artist.find('stone').class.should == SpotifAye::ResultSet
|
16
|
+
end
|
17
|
+
|
18
|
+
describe 'ResultSet' do
|
19
|
+
|
20
|
+
it 'should have the correct num_results' do
|
21
|
+
SpotifAye::Artist.find('stone').num_results.should == 1
|
22
|
+
end
|
23
|
+
|
24
|
+
it 'should have the correct limit' do
|
25
|
+
SpotifAye::Artist.find('stone').limit.should == 100
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'should have the correct off_set' do
|
29
|
+
SpotifAye::Artist.find('stone').offset.should == 0
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'should have the correct type' do
|
33
|
+
SpotifAye::Artist.find('stone').type.should == 'artist'
|
34
|
+
end
|
35
|
+
|
36
|
+
it 'should have the correct page' do
|
37
|
+
SpotifAye::Artist.find('stone').page.should == 1
|
38
|
+
end
|
39
|
+
|
40
|
+
describe 'results' do
|
41
|
+
|
42
|
+
it 'should be the correct size' do
|
43
|
+
SpotifAye::Artist.find('stone').results.count.should == 1
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'should contain artists objects' do
|
47
|
+
SpotifAye::Artist.find('stone').results.first.class.should == SpotifAye::Artist
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
@@ -0,0 +1,109 @@
|
|
1
|
+
{
|
2
|
+
"info":
|
3
|
+
{
|
4
|
+
"num_results": 827, "limit": 100, "offset": 0, "query": "stone", "type": "artist", "page": 1
|
5
|
+
},
|
6
|
+
"artists":
|
7
|
+
[
|
8
|
+
{"href": "spotify:artist:7bvcQXJHkFiN1ppIN3q4fi", "name": "Joss Stone", "popularity": "0.58240"},
|
9
|
+
{"href": "spotify:artist:1lYT0A0LV5DUfxr6doRP3d", "name": "The Stone Roses", "popularity": "0.52377"},
|
10
|
+
{"href": "spotify:artist:4tvKz56Tr39bkhcQUTO0Xr", "name": "Angus & Julia Stone", "popularity": "0.52222"},
|
11
|
+
{"href": "spotify:artist:5m8H6zSadhu1j9Yi04VLqD", "name": "Sly & The Family Stone", "popularity": "0.52089"},
|
12
|
+
{"href": "spotify:artist:4pejUc4iciQfgdX6OKulQn", "name": "Queens Of The Stone Age", "popularity": "0.52471"},
|
13
|
+
{"href": "spotify:artist:2hWr3AjjKOCVmWcwvuT4uM", "name": "Angie Stone", "popularity": "0.48773"},
|
14
|
+
{"href": "spotify:artist:49qiE8dj4JuNdpYGRPdKbF", "name": "Stone Sour", "popularity": "0.37666"},
|
15
|
+
{"href": "spotify:artist:2UazAtjfzqBF0Nho2awK4z", "name": "Stone Temple Pilots", "popularity": "0.38195"},
|
16
|
+
{"href": "spotify:artist:4KJjihrZR0XfiOPB0MdMVz", "name": "Stone", "popularity": "0.29804"},
|
17
|
+
{"href": "spotify:artist:4gZRt9wlRx1IsxT9glJdrc", "name": "Julia Stone", "popularity": "0.28443"},
|
18
|
+
{"href": "spotify:artist:6WMo39FU3nrpSz3qMgRKug", "name": "Black Stone Cherry", "popularity": "0.26933"},
|
19
|
+
{"href": "spotify:artist:6hA6GJ2yJA08ifsAplkUr0", "name": "Sly Stone", "popularity": "0.24741"},
|
20
|
+
{"href": "spotify:artist:0n21JCIbeLnQGAittsding", "name": "Angus and Julia Stone", "popularity": "0.24945"},
|
21
|
+
{"href": "spotify:artist:536osqBGKzeozje8BfcGsa", "name": "Allen Stone", "popularity": "0.22147"},
|
22
|
+
{"href": "spotify:artist:4epBFW4UHEmgjIK5xOrBhk", "name": "Doug Stone", "popularity": "0.21994"},
|
23
|
+
{"href": "spotify:artist:2ZJJwhtLcXYiJGIFbdcz5i", "name": "CJ Stone", "popularity": "0.21322"},
|
24
|
+
{"href": "spotify:artist:40N10exWtaCVUtBMftQn3t", "name": "The Stone Foxes", "popularity": "0.16158"},
|
25
|
+
{"href": "spotify:artist:5kUCjPuHfsYBoSTLzB1Kx9", "name": "Solar Stone", "popularity": "0.12354"},
|
26
|
+
{"href": "spotify:artist:5AqacAhvN8JCsr00Qk9tb7", "name": "Dan Stone", "popularity": "0.11834"},
|
27
|
+
{"href": "spotify:artist:0UnBsBrom4chs5rnjRBtIK", "name": "Rosetta Stone", "popularity": "0.11168"},
|
28
|
+
{"href": "spotify:artist:6yKs08l3FDns2Dbisiwjp2", "name": "Sly and The Family Stone", "popularity": "0.13100"},
|
29
|
+
{"href": "spotify:artist:68V1TH2chbUSLvqGkfBW6S", "name": "Ricky Martin Feat. Joss Stone", "popularity": "0.11363"},
|
30
|
+
{"href": "spotify:artist:17g9izQ35blndiUPLhGodI", "name": "Dwight Stone", "popularity": "0.08232"},
|
31
|
+
{"href": "spotify:artist:5yX0L9mpGpFNGnjmigyNCI", "name": "Alexandra Stone", "popularity": "0.06778"},
|
32
|
+
{"href": "spotify:artist:4TBZbclpBnXENejnt0ZIpr", "name": "Angus Stone", "popularity": "0.06334"},
|
33
|
+
{"href": "spotify:artist:40Ar1CY9WEPWK7b211IK81", "name": "Lew Stone", "popularity": "0.05864"},
|
34
|
+
{"href": "spotify:artist:6jk128BjcZxmf8G90D7oOk", "name": "Stone Senses", "popularity": "0.05658"},
|
35
|
+
{"href": "spotify:artist:3yjToJqlGuhwzaCkUpUfq9", "name": "Stu Stone", "popularity": "0.05541"},
|
36
|
+
{"href": "spotify:artist:0kNyq4Q2UEmIeuySw9myZc", "name": "Corner Stone Cues", "popularity": "0.06280"},
|
37
|
+
{"href": "spotify:artist:49gYweXA3mqGBbkkpeyWGq", "name": "Raphael Saadiq featuring Joss Stone", "popularity": "0.05961"},
|
38
|
+
{"href": "spotify:artist:7s38JtwIABfvYYGTKOa5EV", "name": "Kay Stone", "popularity": "0.04489"},
|
39
|
+
{"href": "spotify:artist:7i6OjbTBFvpVYkJv4zkNcB", "name": "Stone Roses", "popularity": "0.04489"},
|
40
|
+
{"href": "spotify:artist:2IvPBSC4CgNLYC1GHEAxcN", "name": "Stevie Stone", "popularity": "0.04296"},
|
41
|
+
{"href": "spotify:artist:1TqikbzYvrf59XGJQgCNzQ", "name": "Steven Stone", "popularity": "0.04051"},
|
42
|
+
{"href": "spotify:artist:2lK3YnHTaukG6VJ09GmeYo", "name": "Sly & The Family Stone|Slave|James Brown|Dazz Band|Teddy Pendergrass|Marvin Gaye", "popularity": "0.07424"},
|
43
|
+
{"href": "spotify:artist:4sOQLWxzmPMffkbPWbZCHh", "name": "Stone Axe", "popularity": "0.03748"},
|
44
|
+
{"href": "spotify:artist:5ZCcVPmY6ymLPStzhEFolI", "name": "Blue Stone", "popularity": "0.03657"},
|
45
|
+
{"href": "spotify:artist:4Dx4u9AniPCl5nwkIjleyr", "name": "Eddie Vedder and Stone Gossard", "popularity": "0.04544"},
|
46
|
+
{"href": "spotify:artist:4xSTICF3RLqUa98dFRWtpO", "name": "Lew Stone & His Band", "popularity": "0.03811"},
|
47
|
+
{"href": "spotify:artist:0VTxjW8pGDbhEZUAZkQ59L", "name": "Stone & The DJ", "popularity": "0.03384"},
|
48
|
+
{"href": "spotify:artist:2YbzY5WCnWFA2JlU16lqsV", "name": "Stone Gods", "popularity": "0.02797"},
|
49
|
+
{"href": "spotify:artist:2vThUcryaKNLhULHOzP3eH", "name": "Ranking Stone", "popularity": "0.02716"},
|
50
|
+
{"href": "spotify:artist:1AdFLjG5endQ2HmDMtp5Fe", "name": "Stone The Crows", "popularity": "0.02954"},
|
51
|
+
{"href": "spotify:artist:2X9nnux4eS3CFBDSjcnoBQ", "name": "Stone Poneys", "popularity": "0.02190"},
|
52
|
+
{"href": "spotify:artist:0BUHAyLpATEPKRkwJWXdLp", "name": "Connemara Stone Company", "popularity": "0.02436"},
|
53
|
+
{"href": "spotify:artist:5hZywvBMNgzCBy7KPdgreK", "name": "Jamie Kennedy & Stu Stone", "popularity": "0.02429"},
|
54
|
+
{"href": "spotify:artist:4LyTW4sS5IQyL747sxyOnf", "name": "Angie Stone feat. Calvin", "popularity": "0.02424"},
|
55
|
+
{"href": "spotify:artist:1JqOqsJ3cetrCm1oM2eQik", "name": "Josh Stone", "popularity": "0.01966"},
|
56
|
+
{"href": "spotify:artist:3I9Cw0rM60M8B0McapBeoR", "name": "Joe D'Urso & Stone Caravan", "popularity": "0.02225"},
|
57
|
+
{"href": "spotify:artist:2mFEB1yADKv56pUDpTqSqb", "name": "The First Stone", "popularity": "0.02165"},
|
58
|
+
{"href": "spotify:artist:5NQy6baJWodZVDa5455PYk", "name": "Lew Stone And His Band", "popularity": "0.02358"},
|
59
|
+
{"href": "spotify:artist:4aT4S9Vq35xkN87Yiunjt3", "name": "Mark Stone", "popularity": "0.01727"},
|
60
|
+
{"href": "spotify:artist:5PENIK8WHcB1eGR421rkAJ", "name": "Chris Stone", "popularity": "0.01667"},
|
61
|
+
{"href": "spotify:artist:4GiJ9YyQUx7kJXT3IJb6oU", "name": "Twigg & Stone", "popularity": "0.01616"},
|
62
|
+
{"href": "spotify:artist:0XGZ1FLCVSbsBHpBCJabYO", "name": "Angie Stone featuring Anthony Hamilton", "popularity": "0.02160"},
|
63
|
+
{"href": "spotify:artist:06sqgSBkdTBvcV3yVklLEL", "name": "Stone Free: A Tribute to Jimi Hendrix", "popularity": "0.02441"},
|
64
|
+
{"href": "spotify:artist:0u0YN6DvyVjiUSzVMIX28S", "name": "Stone Gossard, Mike McCready, Jeff Ament and Chris Friel", "popularity": "0.02595"},
|
65
|
+
{"href": "spotify:artist:5E5WJyfvRW19sZFG32gzSQ", "name": "Kid Stone", "popularity": "0.01308"},
|
66
|
+
{"href": "spotify:artist:5vu3oBxfWGEauRbyFp9E4Y", "name": "Angie Stone feat. Alicia Keys & Eve", "popularity": "0.01980"},
|
67
|
+
{"href": "spotify:artist:7tQx0SAWKmjZtpAqoeBEbk", "name": "Angus & Julia Stone Band", "popularity": "0.01464"},
|
68
|
+
{"href": "spotify:artist:09w2nmrWDRCL0wtRqoNLdM", "name": "Eric Stone", "popularity": "0.01110"},
|
69
|
+
{"href": "spotify:artist:6LaeuXyOjdRMxpZqFUJXSF", "name": "Cliffie Stone", "popularity": "0.01054"},
|
70
|
+
{"href": "spotify:artist:7utN8P698fXhCDd4mSrsns", "name": "Macy Gray featuring Angie Stone and Mos Def", "popularity": "0.01969"},
|
71
|
+
{"href": "spotify:artist:4MV8idwPVmHcxZjT0fjsDx", "name": "Angie Stone & Joe", "popularity": "0.01272"},
|
72
|
+
{"href": "spotify:artist:5EVOoLv2B5cIzu4eEiyFuQ", "name": "Floating Stone", "popularity": "0.00894"},
|
73
|
+
{"href": "spotify:artist:47bokO26f4LIt4zaAlCQwo", "name": "Elephant Stone", "popularity": "0.00881"},
|
74
|
+
{"href": "spotify:artist:2TDSXxzZIS1oDg3L9fk4aK", "name": "Jamie Kennedy & Stu Stone", "popularity": "0.01083"},
|
75
|
+
{"href": "spotify:artist:2TRaJKJyCPZO8fyz698CJZ", "name": "The Stone Poneys", "popularity": "0.01077"},
|
76
|
+
{"href": "spotify:artist:7FrEdhlyISrRxcmR5EQhIO", "name": "Stone Canyon", "popularity": "0.00867"},
|
77
|
+
{"href": "spotify:artist:73oVHjkFKwe9kRheYvbLL9", "name": "Stone Age", "popularity": "0.00860"},
|
78
|
+
{"href": "spotify:artist:0bzZT5BwQ7RXTpQHKOAeG0", "name": "Apple & Stone", "popularity": "0.00787"},
|
79
|
+
{"href": "spotify:artist:6ihpa5zgHEYPbYr27mSAuj", "name": "Sly Stone & The Mojo Men", "popularity": "0.01098"},
|
80
|
+
{"href": "spotify:artist:1p0NholKJLtbG8rnYRPsMG", "name": "The Stone Coyotes", "popularity": "0.00951"},
|
81
|
+
{"href": "spotify:artist:2ms3xThJ4kusbTSioFohyS", "name": "Stone & Charden", "popularity": "0.00768"},
|
82
|
+
{"href": "spotify:artist:4ndPdP6aVSDCvhsjOHLGjb", "name": "Stone et Charden", "popularity": "0.00927"},
|
83
|
+
{"href": "spotify:artist:3cr8Cd4OFcYEc63zZu1Szg", "name": "Santana featuring Sean Paul & Joss Stone", "popularity": "0.01203"},
|
84
|
+
{"href": "spotify:artist:0PMtZ48ugLkoxg4cjggEVl", "name": "Stone Black", "popularity": "0.00738"},
|
85
|
+
{"href": "spotify:artist:6Rp18SVmMFIZRHRoD0wj9X", "name": "Angie Stone feat. Musiq Soulchild", "popularity": "0.00996"},
|
86
|
+
{"href": "spotify:artist:2YIFiyLIUhMH9kzb0FCmbX", "name": "Brandon Stone", "popularity": "0.00651"},
|
87
|
+
{"href": "spotify:artist:0bO3bOZwJNmh750eBf0aA0", "name": "Jesse Stone", "popularity": "0.00629"},
|
88
|
+
{"href": "spotify:artist:5tUSgp6KX97m37HMbBgTwU", "name": "Steve Stone", "popularity": "0.00616"},
|
89
|
+
{"href": "spotify:artist:09xL6Rso5T14vYo6ji8Gmq", "name": "Q-Stone", "popularity": "0.00601"},
|
90
|
+
{"href": "spotify:artist:3TJTZNpLyscwiDwlZsTX4Y", "name": "Preacher Stone", "popularity": "0.00592"},
|
91
|
+
{"href": "spotify:artist:2OOTZ9s1DnVNQnvkRgpKpD", "name": "Andy Stone & Kat Zero", "popularity": "0.00729"},
|
92
|
+
{"href": "spotify:artist:0UkhQeHmaegeLcaDXBjpkl", "name": "Ty Stone", "popularity": "0.00576"},
|
93
|
+
{"href": "spotify:artist:4rxyoc13lO8BoilliyUf47", "name": "Tyte Stone", "popularity": "0.00570"},
|
94
|
+
{"href": "spotify:artist:1DjvnBVnM1YGCC6jrEKcTR", "name": "Thom Stone", "popularity": "0.00567"},
|
95
|
+
{"href": "spotify:artist:6jEAwZdvV4fYoplzok8yO6", "name": "CJ Stone & Chriss Ortega", "popularity": "0.00702"},
|
96
|
+
{"href": "spotify:artist:1TGwUWwVcKAYoXSuXVZUxt", "name": "Stone Mecca", "popularity": "0.00560"},
|
97
|
+
{"href": "spotify:artist:4F2HKVxNOxDZJzsditSbBf", "name": "Stone River Boys", "popularity": "0.00605"},
|
98
|
+
{"href": "spotify:artist:2H1K3K1jTG7GI1nmu1zL0J", "name": "Bread of Stone", "popularity": "0.00603"},
|
99
|
+
{"href": "spotify:artist:3ub47QhezGBj3fsCXn6jma", "name": "Jonathan Stone", "popularity": "0.00462"},
|
100
|
+
{"href": "spotify:artist:4SDFoX1GFLyoP1r9w26mfr", "name": "Stone Antica", "popularity": "0.00460"},
|
101
|
+
{"href": "spotify:artist:0rVkv5DwsmIbQg2ECWMQGT", "name": "Stone Foundation", "popularity": "0.00446"},
|
102
|
+
{"href": "spotify:artist:3PM5EQ1NOCRtuhb6CS8qsY", "name": "Rick Nelson And The Stone Canyon Band", "popularity": "0.00729"},
|
103
|
+
{"href": "spotify:artist:4ZzNfsfOJrl9jsklNxJ9rO", "name": "Alexia Stone", "popularity": "0.00445"},
|
104
|
+
{"href": "spotify:artist:1DwDghZjRzH4LJjLrQ5Kz3", "name": "Kim Stone", "popularity": "0.00417"},
|
105
|
+
{"href": "spotify:artist:5mH7gMQLYmFW0wsYncxxMR", "name": "Earth & Stone", "popularity": "0.00401"},
|
106
|
+
{"href": "spotify:artist:5RvX7694GlgGLE7amVLGma", "name": "The Philosopher's Stone", "popularity": "0.00496"},
|
107
|
+
{"href": "spotify:artist:4LBtSkOX4csRDfqStKgz75", "name": "Stone Cold Steve Austin", "popularity": "0.00438"}
|
108
|
+
]
|
109
|
+
}
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
require 'spotif-aye'
|
2
|
+
require 'webmock/rspec'
|
3
|
+
require 'json'
|
4
|
+
|
5
|
+
RSpec.configure do |config|
|
6
|
+
# Use color in STDOUT
|
7
|
+
config.color_enabled = true
|
8
|
+
|
9
|
+
# Use color not only in STDOUT but also in pagers and files
|
10
|
+
config.tty = true
|
11
|
+
|
12
|
+
# Use the specified formatter
|
13
|
+
config.formatter = :documentation # :progress, :html, :textmate
|
14
|
+
end
|
data/spotif-aye.gemspec
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
require "spotif-aye/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |s|
|
6
|
+
s.name = "spotif-aye"
|
7
|
+
s.version = SpotifAye::VERSION
|
8
|
+
s.authors = ["Stuart Liston"]
|
9
|
+
s.email = ["stuart.liston@gmail.com"]
|
10
|
+
s.homepage = ""
|
11
|
+
s.summary = %q{Wrapper for Spotify's Metadata API}
|
12
|
+
s.description = %q{Tries to provide a nicer interface to the metadata api provided by Spotify}
|
13
|
+
|
14
|
+
# Running dependencies
|
15
|
+
s.add_dependency "httparty", ">= 0.8.1"
|
16
|
+
|
17
|
+
# Development dependencies:
|
18
|
+
s.add_development_dependency "rspec", ">= 2.7.0"
|
19
|
+
s.add_development_dependency "i18n", ">= 0.6.0"
|
20
|
+
s.add_development_dependency "webmock"
|
21
|
+
|
22
|
+
s.rubyforge_project = "spotif-aye"
|
23
|
+
|
24
|
+
s.files = `git ls-files`.split("\n")
|
25
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
26
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
27
|
+
s.require_paths = ["lib"]
|
28
|
+
|
29
|
+
# specify any dependencies here; for example:
|
30
|
+
# s.add_development_dependency "rspec"
|
31
|
+
# s.add_runtime_dependency "rest-client"
|
32
|
+
end
|
metadata
ADDED
@@ -0,0 +1,105 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: spotif-aye
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Stuart Liston
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2011-12-18 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: httparty
|
16
|
+
requirement: &70365537150440 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.8.1
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *70365537150440
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: rspec
|
27
|
+
requirement: &70365537149940 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 2.7.0
|
33
|
+
type: :development
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *70365537149940
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: i18n
|
38
|
+
requirement: &70365537149480 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ! '>='
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 0.6.0
|
44
|
+
type: :development
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: *70365537149480
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: webmock
|
49
|
+
requirement: &70365537149100 !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
type: :development
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: *70365537149100
|
58
|
+
description: Tries to provide a nicer interface to the metadata api provided by Spotify
|
59
|
+
email:
|
60
|
+
- stuart.liston@gmail.com
|
61
|
+
executables: []
|
62
|
+
extensions: []
|
63
|
+
extra_rdoc_files: []
|
64
|
+
files:
|
65
|
+
- .gitignore
|
66
|
+
- Gemfile
|
67
|
+
- LICENSE
|
68
|
+
- README
|
69
|
+
- Rakefile
|
70
|
+
- lib/spotif-aye.rb
|
71
|
+
- lib/spotif-aye/version.rb
|
72
|
+
- spec/artist_spec.rb
|
73
|
+
- spec/mock_responses/multiple_results.txt
|
74
|
+
- spec/mock_responses/single_result.txt
|
75
|
+
- spec/spec_helper.rb
|
76
|
+
- spotif-aye.gemspec
|
77
|
+
homepage: ''
|
78
|
+
licenses: []
|
79
|
+
post_install_message:
|
80
|
+
rdoc_options: []
|
81
|
+
require_paths:
|
82
|
+
- lib
|
83
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
84
|
+
none: false
|
85
|
+
requirements:
|
86
|
+
- - ! '>='
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '0'
|
89
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
90
|
+
none: false
|
91
|
+
requirements:
|
92
|
+
- - ! '>='
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: '0'
|
95
|
+
requirements: []
|
96
|
+
rubyforge_project: spotif-aye
|
97
|
+
rubygems_version: 1.8.11
|
98
|
+
signing_key:
|
99
|
+
specification_version: 3
|
100
|
+
summary: Wrapper for Spotify's Metadata API
|
101
|
+
test_files:
|
102
|
+
- spec/artist_spec.rb
|
103
|
+
- spec/mock_responses/multiple_results.txt
|
104
|
+
- spec/mock_responses/single_result.txt
|
105
|
+
- spec/spec_helper.rb
|