yt 0.6.6 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f74593918f4438efda8c54c95de7a2e2b634693c
4
- data.tar.gz: 22e62fea481c55ba2617f599f771d4366e0a3fc0
3
+ metadata.gz: 2a5cb2545b6f99eea1e0198c6109efd72a30c3eb
4
+ data.tar.gz: 9c1782a564c0705ce405d867d4f4b0d29f1b7b34
5
5
  SHA512:
6
- metadata.gz: a1250ca6bc60ccb285275f77c86a69ee89be0292f4ebb914e756a6ac5ed4bc6e63898df981124787b2b74bbe90efd84b99a2ade2d8372c9b44b37f18ac83fef6
7
- data.tar.gz: d7df6f595c1d9e160e5844f3ffc67b4405b5a0f6e2da25ebcb5da273cfea13e74a07dd48c2b85b409d61faf8bdb5854a985cbbfe51a92468587ac4fa955fcad6
6
+ metadata.gz: 9f10cbdd0d96b4cc395064814b0aa4cb85b6769ee71981415092797bb9d5931ce35e856560592c3960602e007798894a206df96e4454e60128f86216e7cc61a9
7
+ data.tar.gz: 9966a633b35554e6716245eb7da8d786bd9f3d79cdf29c77c1bc09101b26348d5031f856e2a33e194ae8d64c9a600bbd131f1c88b44afc1ea2aeabc7f5300aaa
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- yt (0.6.6)
4
+ yt (0.7.0)
5
5
  activesupport
6
6
 
7
7
  GEM
data/HISTORY.md CHANGED
@@ -1,3 +1,10 @@
1
+ v0.7 - 2014/06/18
2
+ -----------------
3
+
4
+ * [breaking change] Rename DetailsSet to ContentDetail
5
+ * Add statistics_set to Video (views, likes, dislikes, favorites, comments)
6
+ * Add statistics_set to Channel (views, comments, videos, subscribers)
7
+
1
8
  v0.6 - 2014/06/05
2
9
  -----------------
3
10
 
data/README.md CHANGED
@@ -19,13 +19,23 @@ channel = Yt::Channel.new id: 'UCxO1tY8h1AhOz0T4ENwmpow'
19
19
  channel.title #=> "Fullscreen"
20
20
  channel.description #=> "The first media company for the connected generation."
21
21
  channel.public? #=> true
22
- channel.videos.count #=> 12
22
+ channel.view_count #=> 421619
23
+ channel.comment_count #=> 773
24
+ channel.video_count #=> 13
25
+ channel.subscriber_count #=> 136925
26
+ channel.subscriber_count_visible? #=> true
27
+ channel.videos.count #=> 13
23
28
  ```
24
29
 
25
30
  ```ruby
26
31
  video = Yt::Video.new id: 'MESycYJytkU'
27
32
  video.title #=> "Fullscreen Creator Platform"
28
33
  video.public? #=> true
34
+ video.view_count #=> 55843
35
+ video.comment_count #=> 308
36
+ video.like_count #=> 556
37
+ video.dislike_count #=> 78
38
+ video.favorite_count #=> 0
29
39
  video.duration #=> 86
30
40
  video.hd? #=> true
31
41
  video.stereoscopic? #=> false
@@ -336,7 +346,7 @@ To install on your system, run
336
346
 
337
347
  To use inside a bundled Ruby project, add this line to the Gemfile:
338
348
 
339
- gem 'yt', '~> 0.6.6'
349
+ gem 'yt', '~> 0.7.0'
340
350
 
341
351
  Since the gem follows [Semantic Versioning](http://semver.org),
342
352
  indicating the full version in your Gemfile (~> *major*.*minor*.*patch*)
data/bin/yt CHANGED
@@ -15,6 +15,12 @@ puts "Title: #{channel.title}"
15
15
  puts "Description: #{channel.description}"
16
16
  puts "Thumbnail: #{channel.thumbnail_url}"
17
17
  puts "Public? #{channel.public?}"
18
+ puts "Views: #{channel.view_count}"
19
+ puts "Comments: #{channel.comment_count}"
20
+ puts "Videos: #{channel.video_count}"
21
+ puts "Subscribers: #{channel.subscriber_count}"
22
+ puts "Subscribers are visible? #{channel.subscriber_count_visible?}"
23
+
18
24
  puts "Videos: "
19
25
  channel.videos.each do |video|
20
26
  puts " Annotations: #{video.annotations.count}"
@@ -23,6 +29,11 @@ channel.videos.each do |video|
23
29
  puts " Description: #{video.description}"
24
30
  puts " Thumbnail: #{video.thumbnail_url}"
25
31
  puts " Public? #{video.public?}"
32
+ puts " Views: #{video.view_count}"
33
+ puts " Comments: #{video.comment_count}"
34
+ puts " Likes: #{video.like_count}"
35
+ puts " Dislikes: #{video.dislike_count}"
36
+ puts " Favorites: #{video.favorite_count}"
26
37
  puts " hd? #{video.hd?}"
27
38
  puts " stereoscopic? #{video.stereoscopic?}"
28
39
  puts " captioned? #{video.captioned?}"
@@ -0,0 +1,27 @@
1
+ require 'yt/collections/base'
2
+ require 'yt/models/content_detail'
3
+
4
+ module Yt
5
+ module Collections
6
+ class ContentDetails < Base
7
+
8
+ private
9
+
10
+ # @return [Yt::Models::ContentDetail] a new content detail initialized
11
+ # with one of the items returned by asking YouTube for a list of them.
12
+ def new_item(data)
13
+ Yt::ContentDetail.new data: data['contentDetails']
14
+ end
15
+
16
+ # @return [Hash] the parameters to submit to YouTube to get the
17
+ # content detail of a resource, for instance a video.
18
+ # @see https://developers.google.com/youtube/v3/docs/videos#resource
19
+ def list_params
20
+ super.tap do |params|
21
+ params[:params] = {maxResults: 50, part: 'contentDetails', id: @parent.id}
22
+ params[:path] = '/youtube/v3/videos'
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ require 'yt/collections/base'
2
+ require 'yt/models/statistics_set'
3
+
4
+ module Yt
5
+ module Collections
6
+ class StatisticsSets < Base
7
+
8
+ private
9
+
10
+ # @return [Yt::Models::StatisticsSet] a new statistics set initialized
11
+ # with one of the items returned by asking YouTube for a list of them.
12
+ def new_item(data)
13
+ Yt::StatisticsSet.new data: data['statistics']
14
+ end
15
+
16
+ # @return [Hash] the parameters to submit to YouTube to get the
17
+ # statistics of a resource, for instance a video.
18
+ # @see https://developers.google.com/youtube/v3/docs/videos#resource
19
+ def list_params
20
+ super.tap do |params|
21
+ params[:params] = {maxResults: 50, part: 'statistics', id: @parent.id}
22
+ params[:path] = "/youtube/v3/#{@parent.kind.pluralize}"
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -22,6 +22,13 @@ module Yt
22
22
  # @return [Yt::Collections::Playlists] the channel’s playlists.
23
23
  has_many :playlists
24
24
 
25
+
26
+ # @!attribute [r] statistics_set
27
+ # @return [Yt::Models::StatisticsSet] the statistics for the video.
28
+ has_one :statistics_set
29
+ delegate :view_count, :comment_count, :video_count, :subscriber_count,
30
+ :subscriber_count_visible?, to: :statistics_set
31
+
25
32
  # Returns whether the authenticated account is subscribed to the channel.
26
33
  #
27
34
  # This method requires {Resource#auth auth} to return an
@@ -5,7 +5,7 @@ module Yt
5
5
  # Encapsulates information about the video content, including the length
6
6
  # of the video and an indication of whether captions are available.
7
7
  # @see https://developers.google.com/youtube/v3/docs/videos#resource
8
- class DetailsSet < Base
8
+ class ContentDetail < Base
9
9
 
10
10
  def initialize(options = {})
11
11
  @data = options[:data]
@@ -0,0 +1,56 @@
1
+ require 'yt/models/base'
2
+
3
+ module Yt
4
+ module Models
5
+ # Encapsulates statistics about the resource, such as the number of times
6
+ # the resource has been viewed or liked.
7
+ # @see https://developers.google.com/youtube/v3/docs/videos#resource
8
+ class StatisticsSet < Base
9
+
10
+ def initialize(options = {})
11
+ @data = options[:data]
12
+ end
13
+
14
+ # @return [Integer] the number of times the resource has been viewed.
15
+ def view_count
16
+ @view_count ||= @data['viewCount'].to_i
17
+ end
18
+
19
+ # @return [Integer] the number of comments for the resource.
20
+ def comment_count
21
+ @comment_count ||= @data['commentCount'].to_i
22
+ end
23
+
24
+ # @return [Integer] the number of users who liked the resource.
25
+ def like_count
26
+ @like_count ||= @data['likeCount'].to_i
27
+ end
28
+
29
+ # @return [Integer] the number of users who disliked the resource.
30
+ def dislike_count
31
+ @dislike_count ||= @data['dislikeCount'].to_i
32
+ end
33
+
34
+ # @return [Integer] the number of users who currently have the resource
35
+ # marked as a favorite resource.
36
+ def favorite_count
37
+ @favorite_count ||= @data['favoriteCount'].to_i
38
+ end
39
+
40
+ # @return [Integer] the number of videos updated to the resource.
41
+ def video_count
42
+ @video_count ||= @data['videoCount'].to_i
43
+ end
44
+
45
+ # @return [Integer] the number of subscriber the resource has.
46
+ def subscriber_count
47
+ @subscriber_count ||= @data['subscriberCount'].to_i
48
+ end
49
+
50
+ # @return [Boolean] whether the number of subscribers is publicly visible.
51
+ def subscriber_count_visible?
52
+ @subscriber_count_visible ||= @data['hiddenSubscriberCount'] == false
53
+ end
54
+ end
55
+ end
56
+ end
@@ -5,10 +5,11 @@ module Yt
5
5
  # Provides methods to interact with YouTube videos.
6
6
  # @see https://developers.google.com/youtube/v3/docs/videos
7
7
  class Video < Resource
8
- # @!attribute [r] details_set
9
- # @return [Yt::Models::DetailsSet] the video’s content details.
10
- has_one :details_set
11
- delegate :duration, :hd?, :stereoscopic?, :captioned?, :licensed?, to: :details_set
8
+ # @!attribute [r] content_detail
9
+ # @return [Yt::Models::ContentDetail] the video’s content details.
10
+ has_one :content_detail
11
+ delegate :duration, :hd?, :stereoscopic?, :captioned?, :licensed?,
12
+ to: :content_detail
12
13
 
13
14
  # @!attribute [r] rating
14
15
  # @return [Yt::Models::Rating] the video’s rating.
@@ -18,6 +19,12 @@ module Yt
18
19
  # @return [Yt::Collections::Annotations] the video’s annotations.
19
20
  has_many :annotations
20
21
 
22
+ # @!attribute [r] statistics_set
23
+ # @return [Yt::Models::StatisticsSet] the statistics for the video.
24
+ has_one :statistics_set
25
+ delegate :view_count, :like_count, :dislike_count, :favorite_count,
26
+ :comment_count, to: :statistics_set
27
+
21
28
  # Returns whether the authenticated account likes the video.
22
29
  #
23
30
  # This method requires {Resource#auth auth} to return an
@@ -1,3 +1,3 @@
1
1
  module Yt
2
- VERSION = '0.6.6'
3
- end
2
+ VERSION = '0.7.0'
3
+ end
@@ -16,6 +16,16 @@ describe Yt::Channel, :device_app do
16
16
  it { expect{channel.snippet}.to raise_error Yt::Errors::NoItems }
17
17
  end
18
18
 
19
+ describe '.statistics_set of existing channel' do
20
+ let(:id) { 'UCxO1tY8h1AhOz0T4ENwmpow' }
21
+ it { expect(channel.statistics_set).to be_a Yt::StatisticsSet }
22
+ end
23
+
24
+ describe '.statistics_set of unknown channel' do
25
+ let(:id) { 'not-a-channel-id' }
26
+ it { expect{channel.statistics_set}.to raise_error Yt::Errors::NoItems }
27
+ end
28
+
19
29
  describe '.status of existing channel' do
20
30
  let(:id) { 'UCxO1tY8h1AhOz0T4ENwmpow' }
21
31
  it { expect(channel.status).to be_a Yt::Status }
@@ -7,10 +7,11 @@ describe Yt::Video, :device_app do
7
7
  context 'given an existing video' do
8
8
  let(:id) { 'MESycYJytkU' }
9
9
 
10
- it { expect(video.details_set).to be_a Yt::DetailsSet }
10
+ it { expect(video.content_detail).to be_a Yt::ContentDetail }
11
11
  it { expect(video.snippet).to be_a Yt::Snippet }
12
12
  it { expect(video.rating).to be_a Yt::Rating }
13
13
  it { expect(video.status).to be_a Yt::Status }
14
+ it { expect(video.statistics_set).to be_a Yt::StatisticsSet }
14
15
 
15
16
  context 'that I like' do
16
17
  before { video.like }
@@ -34,9 +35,10 @@ describe Yt::Video, :device_app do
34
35
  context 'given an unknown video' do
35
36
  let(:id) { 'not-a-video-id' }
36
37
 
37
- it { expect{video.details_set}.to raise_error Yt::Errors::NoItems }
38
+ it { expect{video.content_detail}.to raise_error Yt::Errors::NoItems }
38
39
  it { expect{video.snippet}.to raise_error Yt::Errors::NoItems }
39
40
  it { expect{video.rating}.to raise_error Yt::Errors::NoItems }
40
41
  it { expect{video.status}.to raise_error Yt::Errors::NoItems }
42
+ it { expect{video.statistics_set}.to raise_error Yt::Errors::NoItems }
41
43
  end
42
44
  end
@@ -16,6 +16,16 @@ describe Yt::Channel, :server_app do
16
16
  it { expect{channel.snippet}.to raise_error Yt::Errors::NoItems }
17
17
  end
18
18
 
19
+ describe '.statistics_set of existing channel' do
20
+ let(:id) { 'UCxO1tY8h1AhOz0T4ENwmpow' }
21
+ it { expect(channel.statistics_set).to be_a Yt::StatisticsSet }
22
+ end
23
+
24
+ describe '.statistics_set of unknown channel' do
25
+ let(:id) { 'not-a-channel-id' }
26
+ it { expect{channel.statistics_set}.to raise_error Yt::Errors::NoItems }
27
+ end
28
+
19
29
  describe '.status of existing channel' do
20
30
  let(:id) { 'UCxO1tY8h1AhOz0T4ENwmpow' }
21
31
  it { expect(channel.status).to be_a Yt::Status }
@@ -7,16 +7,18 @@ describe Yt::Video, :server_app do
7
7
  context 'given an existing video' do
8
8
  let(:id) { 'MESycYJytkU' }
9
9
 
10
- it { expect(video.details_set).to be_a Yt::DetailsSet }
10
+ it { expect(video.content_detail).to be_a Yt::ContentDetail }
11
11
  it { expect(video.snippet).to be_a Yt::Snippet }
12
12
  it { expect(video.status).to be_a Yt::Status }
13
+ it { expect(video.statistics_set).to be_a Yt::StatisticsSet }
13
14
  end
14
15
 
15
16
  context 'given an unknown video' do
16
17
  let(:id) { 'not-a-video-id' }
17
18
 
18
- it { expect{video.details_set}.to raise_error Yt::Errors::NoItems }
19
+ it { expect{video.content_detail}.to raise_error Yt::Errors::NoItems }
19
20
  it { expect{video.snippet}.to raise_error Yt::Errors::NoItems }
20
21
  it { expect{video.status}.to raise_error Yt::Errors::NoItems }
22
+ it { expect{video.statistics_set}.to raise_error Yt::Errors::NoItems }
21
23
  end
22
24
  end
@@ -0,0 +1,6 @@
1
+ require 'spec_helper'
2
+ require 'yt/collections/content_details'
3
+
4
+ describe Yt::Collections::ContentDetails do
5
+ # Nothing to test
6
+ end
@@ -1,76 +1,76 @@
1
1
  require 'spec_helper'
2
- require 'yt/models/details_set'
2
+ require 'yt/models/content_detail'
3
3
 
4
- describe Yt::DetailsSet do
5
- subject(:details_set) { Yt::DetailsSet.new data: data }
4
+ describe Yt::ContentDetail do
5
+ subject(:content_detail) { Yt::ContentDetail.new data: data }
6
6
 
7
7
  describe '#duration' do
8
- context 'given a details_set with duration in hours, minutes, seconds' do
8
+ context 'given a content_detail with duration in hours, minutes, seconds' do
9
9
  let(:data) { {"duration"=>"PT1H18M52S"} }
10
- it { expect(details_set.duration).to eq 4732 }
10
+ it { expect(content_detail.duration).to eq 4732 }
11
11
  end
12
12
 
13
- context 'given a details_set with duration in minutes and seconds' do
13
+ context 'given a content_detail with duration in minutes and seconds' do
14
14
  let(:data) { {"duration"=>"PT2M51S"} }
15
- it { expect(details_set.duration).to eq 171 }
15
+ it { expect(content_detail.duration).to eq 171 }
16
16
  end
17
17
 
18
- context 'given a details_set with duration in minutes' do
18
+ context 'given a content_detail with duration in minutes' do
19
19
  let(:data) { {"duration"=>"PT2M"} }
20
- it { expect(details_set.duration).to eq 120 }
20
+ it { expect(content_detail.duration).to eq 120 }
21
21
  end
22
22
 
23
- context 'given a details_set with duration in seconds' do
23
+ context 'given a content_detail with duration in seconds' do
24
24
  let(:data) { {"duration"=>"PT51S"} }
25
- it { expect(details_set.duration).to eq 51 }
25
+ it { expect(content_detail.duration).to eq 51 }
26
26
  end
27
27
  end
28
28
 
29
29
  describe '#stereoscopic?' do
30
30
  context 'given a 3D video' do
31
31
  let(:data) { {"dimension"=>"3d"} }
32
- it { expect(details_set).to be_stereoscopic }
32
+ it { expect(content_detail).to be_stereoscopic }
33
33
  end
34
34
 
35
35
  context 'given a 2D video' do
36
36
  let(:data) { {"dimension"=>"2d"} }
37
- it { expect(details_set).not_to be_stereoscopic }
37
+ it { expect(content_detail).not_to be_stereoscopic }
38
38
  end
39
39
  end
40
40
 
41
41
  describe '#hd?' do
42
42
  context 'given a high-definition video' do
43
43
  let(:data) { {"definition"=>"hd"} }
44
- it { expect(details_set).to be_hd }
44
+ it { expect(content_detail).to be_hd }
45
45
  end
46
46
 
47
47
  context 'given a standard-definition video' do
48
48
  let(:data) { {"definition"=>"sd"} }
49
- it { expect(details_set).not_to be_hd }
49
+ it { expect(content_detail).not_to be_hd }
50
50
  end
51
51
  end
52
52
 
53
53
  describe '#captioned?' do
54
54
  context 'given a video with captions' do
55
55
  let(:data) { {"caption"=>"true"} }
56
- it { expect(details_set).to be_captioned }
56
+ it { expect(content_detail).to be_captioned }
57
57
  end
58
58
 
59
59
  context 'given a video without captions' do
60
60
  let(:data) { {"caption"=>"false"} }
61
- it { expect(details_set).not_to be_captioned }
61
+ it { expect(content_detail).not_to be_captioned }
62
62
  end
63
63
  end
64
64
 
65
65
  describe '#captioned?' do
66
66
  context 'given a video with licensed content' do
67
67
  let(:data) { {"licensedContent"=>true} }
68
- it { expect(details_set).to be_licensed }
68
+ it { expect(content_detail).to be_licensed }
69
69
  end
70
70
 
71
71
  context 'given a video without licensed content' do
72
72
  let(:data) { {"licensedContent"=>false} }
73
- it { expect(details_set).not_to be_licensed }
73
+ it { expect(content_detail).not_to be_licensed }
74
74
  end
75
75
  end
76
76
  end
@@ -0,0 +1,68 @@
1
+ require 'spec_helper'
2
+ require 'yt/models/statistics_set'
3
+
4
+ describe Yt::StatisticsSet do
5
+ subject(:statistics_set) { Yt::StatisticsSet.new data: data }
6
+ let(:value) { 42 }
7
+
8
+ describe '#view_count' do
9
+ context 'given a video with views' do
10
+ let(:data) { {"viewCount"=>value} }
11
+ it { expect(statistics_set.view_count).to be value }
12
+ end
13
+ end
14
+
15
+ describe '#comment_count' do
16
+ context 'given a video with comments' do
17
+ let(:data) { {"commentCount"=>value} }
18
+ it { expect(statistics_set.comment_count).to be value }
19
+ end
20
+ end
21
+
22
+ describe '#like_count' do
23
+ context 'given a video with likes' do
24
+ let(:data) { {"likeCount"=>value} }
25
+ it { expect(statistics_set.like_count).to be value }
26
+ end
27
+ end
28
+
29
+ describe '#dislike_count' do
30
+ context 'given a video with dislikes' do
31
+ let(:data) { {"dislikeCount"=>value} }
32
+ it { expect(statistics_set.dislike_count).to be value }
33
+ end
34
+ end
35
+
36
+ describe '#favorite_count' do
37
+ context 'given a video with favorites' do
38
+ let(:data) { {"favoriteCount"=>value} }
39
+ it { expect(statistics_set.favorite_count).to be value }
40
+ end
41
+ end
42
+
43
+ describe '#video_count' do
44
+ context 'given a video with videos' do
45
+ let(:data) { {"videoCount"=>value} }
46
+ it { expect(statistics_set.video_count).to be value }
47
+ end
48
+ end
49
+
50
+ describe '#subscriber_count' do
51
+ context 'given a video with subscribers' do
52
+ let(:data) { {"subscriberCount"=>value} }
53
+ it { expect(statistics_set.subscriber_count).to be value }
54
+ end
55
+ end
56
+
57
+ describe '#subscriber_count_visible?' do
58
+ context 'given a video with publicly visible subscribers' do
59
+ let(:data) { {"hiddenSubscriberCount"=>false} }
60
+ it { expect(statistics_set).to be_subscriber_count_visible }
61
+ end
62
+
63
+ context 'given a video with hidden subscribers' do
64
+ let(:data) { {"hiddenSubscriberCount"=>true} }
65
+ it { expect(statistics_set).not_to be_subscriber_count_visible }
66
+ end
67
+ end
68
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.6
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Claudio Baccigalupo
@@ -129,7 +129,7 @@ files:
129
129
  - lib/yt/collections/authentications.rb
130
130
  - lib/yt/collections/base.rb
131
131
  - lib/yt/collections/channels.rb
132
- - lib/yt/collections/details_sets.rb
132
+ - lib/yt/collections/content_details.rb
133
133
  - lib/yt/collections/earnings.rb
134
134
  - lib/yt/collections/ids.rb
135
135
  - lib/yt/collections/partnered_channels.rb
@@ -138,6 +138,7 @@ files:
138
138
  - lib/yt/collections/ratings.rb
139
139
  - lib/yt/collections/reports.rb
140
140
  - lib/yt/collections/snippets.rb
141
+ - lib/yt/collections/statistics_sets.rb
141
142
  - lib/yt/collections/statuses.rb
142
143
  - lib/yt/collections/subscriptions.rb
143
144
  - lib/yt/collections/user_infos.rb
@@ -155,9 +156,9 @@ files:
155
156
  - lib/yt/models/base.rb
156
157
  - lib/yt/models/channel.rb
157
158
  - lib/yt/models/configuration.rb
159
+ - lib/yt/models/content_detail.rb
158
160
  - lib/yt/models/content_owner.rb
159
161
  - lib/yt/models/description.rb
160
- - lib/yt/models/details_set.rb
161
162
  - lib/yt/models/id.rb
162
163
  - lib/yt/models/playlist.rb
163
164
  - lib/yt/models/playlist_item.rb
@@ -165,6 +166,7 @@ files:
165
166
  - lib/yt/models/request.rb
166
167
  - lib/yt/models/resource.rb
167
168
  - lib/yt/models/snippet.rb
169
+ - lib/yt/models/statistics_set.rb
168
170
  - lib/yt/models/status.rb
169
171
  - lib/yt/models/subscription.rb
170
172
  - lib/yt/models/url.rb
@@ -187,7 +189,7 @@ files:
187
189
  - spec/associations/server_auth/video_spec.rb
188
190
  - spec/collections/annotations_spec.rb
189
191
  - spec/collections/channels_spec.rb
190
- - spec/collections/details_sets_spec.rb
192
+ - spec/collections/content_details_spec.rb
191
193
  - spec/collections/earnings_spec.rb
192
194
  - spec/collections/playlist_items_spec.rb
193
195
  - spec/collections/playlists_spec.rb
@@ -203,14 +205,15 @@ files:
203
205
  - spec/models/annotation_spec.rb
204
206
  - spec/models/channel_spec.rb
205
207
  - spec/models/configuration_spec.rb
208
+ - spec/models/content_detail_spec.rb
206
209
  - spec/models/description_spec.rb
207
- - spec/models/details_set_spec.rb
208
210
  - spec/models/playlist_item_spec.rb
209
211
  - spec/models/playlist_spec.rb
210
212
  - spec/models/rating_spec.rb
211
213
  - spec/models/request_spec.rb
212
214
  - spec/models/resource_spec.rb
213
215
  - spec/models/snippet_spec.rb
216
+ - spec/models/statistics_set_spec.rb
214
217
  - spec/models/status_spec.rb
215
218
  - spec/models/subscription_spec.rb
216
219
  - spec/models/url_spec.rb
@@ -262,7 +265,7 @@ test_files:
262
265
  - spec/associations/server_auth/video_spec.rb
263
266
  - spec/collections/annotations_spec.rb
264
267
  - spec/collections/channels_spec.rb
265
- - spec/collections/details_sets_spec.rb
268
+ - spec/collections/content_details_spec.rb
266
269
  - spec/collections/earnings_spec.rb
267
270
  - spec/collections/playlist_items_spec.rb
268
271
  - spec/collections/playlists_spec.rb
@@ -278,14 +281,15 @@ test_files:
278
281
  - spec/models/annotation_spec.rb
279
282
  - spec/models/channel_spec.rb
280
283
  - spec/models/configuration_spec.rb
284
+ - spec/models/content_detail_spec.rb
281
285
  - spec/models/description_spec.rb
282
- - spec/models/details_set_spec.rb
283
286
  - spec/models/playlist_item_spec.rb
284
287
  - spec/models/playlist_spec.rb
285
288
  - spec/models/rating_spec.rb
286
289
  - spec/models/request_spec.rb
287
290
  - spec/models/resource_spec.rb
288
291
  - spec/models/snippet_spec.rb
292
+ - spec/models/statistics_set_spec.rb
289
293
  - spec/models/status_spec.rb
290
294
  - spec/models/subscription_spec.rb
291
295
  - spec/models/url_spec.rb
@@ -1,22 +0,0 @@
1
- require 'yt/collections/base'
2
- require 'yt/models/details_set'
3
-
4
- module Yt
5
- module Collections
6
- class DetailsSets < Base
7
-
8
- private
9
-
10
- def new_item(data)
11
- Yt::DetailsSet.new data: data['contentDetails']
12
- end
13
-
14
- def list_params
15
- super.tap do |params|
16
- params[:params] = {maxResults: 50, part: 'contentDetails', id: @parent.id}
17
- params[:path] = '/youtube/v3/videos'
18
- end
19
- end
20
- end
21
- end
22
- end
@@ -1,6 +0,0 @@
1
- require 'spec_helper'
2
- require 'yt/collections/details_sets'
3
-
4
- describe Yt::Collections::DetailsSets do
5
- # Nothing to test
6
- end