actv 2.9.2 → 2.10.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f4b9235b85a62c23bc86c46dc5d054b40b009cf7
4
- data.tar.gz: ffd33037244dfcc960fff5b21e251c7fc10f302d
3
+ metadata.gz: b2175a917870794aed398b55920c82bedc319d86
4
+ data.tar.gz: a58b0431c34232399372295aae2e0be43941285e
5
5
  SHA512:
6
- metadata.gz: 327fd5b855a2769b9bc00b071942912e60a94c0638ae7bbcff50f76de6999ba8a7a080472861cabf3af92a29dc4b03fcec9e430a4c1c71d52973f2bfd63c545a
7
- data.tar.gz: b36bb67e8bbaf3555d7a0f1cded36f9890dc9fd26cc55beff5a469c0e86559616bd0404b508f2cfbf1b20f03479cee701539616b67c134dc91a3272b1aab6f84
6
+ metadata.gz: ec4f7d7995271be28577d6fe4bc54478c3ea7e49e04df697835778f1d769a16086799be92f11c0508751f5daae988bea0e0943458e45d7506c46e6fad2647826
7
+ data.tar.gz: 74a01c857356437dbfbbe4ebbc4625136e32964049b050827c06fb18d330a4f6048026d6e8466e09075aa13e1613021badf1d42c23a42c9fbaf481eec1b414df
data/actv.gemspec CHANGED
@@ -16,7 +16,7 @@ Gem::Specification.new do |gem|
16
16
  gem.add_development_dependency 'timecop'
17
17
  gem.add_development_dependency 'webmock'
18
18
  gem.add_development_dependency 'yard'
19
- gem.add_development_dependency 'activesupport'
19
+ gem.add_development_dependency 'activesupport', '4.2.6'
20
20
 
21
21
 
22
22
  gem.authors = ["Nathaniel Barnes"]
data/lib/actv/client.rb CHANGED
@@ -23,6 +23,8 @@ require 'actv/quiz'
23
23
  require 'actv/quiz_outcome'
24
24
  require 'actv/quiz_question'
25
25
  require 'actv/quiz_question_answer'
26
+ require 'actv/video'
27
+ require 'actv/video_search_results'
26
28
  require 'actv/validators/article_validator'
27
29
  require 'actv/validators/asset_validator'
28
30
  require 'actv/validators/author_validator'
@@ -31,8 +33,8 @@ require 'actv/validators/quiz_validator'
31
33
  require 'actv/validators/quiz_outcome_validator'
32
34
  require 'actv/validators/quiz_question_validator'
33
35
  require 'actv/validators/quiz_question_answer_validator'
36
+ require 'actv/validators/video_validator'
34
37
  require 'simple_oauth'
35
-
36
38
  module ACTV
37
39
  # Wrapper for the ACTV REST API
38
40
  #
@@ -178,6 +180,18 @@ module ACTV
178
180
  end
179
181
  end
180
182
 
183
+ def video(id, params={})
184
+ request_string = "/v2/assets/#{id}"
185
+ response = get "#{request_string}.json", params
186
+
187
+ ACTV::Video.new response[:body]
188
+ end
189
+
190
+ def videos(q, params={})
191
+ response = get("/v2/search.json", params.merge({query: q, category: 'videos'}))
192
+ ACTV::VideoSearchResults.from_response(response)
193
+ end
194
+
181
195
  # Returns popular assets that match a specified query.
182
196
  #
183
197
  # @authentication_required No
@@ -0,0 +1,8 @@
1
+ require 'actv/validators/asset_validator'
2
+ module ACTV
3
+ class VideoValidator < AssetValidator
4
+ def valid?
5
+ category_is?('videos')
6
+ end
7
+ end
8
+ end
data/lib/actv/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module ACTV
2
- VERSION = "2.9.2"
2
+ VERSION = "2.10.0"
3
3
  end
data/lib/actv/video.rb ADDED
@@ -0,0 +1,56 @@
1
+ require 'actv/asset'
2
+
3
+ module ACTV
4
+ class Video < Asset
5
+ attr_reader :sorCreateDtm, :urlAdr
6
+ alias publish_date sorCreateDtm
7
+ alias source urlAdr
8
+ alias channel sub_topic
9
+
10
+ def self.valid? response
11
+ ACTV::VideoValidator.new(response).valid?
12
+ end
13
+
14
+ def keywords
15
+ @keywords ||= tag_by_description 'keywords'
16
+ end
17
+
18
+ def duration
19
+ @duration ||= tag_by_description 'duration'
20
+ end
21
+
22
+ def height
23
+ @height ||= tag_by_description 'height'
24
+ end
25
+
26
+ def type
27
+ @type ||= tag_by_description 'type'
28
+ end
29
+
30
+ def width
31
+ @width ||= tag_by_description 'width'
32
+ end
33
+
34
+ def filesize
35
+ @filesize ||= tag_by_description 'filesize'
36
+ end
37
+
38
+ def bitrate
39
+ @bitrate ||= tag_by_description 'bitrate'
40
+ end
41
+
42
+ def canonicalUrl
43
+ @canonical_url ||= tag_by_description 'canonicalUrl'
44
+ end
45
+
46
+ alias canonical_url canonicalUrl
47
+
48
+ def image
49
+ @image ||= image_by_name 'videoImage'
50
+ end
51
+
52
+ def cover
53
+ image.url if image
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,11 @@
1
+ require 'actv/search_results'
2
+
3
+ module ACTV
4
+ class VideoSearchResults < ACTV::SearchResults
5
+ def results
6
+ @results ||= Array(@attrs[:results]).map do |event|
7
+ ACTV::Video.new(event)
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,53 @@
1
+ require 'spec_helper'
2
+
3
+ describe ACTV::Client do
4
+ let(:client){ ACTV::Client.new }
5
+
6
+ describe "#video" do
7
+ before do
8
+ stub_get("/v2/assets/valid_video.json").
9
+ to_return(body: fixture("valid_video.json"), headers: {content_type: "application/json; charset=utf-8"})
10
+ end
11
+ let(:video){ client.video("valid_video") }
12
+
13
+ context "with a valid video ID passed" do
14
+
15
+ it "should return the correct type" do
16
+ expect(video.type).to eq("video/mp4")
17
+ end
18
+
19
+ it "should return the correct source" do
20
+ expect(video.source).to eq("http://rodale.videodownload.worldnow.com/RODALE_2505201618134176078AA.mp4")
21
+ end
22
+ end
23
+ end
24
+
25
+ describe "#videos" do
26
+ context "performs a video search with no results" do
27
+
28
+ before do
29
+ stub_get("/v2/search.json?query=test&category=videos").
30
+ to_return(body: fixture("valid_search_no_results.json"), headers: {content_type: "application/json; charset=utf-8"})
31
+ end
32
+
33
+ let(:search_results){ client.videos('test') }
34
+
35
+ it 'returns an empty array of assets in results' do
36
+ expect(search_results.results.size).to eq(0)
37
+ end
38
+ end
39
+
40
+ context "performs a search with results" do
41
+ before do
42
+ stub_get("/v2/search.json?query=running&category=videos").
43
+ to_return(body: fixture("valid_search.json"), headers: {content_type: "application/json; charset=utf-8"})
44
+ end
45
+ let(:search_results){ client.videos('running') }
46
+
47
+ it 'returns the correct array of assets in the results' do
48
+ expect(search_results.results.first.assetName).to eq('Running 5K')
49
+ expect(search_results.results.size).to eq(5)
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,22 @@
1
+ require 'spec_helper'
2
+
3
+ describe ACTV::VideoSearchResults do
4
+ describe '#results' do
5
+ context "when results is set" do
6
+ let(:assets){ [{assetGuid: '4cfb7657-6f5a-4a2a-adf3-c2b6986cb1eb', assetName: 'QA test'}, {assetGuid: 'eeb5a96a-dc6c-4a22-ad42-c0ce18832669', assetName: 'QA test2'}] }
7
+ let(:results){ ACTV::VideoSearchResults.new({results: assets}).results }
8
+
9
+ it 'should return an array of ACTV::Video' do
10
+ expect(results).to be_a Array
11
+ expect(results.first).to be_a ACTV::Video
12
+ end
13
+ end
14
+
15
+ context "when results is not set" do
16
+ let(:results){ ACTV::VideoSearchResults.new({}).results }
17
+ it "should return an empty array" do
18
+ expect(results).to eq([])
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,122 @@
1
+ require 'spec_helper'
2
+
3
+ describe ACTV::Video do
4
+ let(:asset_images) { [{:imageUrlAdr => "http://RODALE.images.worldnow.com/images/12508455_vtf.jpg", :imageName => "videoImage"}] }
5
+ let(:urlAdr) { "http://rodale.videodownload.worldnow.com/RODALE_0906201614333627818AA.mp4" }
6
+ let(:asset_tags) { [{:tag => {:tagId => "1794337", :tagName => "video/mp4", :tagDescription => "type"}},
7
+ {:tag => {:tagId => "1794525", :tagName => "640", :tagDescription => "width"}},
8
+ {:tag => {:tagId => "1794598", :tagName => "997", :tagDescription => "bitrate"}},
9
+ {:tag => {:tagId => "1794597", :tagName => "training,fitness,health & injuries", :tagDescription => "keywords"}},
10
+ {:tag => {:tagId => "1794599", :tagName => "140", :tagDescription => "duration"}},
11
+ {:tag => {:tagId => "1794526", :tagName => "360", :tagDescription => "height"}},
12
+ {:tag => {:tagId => "1794600", :tagName => "18370674", :tagDescription => "filesize"}},
13
+ {:tag => {:tagId => "1795103", :tagName => "http://rodale.worldnow.com/clip/12508455/these-foam-rolling-moves-can-help-you-recover-faster", :tagDescription => "canonicalUrl"}}] }
14
+ let(:asset_categories) { [{:sequence => "1", :category => {:categoryId => "8", :categoryTaxonomy => "Creative Work/Videos", :categoryName => "Videos"}}] }
15
+
16
+ let(:response) { {assetGuid: 1,
17
+ urlAdr: urlAdr,
18
+ assetTags: asset_tags,
19
+ assetImages: asset_images,
20
+ assetCategories: asset_categories} }
21
+ let(:video) { ACTV::Video.new response }
22
+
23
+ describe "#self.valid?" do
24
+ let(:valid) { ACTV::Video.valid? response }
25
+
26
+ context "when the category name is videos" do
27
+ let(:asset_categories) { [{category: {categoryName: "Videos", categoryTaxonomy: ""}}] }
28
+
29
+ it "should return true" do
30
+ expect(valid).to be true
31
+ end
32
+ end
33
+
34
+ context "when the category name is articles" do
35
+
36
+ let(:asset_categories) { [{category: {categoryName: "Articles", categoryTaxonomy: ""}}] }
37
+ it "should return false" do
38
+ expect(valid).to be false
39
+ end
40
+ end
41
+ end
42
+
43
+ describe "#source" do
44
+ context "when a video source is exists" do
45
+ it "should return video play source" do
46
+ expect(video.source).to eq(urlAdr)
47
+ end
48
+ end
49
+ end
50
+
51
+ describe "#keywords" do
52
+ context "when a video tag with tagDescription equal keywords exists" do
53
+ it "should return keywords" do
54
+ expect(video.keywords).to eq("training,fitness,health & injuries")
55
+ end
56
+ end
57
+ end
58
+
59
+ describe "#type" do
60
+ context "when a video tag with tagDescription equal type exists" do
61
+ it "should return video type as 'video/mp4'" do
62
+ expect(video.type).to eq("video/mp4")
63
+ end
64
+ end
65
+ end
66
+
67
+ describe "#width" do
68
+ context "when a video tag with tagDescription equal width exists" do
69
+ it "should return video width" do
70
+ expect(video.width).to eq("640")
71
+ end
72
+ end
73
+ end
74
+
75
+ describe "#height" do
76
+ context "when a video tag with tagDescription equal height exists" do
77
+ it "should return video height" do
78
+ expect(video.height).to eq("360")
79
+ end
80
+ end
81
+ end
82
+
83
+ describe "#bitrate" do
84
+ context "when a video tag with tagDescription equal bitrate exists" do
85
+ it "should return bitrate" do
86
+ expect(video.bitrate).to eq("997")
87
+ end
88
+ end
89
+ end
90
+
91
+ describe "#duration" do
92
+ context 'when a video tag with tagDescription equal duration exists' do
93
+ it "should return duration" do
94
+ expect(video.duration).to eq("140")
95
+ end
96
+ end
97
+ end
98
+
99
+ describe "#filesize" do
100
+ context "when a video tag with tagDescription equal filesize exists" do
101
+ it "should return filesize" do
102
+ expect(video.filesize).to eq("18370674")
103
+ end
104
+ end
105
+ end
106
+
107
+ describe "#canonical_url" do
108
+ context "when a video tag with tagDescription equal canonical_url exists" do
109
+ it "should return canonical url" do
110
+ expect(video.canonical_url).to eq("http://rodale.worldnow.com/clip/12508455/these-foam-rolling-moves-can-help-you-recover-faster")
111
+ end
112
+ end
113
+ end
114
+
115
+ describe "#cover" do
116
+ context "when a video image exists" do
117
+ it "should return video cover" do
118
+ expect(video.cover).to eq("http://RODALE.images.worldnow.com/images/12508455_vtf.jpg")
119
+ end
120
+ end
121
+ end
122
+ end
@@ -0,0 +1,247 @@
1
+ {
2
+ "assetStatus": {
3
+ "assetStatusId": "2",
4
+ "assetStatusName": "VISIBLE"
5
+ },
6
+ "organization": {},
7
+ "place": {
8
+ "placeGuid": "b61c3acf-97b2-4411-ace6-62cef6dfc006",
9
+ "placeName": "Article",
10
+ "placeDsc": "",
11
+ "placeUrlAdr": "",
12
+ "addressLine1Txt": " ",
13
+ "addressLine2Txt": "",
14
+ "cityName": " ",
15
+ "stateProvinceCode": "AP",
16
+ "localityName": "",
17
+ "postalCode": "96373",
18
+ "countryName": "United States",
19
+ "countryCode": "USA",
20
+ "timezone": "",
21
+ "timezoneOffset": -10,
22
+ "timezoneDST": 0,
23
+ "latitude": "",
24
+ "longitude": "",
25
+ "directionsTxt": ""
26
+ },
27
+ "evergreenParentAsset": {},
28
+ "sourceSystem": {
29
+ "sourceSystemName": "Active.com Video",
30
+ "legacyGuid": "4D08F839-FC7B-4EA5-968F-E93BEB0894E7",
31
+ "affiliate": "false"
32
+ },
33
+ "assetRootAsset": {},
34
+ "assetParentAsset": {},
35
+ "market": {
36
+ "marketId": "5",
37
+ "marketName": "endurance-cycling"
38
+ },
39
+ "assetGuid": "6d3048c8-32eb-4920-8d9b-65c66baf3f52",
40
+ "assetName": "How the Topeak JoeBlow Booster Works",
41
+ "assetDsc": "",
42
+ "alternateName": "",
43
+ "timezone": "",
44
+ "localTimeZoneId": "",
45
+ "timezoneAbb": "",
46
+ "timezoneName": "",
47
+ "currencyCd": "",
48
+ "localeCd": "",
49
+ "salesStartDate": null,
50
+ "salesEndDate": null,
51
+ "urlAdr": "http://rodale.videodownload.worldnow.com/RODALE_2505201618134176078AA.mp4",
52
+ "detailPageTemplateId": "",
53
+ "preferredUrlAdr": "",
54
+ "logoUrlAdr": "",
55
+ "activityStartDate": null,
56
+ "activityEndDate": null,
57
+ "donationUrlAdr": "",
58
+ "teamUrlAdr": "",
59
+ "homePageUrlAdr": "",
60
+ "registrationUrlAdr": "",
61
+ "registrantSearchUrlAdr": "",
62
+ "regReqMinAge": null,
63
+ "regReqMaxAge": null,
64
+ "regReqGenderCd": "",
65
+ "resultsUrlAdr": "",
66
+ "contactName": "",
67
+ "contactEmailAdr": "",
68
+ "contactPhone": "",
69
+ "contactTxt": "",
70
+ "showContact": "false",
71
+ "sorId": "",
72
+ "sorCreateDtm": "2016-05-26T06:13:47",
73
+ "sorCreateUserId": "",
74
+ "authorName": "",
75
+ "childIndex": "",
76
+ "publishDate": null,
77
+ "createdDate": "2016-07-05T02:45:06",
78
+ "modifiedDate": "2016-07-05T02:45:06",
79
+ "retryDate": "2016-07-04T22:55:32",
80
+ "retryCounter": "2",
81
+ "activityRecurrences": [],
82
+ "assetQuantity": {},
83
+ "assetLegacyData": {},
84
+ "assetTags": [
85
+ {
86
+ "tag": {
87
+ "tagId": "1794498",
88
+ "tagName": "404",
89
+ "tagDescription": "height"
90
+ }
91
+ },
92
+ {
93
+ "tag": {
94
+ "tagId": "1794505",
95
+ "tagName": "tools,Topeak,Reviews",
96
+ "tagDescription": "keywords"
97
+ }
98
+ },
99
+ {
100
+ "tag": {
101
+ "tagId": "1794497",
102
+ "tagName": "720",
103
+ "tagDescription": "width"
104
+ }
105
+ },
106
+ {
107
+ "tag": {
108
+ "tagId": "1795507",
109
+ "tagName": "12463347",
110
+ "tagDescription": "clipid"
111
+ }
112
+ },
113
+ {
114
+ "tag": {
115
+ "tagId": "1795508",
116
+ "tagName": "http://rodale.worldnow.com/clip/12463347/how-the-topeak-joeblow-booster-works",
117
+ "tagDescription": "canonicalUrl"
118
+ }
119
+ },
120
+ {
121
+ "tag": {
122
+ "tagId": "1794337",
123
+ "tagName": "video/mp4",
124
+ "tagDescription": "type"
125
+ }
126
+ },
127
+ {
128
+ "tag": {
129
+ "tagId": "1794504",
130
+ "tagName": "8288063",
131
+ "tagDescription": "filesize"
132
+ }
133
+ },
134
+ {
135
+ "tag": {
136
+ "tagId": "1794506",
137
+ "tagName": "48",
138
+ "tagDescription": "duration"
139
+ }
140
+ },
141
+ {
142
+ "tag": {
143
+ "tagId": "1794496",
144
+ "tagName": "1296",
145
+ "tagDescription": "bitrate"
146
+ }
147
+ }
148
+ ],
149
+ "assetAttributes": [],
150
+ "assetPrices": [],
151
+ "assetDescriptions": [
152
+ {
153
+ "descriptionType": {
154
+ "descriptionTypeId": "6",
155
+ "descriptionTypeName": "Standard"
156
+ },
157
+ "description": "This floor pump has two modes: one that pumps up your tires normally, and another that acts like an air compressor to seat tubeless tires"
158
+ }
159
+ ],
160
+ "assetChannels": [
161
+ {
162
+ "sequence": "1",
163
+ "channel": {
164
+ "channelId": "1005",
165
+ "channelName": "Cycling",
166
+ "channelDsc": "Cycling"
167
+ }
168
+ }
169
+ ],
170
+ "assetMediaTypes": [
171
+ {
172
+ "sequence": "1",
173
+ "mediaType": {
174
+ "mediaTypeId": "2",
175
+ "mediaTypeName": "Event",
176
+ "mediaTypeDsc": ""
177
+ }
178
+ }
179
+ ],
180
+ "assetImages": [
181
+ {
182
+ "imageUrlAdr": "http://RODALE.images.worldnow.com/images/12463347_vtf.jpg",
183
+ "imageName": "videoImage",
184
+ "linkUrl": "",
185
+ "linkTarget": "",
186
+ "imageCaptionTxt": "",
187
+ "imageType": "IMAGE"
188
+ }
189
+ ],
190
+ "assetTopics": [
191
+ {
192
+ "sequence": "1",
193
+ "topic": {
194
+ "topicId": "25",
195
+ "topicTaxonomy": "Endurance/Cycling",
196
+ "topicName": "Cycling"
197
+ }
198
+ }
199
+ ],
200
+ "assetCategories": [
201
+ {
202
+ "sequence": "1",
203
+ "category": {
204
+ "categoryId": "8",
205
+ "categoryTaxonomy": "Creative Work/Videos",
206
+ "categoryName": "Videos"
207
+ }
208
+ },
209
+ {
210
+ "sequence": "2",
211
+ "category": {
212
+ "categoryId": "2",
213
+ "categoryTaxonomy": "Event",
214
+ "categoryName": "Event"
215
+ }
216
+ },
217
+ {
218
+ "sequence": "3",
219
+ "category": {
220
+ "categoryId": "13",
221
+ "categoryTaxonomy": "Event/Classes",
222
+ "categoryName": "Classes"
223
+ }
224
+ }
225
+ ],
226
+ "assetMetaInterests": [],
227
+ "assetInterests": [],
228
+ "assetDeals": [],
229
+ "socialMedia": [],
230
+ "assetComponents": [],
231
+ "assetServiceHostName": "as-app-qa01",
232
+ "componentInUrlAdr": {},
233
+ "assetSeoUrls": [
234
+ {
235
+ "seoSystemName": "as3",
236
+ "statusCode": "true",
237
+ "urlAdr": "http://www.active.com/ap/cycling/videos/how-the-topeak-joeblow-booster-works"
238
+ }
239
+ ],
240
+ "overrideSeourlFlag": "false",
241
+ "activenetTopGraphic": {},
242
+ "evergreenAssetFlag": "false",
243
+ "evergreenAssets": [],
244
+ "assetReferences": [],
245
+ "assetVersion": 3,
246
+ "salesStatus": "registration-unavailable"
247
+ }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: actv
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.9.2
4
+ version: 2.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathaniel Barnes
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-01 00:00:00.000000000 Z
11
+ date: 2016-07-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -210,16 +210,16 @@ dependencies:
210
210
  name: activesupport
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
- - - ">="
213
+ - - '='
214
214
  - !ruby/object:Gem::Version
215
- version: '0'
215
+ version: 4.2.6
216
216
  type: :development
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
- - - ">="
220
+ - - '='
221
221
  - !ruby/object:Gem::Version
222
- version: '0'
222
+ version: 4.2.6
223
223
  description: A Ruby wrapper for the Active API
224
224
  email:
225
225
  - Nathaniel.Barnes@activenetwork.com
@@ -315,7 +315,10 @@ files:
315
315
  - lib/actv/validators/quiz_question_answer_validator.rb
316
316
  - lib/actv/validators/quiz_question_validator.rb
317
317
  - lib/actv/validators/quiz_validator.rb
318
+ - lib/actv/validators/video_validator.rb
318
319
  - lib/actv/version.rb
320
+ - lib/actv/video.rb
321
+ - lib/actv/video_search_results.rb
319
322
  - spec/actv/article_search_results_spec.rb
320
323
  - spec/actv/article_spec.rb
321
324
  - spec/actv/article_validator_spec.rb
@@ -342,6 +345,7 @@ files:
342
345
  - spec/actv/client/search_spec.rb
343
346
  - spec/actv/client/system_health_spec.rb
344
347
  - spec/actv/client/users_spec.rb
348
+ - spec/actv/client/videos_spec.rb
345
349
  - spec/actv/client_spec.rb
346
350
  - spec/actv/event_spec.rb
347
351
  - spec/actv/event_validator_spec.rb
@@ -358,6 +362,8 @@ files:
358
362
  - spec/actv/quiz_validator_spec.rb
359
363
  - spec/actv/search_results_spec.rb
360
364
  - spec/actv/user_spec.rb
365
+ - spec/actv/video_search_result_spec.rb
366
+ - spec/actv/video_spec.rb
361
367
  - spec/actv_spec.rb
362
368
  - spec/faraday/response_spec.rb
363
369
  - spec/fixtures/me.json
@@ -378,6 +384,7 @@ files:
378
384
  - spec/fixtures/valid_search.json
379
385
  - spec/fixtures/valid_search_no_event_results.json
380
386
  - spec/fixtures/valid_search_no_results.json
387
+ - spec/fixtures/valid_video.json
381
388
  - spec/spec_helper.rb
382
389
  - spec/support/helper.rb
383
390
  homepage: http://developer.active.com
@@ -431,6 +438,7 @@ test_files:
431
438
  - spec/actv/client/search_spec.rb
432
439
  - spec/actv/client/system_health_spec.rb
433
440
  - spec/actv/client/users_spec.rb
441
+ - spec/actv/client/videos_spec.rb
434
442
  - spec/actv/client_spec.rb
435
443
  - spec/actv/event_spec.rb
436
444
  - spec/actv/event_validator_spec.rb
@@ -447,6 +455,8 @@ test_files:
447
455
  - spec/actv/quiz_validator_spec.rb
448
456
  - spec/actv/search_results_spec.rb
449
457
  - spec/actv/user_spec.rb
458
+ - spec/actv/video_search_result_spec.rb
459
+ - spec/actv/video_spec.rb
450
460
  - spec/actv_spec.rb
451
461
  - spec/faraday/response_spec.rb
452
462
  - spec/fixtures/me.json
@@ -467,6 +477,7 @@ test_files:
467
477
  - spec/fixtures/valid_search.json
468
478
  - spec/fixtures/valid_search_no_event_results.json
469
479
  - spec/fixtures/valid_search_no_results.json
480
+ - spec/fixtures/valid_video.json
470
481
  - spec/spec_helper.rb
471
482
  - spec/support/helper.rb
472
483
  has_rdoc: