youtube_it 1.4.3 → 2.0.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.
- data/Manifest.txt +4 -0
- data/README.rdoc +37 -6
- data/Rakefile +2 -2
- data/VERSION +1 -1
- data/lib/youtube_it.rb +6 -0
- data/lib/youtube_it/client.rb +47 -12
- data/lib/youtube_it/middleware/faraday_authheader.rb +13 -0
- data/lib/youtube_it/middleware/faraday_oauth.rb +21 -0
- data/lib/youtube_it/middleware/faraday_youtubeit.rb +30 -0
- data/lib/youtube_it/model/subscription.rb +7 -0
- data/lib/youtube_it/model/video.rb +3 -0
- data/lib/youtube_it/parser.rb +97 -58
- data/lib/youtube_it/request/base_search.rb +45 -0
- data/lib/youtube_it/request/error.rb +15 -0
- data/lib/youtube_it/request/user_search.rb +2 -0
- data/lib/youtube_it/request/video_search.rb +4 -1
- data/lib/youtube_it/request/video_upload.rb +146 -277
- data/lib/youtube_it/version.rb +1 -1
- data/test/files/recorded_response.xml +1 -0
- data/test/helper.rb +1 -0
- data/test/test_chain_io.rb +1 -1
- data/test/test_client.rb +77 -29
- data/test/test_field_search.rb +48 -0
- data/test/test_video.rb +2 -2
- data/test/test_video_feed_parser.rb +1 -1
- data/test/test_video_search.rb +2 -1
- data/youtube_it.gemspec +16 -4
- metadata +34 -6
- data/History.txt +0 -16
- data/TODO.txt +0 -16
data/lib/youtube_it/version.rb
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
<?xml version='1.0' encoding='UTF-8'?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:app='http://www.w3.org/2007/app' xmlns:media='http://search.yahoo.com/mrss/' xmlns:gd='http://schemas.google.com/g/2005' xmlns:yt='http://gdata.youtube.com/schemas/2007'><entry gd:etag='W/"C08NSH47eCp7ImA9WhZXGUU."'><id>tag:youtube.com,2008:video:z8zIecfFRjM</id><published>2011-01-28T20:32:47.000Z</published><updated>2011-05-09T22:58:19.000Z</updated><category scheme='http://schemas.google.com/g/2005#kind' term='http://gdata.youtube.com/schemas/2007#video'/><category scheme='http://gdata.youtube.com/schemas/2007/categories.cat' term='Music' label='Music'/><category scheme='http://gdata.youtube.com/schemas/2007/keywords.cat' term='School Jam USA'/><category scheme='http://gdata.youtube.com/schemas/2007/keywords.cat' term='lennon bus live'/><category scheme='http://gdata.youtube.com/schemas/2007/keywords.cat' term='lennon bus'/><category scheme='http://gdata.youtube.com/schemas/2007/keywords.cat' term='lennon'/><category scheme='http://gdata.youtube.com/schemas/2007/keywords.cat' term='john lennon'/><category scheme='http://gdata.youtube.com/schemas/2007/keywords.cat' term='ac/dc'/><category scheme='http://gdata.youtube.com/schemas/2007/keywords.cat' term='motley crue'/><category scheme='http://gdata.youtube.com/schemas/2007/keywords.cat' term='namm 2011'/><category scheme='http://gdata.youtube.com/schemas/2007/keywords.cat' term='namm'/><title>Lennon Bus Live: Peligro - "Hollywood Red"</title><content type='application/x-shockwave-flash' src='http://www.youtube.com/v/z8zIecfFRjM?f=videos&app=youtube_gdata'/><link rel='alternate' type='text/html' href='http://www.youtube.com/watch?v=z8zIecfFRjM&feature=youtube_gdata'/><link rel='http://gdata.youtube.com/schemas/2007#video.responses' type='application/atom+xml' href='http://gdata.youtube.com/feeds/api/videos/z8zIecfFRjM/responses?v=2'/><link rel='http://gdata.youtube.com/schemas/2007#video.related' type='application/atom+xml' href='http://gdata.youtube.com/feeds/api/videos/z8zIecfFRjM/related?v=2'/><link rel='http://gdata.youtube.com/schemas/2007#mobile' type='text/html' href='http://m.youtube.com/details?v=z8zIecfFRjM'/><link rel='self' type='application/atom+xml' href='http://gdata.youtube.com/feeds/api/videos/z8zIecfFRjM?v=2'/><author><name>johnlennonbus</name><uri>http://gdata.youtube.com/feeds/api/users/johnlennonbus</uri></author><yt:accessControl action='comment' permission='allowed'/><yt:accessControl action='commentVote' permission='allowed'/><yt:accessControl action='videoRespond' permission='moderated'/><yt:accessControl action='rate' permission='allowed'/><yt:accessControl action='embed' permission='allowed'/><yt:accessControl action='list' permission='allowed'/><yt:accessControl action='syndicate' permission='allowed'/><gd:comments><gd:feedLink href='http://gdata.youtube.com/feeds/api/videos/z8zIecfFRjM/comments?v=2' countHint='28'/></gd:comments><yt:location>Anaheim, Ca</yt:location><media:group><media:category label='Music' scheme='http://gdata.youtube.com/schemas/2007/categories.cat'>Music</media:category><media:content url='http://www.youtube.com/v/z8zIecfFRjM?f=videos&app=youtube_gdata' type='application/x-shockwave-flash' medium='video' isDefault='true' expression='full' duration='192' yt:format='5'/><media:content url='rtsp://v6.cache2.c.youtube.com/CiILENy73wIaGQkzRsXHecjMzxMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp' type='video/3gpp' medium='video' expression='full' duration='192' yt:format='1'/><media:content url='rtsp://v3.cache5.c.youtube.com/CiILENy73wIaGQkzRsXHecjMzxMYESARFEgGUgZ2aWRlb3MM/0/0/0/video.3gp' type='video/3gpp' medium='video' expression='full' duration='192' yt:format='6'/><media:credit role='uploader' scheme='urn:youtube'>johnlennonbus</media:credit><media:description type='plain'>At NAMM 2011, School Jam USA winners Peligro had the opportunity to come aboard the John Lennon Educational Tour Bus to record a song and shoot a music video. These young rockers would not seem out of place alongside AC/DC or Mötley Crüe. Be Sure to check them out as they rock out during a Lennon Bus Live Session, performing their hit, Hollywood Red</media:description><media:keywords>School Jam USA, lennon bus live, lennon bus, lennon, john lennon, ac/dc, motley crue, namm 2011, namm</media:keywords><media:player url='http://www.youtube.com/watch?v=z8zIecfFRjM&feature=youtube_gdata_player'/><media:thumbnail url='http://i.ytimg.com/vi/z8zIecfFRjM/default.jpg' height='90' width='120' time='00:01:36' yt:name='default'/><media:thumbnail url='http://i.ytimg.com/vi/z8zIecfFRjM/hqdefault.jpg' height='360' width='480' yt:name='hqdefault'/><media:thumbnail url='http://i.ytimg.com/vi/z8zIecfFRjM/1.jpg' height='90' width='120' time='00:00:48' yt:name='start'/><media:thumbnail url='http://i.ytimg.com/vi/z8zIecfFRjM/2.jpg' height='90' width='120' time='00:01:36' yt:name='middle'/><media:thumbnail url='http://i.ytimg.com/vi/z8zIecfFRjM/3.jpg' height='90' width='120' time='00:02:24' yt:name='end'/><media:title type='plain'>Lennon Bus Live: Peligro - "Hollywood Red"</media:title><yt:aspectRatio>widescreen</yt:aspectRatio><yt:duration seconds='192'/><yt:uploaded>2011-01-28T20:32:47.000Z</yt:uploaded><yt:videoid>z8zIecfFRjM</yt:videoid></media:group><gd:rating average='4.894737' max='5' min='1' numRaters='38' rel='http://schemas.google.com/g/2005#overall'/><yt:recorded>2011-01-16</yt:recorded><yt:statistics favoriteCount='21' viewCount='3648'/><yt:rating numDislikes='1' numLikes='37'/></entry></feed>
|
data/test/helper.rb
CHANGED
data/test/test_chain_io.rb
CHANGED
data/test/test_client.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require File.dirname(__FILE__) + '/helper'
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/helper')
|
2
2
|
|
3
3
|
class TestClient < Test::Unit::TestCase
|
4
4
|
|
@@ -10,7 +10,10 @@ class TestClient < Test::Unit::TestCase
|
|
10
10
|
RAILS_ENV = "test"
|
11
11
|
|
12
12
|
def setup
|
13
|
+
#clientlogin
|
13
14
|
@client = YouTubeIt::Client.new(:username => ACCOUNT[:user], :password => ACCOUNT[:passwd] , :dev_key => ACCOUNT[:dev_key])
|
15
|
+
#authsub
|
16
|
+
#@client = YouTubeIt::AuthSubClient.new(:token => "1/vqYlJytmn4eWRjJnORHT94mENNfZzZsLutMOrvvygB4" , :dev_key => ACCOUNT[:dev_key])
|
14
17
|
end
|
15
18
|
|
16
19
|
def test_should_respond_to_a_basic_query
|
@@ -70,7 +73,7 @@ class TestClient < Test::Unit::TestCase
|
|
70
73
|
end
|
71
74
|
|
72
75
|
def test_should_handle_video_not_yet_viewed
|
73
|
-
response = @client.videos_by(:query => "
|
76
|
+
response = @client.videos_by(:query => "CE62FSEoY28")
|
74
77
|
|
75
78
|
assert_equal 1, response.videos.length
|
76
79
|
response.videos.each { |v| assert_valid_video v }
|
@@ -137,10 +140,11 @@ class TestClient < Test::Unit::TestCase
|
|
137
140
|
assert_equal 2, response.max_result_count
|
138
141
|
end
|
139
142
|
|
143
|
+
|
140
144
|
def test_should_get_favorite_videos_by_user
|
141
145
|
response = @client.videos_by(:favorites, :user => 'drnicwilliams')
|
142
146
|
assert_equal "tag:youtube.com,2008:user:drnicwilliams:favorites", response.feed_id
|
143
|
-
response.videos.
|
147
|
+
assert_valid_video response.videos.first
|
144
148
|
end
|
145
149
|
|
146
150
|
def test_should_get_videos_for_query_search_with_categories_excluded
|
@@ -182,7 +186,7 @@ class TestClient < Test::Unit::TestCase
|
|
182
186
|
def test_return_upload_info_for_upload_from_browser
|
183
187
|
response = @client.upload_token(OPTIONS)
|
184
188
|
assert response.kind_of?(Hash)
|
185
|
-
|
189
|
+
assert_equal response.size, 2
|
186
190
|
response.each do |k,v|
|
187
191
|
assert v
|
188
192
|
end
|
@@ -212,7 +216,7 @@ class TestClient < Test::Unit::TestCase
|
|
212
216
|
video = @client.video_upload(File.open("test/test.mov"), OPTIONS.merge(:comment => "denied"))
|
213
217
|
assert_valid_video video
|
214
218
|
doc = Nokogiri::HTML(open("http://www.youtube.com/watch?v=#{video.unique_id}"))
|
215
|
-
doc.css('.comments-disabled').each{|tag| assert (tag.content.strip == "
|
219
|
+
doc.css('.comments-disabled-message').each{|tag| assert (tag.content.strip == "Adding comments has been disabled for this video.")}
|
216
220
|
@client.video_delete(video.unique_id)
|
217
221
|
end
|
218
222
|
|
@@ -231,21 +235,13 @@ class TestClient < Test::Unit::TestCase
|
|
231
235
|
end
|
232
236
|
|
233
237
|
def test_should_add_new_comment
|
234
|
-
video_id ="
|
238
|
+
video_id ="aDlw5j28X3U"
|
235
239
|
@client.add_comment(video_id, "test comment")
|
236
240
|
comment = @client.comments(video_id).first.content
|
237
241
|
assert comment.match(/test comment/)
|
238
242
|
end
|
239
|
-
|
240
|
-
def
|
241
|
-
video_id ="H1TrfM3xbgc"
|
242
|
-
result = @client.add_favorite(video_id)
|
243
|
-
assert result[:code], 201
|
244
|
-
sleep 4
|
245
|
-
assert @client.delete_favorite(video_id)
|
246
|
-
end
|
247
|
-
|
248
|
-
def test_should_add_and_del_video_from_playlist
|
243
|
+
|
244
|
+
def test_should_add_and_delete_video_from_playlist
|
249
245
|
playlist = @client.add_playlist(:title => "youtube_it test!", :description => "test playlist")
|
250
246
|
video = @client.add_video_to_playlist(playlist.playlist_id,"iKqJ8z1DPrQ")
|
251
247
|
assert_equal video[:code].to_i, 201
|
@@ -253,8 +249,8 @@ class TestClient < Test::Unit::TestCase
|
|
253
249
|
assert @client.delete_playlist(playlist.playlist_id)
|
254
250
|
end
|
255
251
|
|
256
|
-
def
|
257
|
-
result = @client.add_playlist(:title => "youtube_it
|
252
|
+
def test_should_add_and_delete_new_playlist
|
253
|
+
result = @client.add_playlist(:title => "youtube_it test4!", :description => "test playlist")
|
258
254
|
assert result.title, "youtube_it test!"
|
259
255
|
sleep 4
|
260
256
|
assert @client.delete_playlist(result.playlist_id)
|
@@ -266,24 +262,76 @@ class TestClient < Test::Unit::TestCase
|
|
266
262
|
assert_equal playlist_updated.title, "title changed"
|
267
263
|
assert @client.delete_playlist(playlist.playlist_id)
|
268
264
|
end
|
269
|
-
|
265
|
+
|
270
266
|
def test_should_list_playlist_for_user
|
271
|
-
result = @client.
|
267
|
+
result = @client.playlists('chebyte')
|
272
268
|
assert result.last.title, "rock"
|
273
269
|
end
|
274
|
-
|
275
|
-
|
270
|
+
|
276
271
|
def test_should_determine_if_widescreen_video_is_widescreen
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
272
|
+
widescreen_id = 'QqQVll-MP3I'
|
273
|
+
|
274
|
+
video = @client.video_by(widescreen_id)
|
275
|
+
assert video.widescreen?
|
281
276
|
end
|
282
|
-
|
277
|
+
|
283
278
|
def test_get_current_user
|
284
|
-
|
279
|
+
assert_equal @client.current_user, 'tubeit20101'
|
280
|
+
end
|
281
|
+
|
282
|
+
def test_should_get_my_videos
|
283
|
+
video = @client.video_upload(File.open("test/test.mov"), OPTIONS)
|
284
|
+
assert_valid_video video
|
285
|
+
result = @client.my_videos
|
286
|
+
assert_equal result.videos.first.unique_id, video.unique_id
|
287
|
+
@client.video_delete(video.unique_id)
|
288
|
+
end
|
289
|
+
|
290
|
+
def test_should_get_my_video
|
291
|
+
video = @client.video_upload(File.open("test/test.mov"), OPTIONS)
|
292
|
+
assert_valid_video video
|
293
|
+
result = @client.my_video(video.unique_id)
|
294
|
+
assert_equal result.unique_id, video.unique_id
|
295
|
+
@client.video_delete(video.unique_id)
|
296
|
+
end
|
297
|
+
|
298
|
+
def test_should_add_like_to_video
|
299
|
+
r = @client.like_video("CE62FSEoY28")
|
300
|
+
assert_equal r[:code], 201
|
301
|
+
@client.dislike_video("CE62FSEoY28")
|
302
|
+
end
|
303
|
+
|
304
|
+
def test_should_dislike_to_video
|
305
|
+
@client.like_video("CE62FSEoY28")
|
306
|
+
r = @client.dislike_video("CE62FSEoY28")
|
307
|
+
assert_equal r[:code], 201
|
308
|
+
end
|
309
|
+
|
310
|
+
|
311
|
+
def test_should_subscribe_to_channel
|
312
|
+
r = @client.subscribe_channel("TheWoWArthas")
|
313
|
+
assert_equal r[:code], 201
|
314
|
+
assert_equal @client.subscriptions.first.title, "Videos published by : TheWoWArthas"
|
315
|
+
@client.unsubscribe_channel(@client.subscriptions.first.id)
|
316
|
+
end
|
317
|
+
|
318
|
+
def test_should_unsubscribe_to_channel
|
319
|
+
@client.subscribe_channel("TheWoWArthas")
|
320
|
+
r = @client.unsubscribe_channel(@client.subscriptions.first.id)
|
321
|
+
assert_equal r[:code], 200
|
322
|
+
end
|
323
|
+
|
324
|
+
def test_should_list_subscriptions
|
325
|
+
@client.subscribe_channel("TheWoWArthas")
|
326
|
+
assert @client.subscriptions.count == 1
|
327
|
+
assert_equal @client.subscriptions.first.title, "Videos published by : TheWoWArthas"
|
328
|
+
@client.unsubscribe_channel(@client.subscriptions.first.id)
|
329
|
+
end
|
330
|
+
|
331
|
+
def test_should_get_profile
|
332
|
+
profile = @client.profile
|
333
|
+
assert_equal profile.username, "tubeit20101"
|
285
334
|
end
|
286
|
-
|
287
335
|
private
|
288
336
|
|
289
337
|
def assert_valid_video (video)
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/helper')
|
2
|
+
|
3
|
+
class YouTubeIt
|
4
|
+
module Request
|
5
|
+
class TestSearch < BaseSearch
|
6
|
+
include FieldSearch
|
7
|
+
|
8
|
+
def initialize(params={})
|
9
|
+
@url = fields_to_params(params.delete(:fields))
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
class TestFieldSearch < Test::Unit::TestCase
|
16
|
+
include YouTubeIt::Request
|
17
|
+
|
18
|
+
def default_fields
|
19
|
+
"id,updated,openSearch:totalResults,openSearch:startIndex,openSearch:itemsPerPage"
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_should_search_for_range_of_recoreded_on_dates
|
23
|
+
starts_at = Date.today - 4
|
24
|
+
ends_at = Date.today
|
25
|
+
request = TestSearch.new(:fields => {:recorded => (starts_at..ends_at)})
|
26
|
+
assert_equal URI.escape("&fields=#{default_fields},entry[xs:date(yt:recorded) > xs:date('#{starts_at.strftime('%Y-%m-%d')}') and xs:date(yt:recorded) < xs:date('#{ends_at.strftime('%Y-%m-%d')}')]"), request.url
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_should_search_for_recoreded_on_date
|
30
|
+
recorded_at = Date.today
|
31
|
+
request = TestSearch.new(:fields => {:recorded => recorded_at})
|
32
|
+
assert_equal URI.escape("&fields=#{default_fields},entry[xs:date(yt:recorded) = xs:date('#{recorded_at.strftime('%Y-%m-%d')}')]"), request.url
|
33
|
+
end
|
34
|
+
|
35
|
+
def test_should_search_for_range_of_published_on_dates
|
36
|
+
starts_at = Date.today - 4
|
37
|
+
ends_at = Date.today
|
38
|
+
request = TestSearch.new(:fields => {:published => (starts_at..ends_at)})
|
39
|
+
assert_equal URI.escape("&fields=#{default_fields},entry[xs:dateTime(published) > xs:dateTime('#{starts_at.strftime('%Y-%m-%d')}T00:00:00') and xs:dateTime(published) < xs:dateTime('#{ends_at.strftime('%Y-%m-%d')}T00:00:00')]"), request.url
|
40
|
+
end
|
41
|
+
|
42
|
+
def test_search_for_published_on_date
|
43
|
+
published_at = Date.today
|
44
|
+
request = TestSearch.new(:fields => {:published => published_at})
|
45
|
+
assert_equal URI.escape("&fields=#{default_fields},entry[xs:date(published) = xs:date('#{published_at.strftime('%Y-%m-%d')}')]"), request.url
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
data/test/test_video.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require File.dirname(__FILE__) + '/helper'
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/helper')
|
2
2
|
|
3
3
|
class TestVideo < Test::Unit::TestCase
|
4
4
|
def test_should_extract_unique_id_from_video_id
|
@@ -29,7 +29,7 @@ class TestVideo < Test::Unit::TestCase
|
|
29
29
|
|
30
30
|
assert_equal "http://gdata.youtube.com/feeds/api/videos/BDqs-OZWw9o/responses", response.feed_id
|
31
31
|
assert_equal 25, response.max_result_count
|
32
|
-
assert_equal
|
32
|
+
assert_equal 25, response.videos.length
|
33
33
|
assert_equal 1, response.offset
|
34
34
|
assert(response.total_result_count > 0)
|
35
35
|
assert_instance_of Time, response.updated_at
|
data/test/test_video_search.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require File.dirname(__FILE__) + '/helper'
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/helper')
|
2
2
|
|
3
3
|
class TestVideoSearch < Test::Unit::TestCase
|
4
4
|
|
@@ -137,4 +137,5 @@ class TestVideoSearch < Test::Unit::TestCase
|
|
137
137
|
request = YouTubeIt::Request::UserSearch.new(:favorites, :user => 'liz', :offset => 20, :max_results => 10)
|
138
138
|
assert_equal "http://gdata.youtube.com/feeds/api/users/liz/favorites?max-results=10&start-index=20&v=2", request.url
|
139
139
|
end
|
140
|
+
|
140
141
|
end
|
data/youtube_it.gemspec
CHANGED
@@ -5,26 +5,27 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{youtube_it}
|
8
|
-
s.version = "
|
8
|
+
s.version = "2.0.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["kylejginavan", "chebyte", "mseppae"]
|
12
|
-
s.date = %q{2011-
|
12
|
+
s.date = %q{2011-07-02}
|
13
13
|
s.description = %q{Upload, delete, update, comment on youtube videos all from one gem.}
|
14
14
|
s.email = %q{kylejginavan@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
16
16
|
"README.rdoc"
|
17
17
|
]
|
18
18
|
s.files = [
|
19
|
-
"History.txt",
|
20
19
|
"Manifest.txt",
|
21
20
|
"README.rdoc",
|
22
21
|
"Rakefile",
|
23
|
-
"TODO.txt",
|
24
22
|
"VERSION",
|
25
23
|
"lib/youtube_it.rb",
|
26
24
|
"lib/youtube_it/chain_io.rb",
|
27
25
|
"lib/youtube_it/client.rb",
|
26
|
+
"lib/youtube_it/middleware/faraday_authheader.rb",
|
27
|
+
"lib/youtube_it/middleware/faraday_oauth.rb",
|
28
|
+
"lib/youtube_it/middleware/faraday_youtubeit.rb",
|
28
29
|
"lib/youtube_it/model/author.rb",
|
29
30
|
"lib/youtube_it/model/category.rb",
|
30
31
|
"lib/youtube_it/model/comment.rb",
|
@@ -32,23 +33,27 @@ Gem::Specification.new do |s|
|
|
32
33
|
"lib/youtube_it/model/content.rb",
|
33
34
|
"lib/youtube_it/model/playlist.rb",
|
34
35
|
"lib/youtube_it/model/rating.rb",
|
36
|
+
"lib/youtube_it/model/subscription.rb",
|
35
37
|
"lib/youtube_it/model/thumbnail.rb",
|
36
38
|
"lib/youtube_it/model/user.rb",
|
37
39
|
"lib/youtube_it/model/video.rb",
|
38
40
|
"lib/youtube_it/parser.rb",
|
39
41
|
"lib/youtube_it/record.rb",
|
40
42
|
"lib/youtube_it/request/base_search.rb",
|
43
|
+
"lib/youtube_it/request/error.rb",
|
41
44
|
"lib/youtube_it/request/standard_search.rb",
|
42
45
|
"lib/youtube_it/request/user_search.rb",
|
43
46
|
"lib/youtube_it/request/video_search.rb",
|
44
47
|
"lib/youtube_it/request/video_upload.rb",
|
45
48
|
"lib/youtube_it/response/video_search.rb",
|
46
49
|
"lib/youtube_it/version.rb",
|
50
|
+
"test/files/recorded_response.xml",
|
47
51
|
"test/files/youtube_video_response.xml",
|
48
52
|
"test/helper.rb",
|
49
53
|
"test/test.mov",
|
50
54
|
"test/test_chain_io.rb",
|
51
55
|
"test/test_client.rb",
|
56
|
+
"test/test_field_search.rb",
|
52
57
|
"test/test_video.rb",
|
53
58
|
"test/test_video_feed_parser.rb",
|
54
59
|
"test/test_video_search.rb",
|
@@ -62,6 +67,7 @@ Gem::Specification.new do |s|
|
|
62
67
|
"test/helper.rb",
|
63
68
|
"test/test_chain_io.rb",
|
64
69
|
"test/test_client.rb",
|
70
|
+
"test/test_field_search.rb",
|
65
71
|
"test/test_video.rb",
|
66
72
|
"test/test_video_feed_parser.rb",
|
67
73
|
"test/test_video_search.rb"
|
@@ -72,13 +78,19 @@ Gem::Specification.new do |s|
|
|
72
78
|
|
73
79
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
74
80
|
s.add_runtime_dependency(%q<oauth>, [">= 0.4.4"])
|
81
|
+
s.add_runtime_dependency(%q<simple_oauth>, [">= 0.1.5"])
|
82
|
+
s.add_runtime_dependency(%q<faraday>, [">= 0.7.3"])
|
75
83
|
s.add_runtime_dependency(%q<builder>, [">= 0"])
|
76
84
|
else
|
77
85
|
s.add_dependency(%q<oauth>, [">= 0.4.4"])
|
86
|
+
s.add_dependency(%q<simple_oauth>, [">= 0.1.5"])
|
87
|
+
s.add_dependency(%q<faraday>, [">= 0.7.3"])
|
78
88
|
s.add_dependency(%q<builder>, [">= 0"])
|
79
89
|
end
|
80
90
|
else
|
81
91
|
s.add_dependency(%q<oauth>, [">= 0.4.4"])
|
92
|
+
s.add_dependency(%q<simple_oauth>, [">= 0.1.5"])
|
93
|
+
s.add_dependency(%q<faraday>, [">= 0.7.3"])
|
82
94
|
s.add_dependency(%q<builder>, [">= 0"])
|
83
95
|
end
|
84
96
|
end
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: youtube_it
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version:
|
5
|
+
version: 2.0.0
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- kylejginavan
|
@@ -12,7 +12,7 @@ autorequire:
|
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
14
|
|
15
|
-
date: 2011-
|
15
|
+
date: 2011-07-02 00:00:00 -05:00
|
16
16
|
default_executable:
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
@@ -27,16 +27,38 @@ dependencies:
|
|
27
27
|
type: :runtime
|
28
28
|
version_requirements: *id001
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
|
-
name:
|
30
|
+
name: simple_oauth
|
31
31
|
prerelease: false
|
32
32
|
requirement: &id002 !ruby/object:Gem::Requirement
|
33
33
|
none: false
|
34
34
|
requirements:
|
35
35
|
- - ">="
|
36
36
|
- !ruby/object:Gem::Version
|
37
|
-
version:
|
37
|
+
version: 0.1.5
|
38
38
|
type: :runtime
|
39
39
|
version_requirements: *id002
|
40
|
+
- !ruby/object:Gem::Dependency
|
41
|
+
name: faraday
|
42
|
+
prerelease: false
|
43
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
44
|
+
none: false
|
45
|
+
requirements:
|
46
|
+
- - ">="
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 0.7.3
|
49
|
+
type: :runtime
|
50
|
+
version_requirements: *id003
|
51
|
+
- !ruby/object:Gem::Dependency
|
52
|
+
name: builder
|
53
|
+
prerelease: false
|
54
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
55
|
+
none: false
|
56
|
+
requirements:
|
57
|
+
- - ">="
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: "0"
|
60
|
+
type: :runtime
|
61
|
+
version_requirements: *id004
|
40
62
|
description: Upload, delete, update, comment on youtube videos all from one gem.
|
41
63
|
email: kylejginavan@gmail.com
|
42
64
|
executables: []
|
@@ -46,15 +68,16 @@ extensions: []
|
|
46
68
|
extra_rdoc_files:
|
47
69
|
- README.rdoc
|
48
70
|
files:
|
49
|
-
- History.txt
|
50
71
|
- Manifest.txt
|
51
72
|
- README.rdoc
|
52
73
|
- Rakefile
|
53
|
-
- TODO.txt
|
54
74
|
- VERSION
|
55
75
|
- lib/youtube_it.rb
|
56
76
|
- lib/youtube_it/chain_io.rb
|
57
77
|
- lib/youtube_it/client.rb
|
78
|
+
- lib/youtube_it/middleware/faraday_authheader.rb
|
79
|
+
- lib/youtube_it/middleware/faraday_oauth.rb
|
80
|
+
- lib/youtube_it/middleware/faraday_youtubeit.rb
|
58
81
|
- lib/youtube_it/model/author.rb
|
59
82
|
- lib/youtube_it/model/category.rb
|
60
83
|
- lib/youtube_it/model/comment.rb
|
@@ -62,23 +85,27 @@ files:
|
|
62
85
|
- lib/youtube_it/model/content.rb
|
63
86
|
- lib/youtube_it/model/playlist.rb
|
64
87
|
- lib/youtube_it/model/rating.rb
|
88
|
+
- lib/youtube_it/model/subscription.rb
|
65
89
|
- lib/youtube_it/model/thumbnail.rb
|
66
90
|
- lib/youtube_it/model/user.rb
|
67
91
|
- lib/youtube_it/model/video.rb
|
68
92
|
- lib/youtube_it/parser.rb
|
69
93
|
- lib/youtube_it/record.rb
|
70
94
|
- lib/youtube_it/request/base_search.rb
|
95
|
+
- lib/youtube_it/request/error.rb
|
71
96
|
- lib/youtube_it/request/standard_search.rb
|
72
97
|
- lib/youtube_it/request/user_search.rb
|
73
98
|
- lib/youtube_it/request/video_search.rb
|
74
99
|
- lib/youtube_it/request/video_upload.rb
|
75
100
|
- lib/youtube_it/response/video_search.rb
|
76
101
|
- lib/youtube_it/version.rb
|
102
|
+
- test/files/recorded_response.xml
|
77
103
|
- test/files/youtube_video_response.xml
|
78
104
|
- test/helper.rb
|
79
105
|
- test/test.mov
|
80
106
|
- test/test_chain_io.rb
|
81
107
|
- test/test_client.rb
|
108
|
+
- test/test_field_search.rb
|
82
109
|
- test/test_video.rb
|
83
110
|
- test/test_video_feed_parser.rb
|
84
111
|
- test/test_video_search.rb
|
@@ -115,6 +142,7 @@ test_files:
|
|
115
142
|
- test/helper.rb
|
116
143
|
- test/test_chain_io.rb
|
117
144
|
- test/test_client.rb
|
145
|
+
- test/test_field_search.rb
|
118
146
|
- test/test_video.rb
|
119
147
|
- test/test_video_feed_parser.rb
|
120
148
|
- test/test_video_search.rb
|