yt 0.32.5 → 0.33.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +1 -4
  3. data/CHANGELOG.md +44 -0
  4. data/README.md +22 -33
  5. data/YOUTUBE_IT.md +4 -4
  6. data/lib/yt/actions/list.rb +1 -1
  7. data/lib/yt/associations/has_reports.rb +9 -14
  8. data/lib/yt/collections/playlist_items.rb +10 -1
  9. data/lib/yt/collections/reports.rb +5 -7
  10. data/lib/yt/models/account.rb +33 -3
  11. data/lib/yt/models/channel.rb +21 -5
  12. data/lib/yt/models/content_owner.rb +20 -0
  13. data/lib/yt/models/playlist.rb +12 -2
  14. data/lib/yt/models/playlist_item.rb +8 -1
  15. data/lib/yt/models/resource.rb +74 -3
  16. data/lib/yt/models/statistics_set.rb +2 -1
  17. data/lib/yt/models/status.rb +3 -1
  18. data/lib/yt/models/url.rb +2 -60
  19. data/lib/yt/models/video.rb +31 -3
  20. data/lib/yt/request.rb +7 -4
  21. data/lib/yt/version.rb +1 -1
  22. data/lib/yt.rb +1 -1
  23. data/yt.gemspec +5 -2
  24. metadata +32 -171
  25. data/spec/collections/claims_spec.rb +0 -62
  26. data/spec/collections/comment_threads_spec.rb +0 -46
  27. data/spec/collections/playlist_items_spec.rb +0 -44
  28. data/spec/collections/playlists_spec.rb +0 -27
  29. data/spec/collections/policies_spec.rb +0 -30
  30. data/spec/collections/references_spec.rb +0 -30
  31. data/spec/collections/reports_spec.rb +0 -30
  32. data/spec/collections/subscriptions_spec.rb +0 -25
  33. data/spec/collections/videos_spec.rb +0 -43
  34. data/spec/constants/geography_spec.rb +0 -16
  35. data/spec/errors/forbidden_spec.rb +0 -10
  36. data/spec/errors/missing_auth_spec.rb +0 -24
  37. data/spec/errors/no_items_spec.rb +0 -10
  38. data/spec/errors/request_error_spec.rb +0 -44
  39. data/spec/errors/server_error_spec.rb +0 -10
  40. data/spec/errors/unauthorized_spec.rb +0 -10
  41. data/spec/models/account_spec.rb +0 -138
  42. data/spec/models/annotation_spec.rb +0 -180
  43. data/spec/models/asset_spec.rb +0 -32
  44. data/spec/models/channel_spec.rb +0 -127
  45. data/spec/models/claim_event_spec.rb +0 -62
  46. data/spec/models/claim_history_spec.rb +0 -27
  47. data/spec/models/claim_spec.rb +0 -223
  48. data/spec/models/comment_spec.rb +0 -40
  49. data/spec/models/comment_thread_spec.rb +0 -93
  50. data/spec/models/configuration_spec.rb +0 -44
  51. data/spec/models/content_detail_spec.rb +0 -52
  52. data/spec/models/content_owner_detail_spec.rb +0 -6
  53. data/spec/models/file_detail_spec.rb +0 -13
  54. data/spec/models/live_streaming_detail_spec.rb +0 -6
  55. data/spec/models/ownership_spec.rb +0 -59
  56. data/spec/models/player_spec.rb +0 -13
  57. data/spec/models/playlist_item_spec.rb +0 -120
  58. data/spec/models/playlist_spec.rb +0 -138
  59. data/spec/models/policy_rule_spec.rb +0 -63
  60. data/spec/models/policy_spec.rb +0 -41
  61. data/spec/models/rating_spec.rb +0 -12
  62. data/spec/models/reference_spec.rb +0 -249
  63. data/spec/models/request_spec.rb +0 -204
  64. data/spec/models/resource_spec.rb +0 -42
  65. data/spec/models/right_owner_spec.rb +0 -71
  66. data/spec/models/snippet_spec.rb +0 -13
  67. data/spec/models/statistics_set_spec.rb +0 -13
  68. data/spec/models/status_spec.rb +0 -13
  69. data/spec/models/subscription_spec.rb +0 -30
  70. data/spec/models/url_spec.rb +0 -78
  71. data/spec/models/video_category_spec.rb +0 -21
  72. data/spec/models/video_spec.rb +0 -669
  73. data/spec/requests/as_account/account_spec.rb +0 -143
  74. data/spec/requests/as_account/authentications_spec.rb +0 -127
  75. data/spec/requests/as_account/channel_spec.rb +0 -246
  76. data/spec/requests/as_account/channels_spec.rb +0 -18
  77. data/spec/requests/as_account/playlist_item_spec.rb +0 -55
  78. data/spec/requests/as_account/playlist_spec.rb +0 -218
  79. data/spec/requests/as_account/thumbnail.jpg +0 -0
  80. data/spec/requests/as_account/video.mp4 +0 -0
  81. data/spec/requests/as_account/video_spec.rb +0 -408
  82. data/spec/requests/as_content_owner/account_spec.rb +0 -29
  83. data/spec/requests/as_content_owner/advertising_options_set_spec.rb +0 -15
  84. data/spec/requests/as_content_owner/asset_spec.rb +0 -31
  85. data/spec/requests/as_content_owner/bulk_report_job_spec.rb +0 -19
  86. data/spec/requests/as_content_owner/channel_spec.rb +0 -1836
  87. data/spec/requests/as_content_owner/claim_history_spec.rb +0 -20
  88. data/spec/requests/as_content_owner/claim_spec.rb +0 -17
  89. data/spec/requests/as_content_owner/content_owner_spec.rb +0 -370
  90. data/spec/requests/as_content_owner/match_policy_spec.rb +0 -17
  91. data/spec/requests/as_content_owner/ownership_spec.rb +0 -25
  92. data/spec/requests/as_content_owner/playlist_spec.rb +0 -767
  93. data/spec/requests/as_content_owner/video_group_spec.rb +0 -112
  94. data/spec/requests/as_content_owner/video_spec.rb +0 -1211
  95. data/spec/requests/as_server_app/channel_spec.rb +0 -54
  96. data/spec/requests/as_server_app/comment_spec.rb +0 -22
  97. data/spec/requests/as_server_app/comment_thread_spec.rb +0 -27
  98. data/spec/requests/as_server_app/comment_threads_spec.rb +0 -41
  99. data/spec/requests/as_server_app/playlist_item_spec.rb +0 -30
  100. data/spec/requests/as_server_app/playlist_spec.rb +0 -33
  101. data/spec/requests/as_server_app/url_spec.rb +0 -94
  102. data/spec/requests/as_server_app/video_spec.rb +0 -60
  103. data/spec/requests/as_server_app/videos_spec.rb +0 -40
  104. data/spec/requests/unauthenticated/video_spec.rb +0 -14
  105. data/spec/spec_helper.rb +0 -20
  106. data/spec/support/fail_matcher.rb +0 -15
  107. data/spec/support/global_hooks.rb +0 -48
@@ -1,78 +0,0 @@
1
- require 'spec_helper'
2
- require 'yt/models/url'
3
-
4
- describe Yt::URL do
5
- subject(:url) { Yt::URL.new text }
6
-
7
- context 'given a YouTube playlist URL' do
8
- let(:text) { "https://www.youtube.com/playlist?list=#{id}" }
9
-
10
- describe 'works with existing playlists' do
11
- let(:id) { 'LLxO1tY8h1AhOz0T4ENwmpow' }
12
- it {expect(url.id).to eq id }
13
- end
14
-
15
- describe 'works with unknown playlists' do
16
- let(:id) { 'PL12--not-a-playlist' }
17
- it {expect(url.id).to eq id }
18
- end
19
- end
20
-
21
- context 'given a YouTube video URL' do
22
- let(:text) { "https://www.youtube.com/watch?v=#{id}" }
23
-
24
- describe 'works with existing videos' do
25
- let(:id) { 'gknzFj_0vvY' }
26
- it {expect(url.id).to eq id }
27
- end
28
-
29
- describe 'works with unknown videos' do
30
- let(:id) { 'abc123abc12' }
31
- it {expect(url.id).to eq id }
32
- end
33
- end
34
-
35
- context 'given a YouTube channel URL in the ID form' do
36
- let(:text) { "https://www.youtube.com/channel/#{id}" }
37
-
38
- describe 'works with existing channels' do
39
- let(:id) { 'UC4lU5YG9QDgs0X2jdnt7cdQ' }
40
- it {expect(url.id).to eq id }
41
- end
42
-
43
- describe 'works with unknown channels' do
44
- let(:id) { 'UC-not-an-actual-channel' }
45
- it {expect(url.id).to eq id }
46
- end
47
- end
48
-
49
- context 'given an existing YouTube channel' do
50
- let(:text) { 'youtube.com/channel/UCxO1tY8h1AhOz0T4ENwmpow' }
51
- it {expect(url.kind).to eq :channel }
52
- end
53
-
54
- context 'given an existing YouTube video' do
55
- let(:text) { 'youtube.com/watch?v=gknzFj_0vvY' }
56
- it {expect(url.kind).to eq :video }
57
- end
58
-
59
- context 'given an existing YouTube playlist' do
60
- let(:text) { 'youtube.com/playlist?list=LLxO1tY8h1AhOz0T4ENwmpow' }
61
- it {expect(url.kind).to eq :playlist }
62
- end
63
-
64
- context 'given an unknown YouTube channel URL' do
65
- let(:text) { 'youtube.com/channel/UC-too-short-to-be-an-id' }
66
- it {expect(url.kind).to eq :channel }
67
- end
68
-
69
- context 'given an unknown YouTube video URL' do
70
- let(:text) { 'youtu.be/not-an-id' }
71
- it {expect(url.kind).to eq :unknown }
72
- end
73
-
74
- context 'given an unknown text' do
75
- let(:text) { 'not-really-anything---' }
76
- it {expect(url.kind).to eq :unknown }
77
- end
78
- end
@@ -1,21 +0,0 @@
1
- require 'spec_helper'
2
- require 'yt/models/video_category'
3
-
4
- describe Yt::VideoCategory do
5
- subject(:video_category) { Yt::VideoCategory.new attrs }
6
-
7
- describe '#id' do
8
- context 'given fetching a video category returns an id' do
9
- let(:attrs) { {id: "22"} }
10
- it { expect(video_category.id).to eq '22' }
11
- end
12
- end
13
-
14
- describe '#snippet' do
15
- context 'given fetching a video category returns a snippet' do
16
- let(:attrs) { {snippet: {"title": "People & Blogs", "assignable": true}} }
17
-
18
- it { expect(video_category.snippet).to be_a Yt::Snippet }
19
- end
20
- end
21
- end