viki 0.0.4 → 0.0.5

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 CHANGED
@@ -7,4 +7,4 @@ pkg/*
7
7
  *.un~
8
8
  .idea/
9
9
  fixtures/
10
- spec/secrets.rb
10
+ spec_config.rb
data/README.md CHANGED
@@ -96,3 +96,8 @@ Your ruby application
96
96
  viki.newscasts.get #without parameter filter
97
97
  viki.newscasts(language: 'ko').get #with parameter filter
98
98
 
99
+ RSpec Testing
100
+ ----------
101
+ To run the tests, create a spec_config.rb file from the sample file.
102
+
103
+ Add your client id and client secret into the file.
@@ -3,6 +3,7 @@ module Viki
3
3
  private
4
4
 
5
5
  def capture(response)
6
+ raise Viki::Error.new("408", "Timeout error") if response.header.code == "408"
6
7
  if response.header.code != "200"
7
8
  response_hash = MultiJson.load(response.body)
8
9
  raise Viki::Error.new(response.header.code, response_hash["message"]) if response.header.code != "200"
data/lib/viki/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Viki
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
@@ -1,8 +1,4 @@
1
- # encoding: utf-8
2
-
3
1
  require 'spec_helper'
4
- require 'secrets'
5
- require 'filter_shared_examples_spec'
6
2
 
7
3
  describe "Viki" do
8
4
  let(:client_id) { CLIENT_ID }
@@ -125,6 +121,13 @@ describe "Viki" do
125
121
  end
126
122
  end
127
123
 
124
+ describe "when HTTP timeout" do
125
+ before { stub_request(:any, /www.viki.com/).to_return(:status => [408]) }
126
+ it "should handle timeout gracefully" do
127
+ expect { client.movies.get }.should raise_error(Viki::Error, "Timeout error")
128
+ end
129
+ end
130
+
128
131
  describe "Renew Expired Access Token" do
129
132
  it "should request a new access token when an endpoint returns 401 and client currently has an access_token" do
130
133
  VCR.use_cassette "auth/expired_access_token" do
@@ -0,0 +1,4 @@
1
+ # Please get a client id and client secret, refer to readme file for more information.
2
+ CLIENT_ID = "a_client_id"
3
+ CLIENT_SECRET = "a_client_secret"
4
+
data/spec/spec_helper.rb CHANGED
@@ -4,9 +4,12 @@ $LOAD_PATH.unshift(File.dirname(__FILE__))
4
4
  require 'rspec'
5
5
  require 'viki'
6
6
  require 'vcr'
7
+ require 'webmock/rspec'
8
+ require 'spec_config.rb'
9
+ include WebMock::API
10
+ include WebMock::Matchers
7
11
 
8
- Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
12
+ Dir["#{File.dirname(__FILE__)}/support/vcr.rb"].each { |f| require f }
9
13
 
10
14
  RSpec.configure do |config|
11
-
12
15
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: viki
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,11 +11,11 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2012-07-03 00:00:00.000000000 Z
14
+ date: 2012-07-04 00:00:00.000000000Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rspec
18
- requirement: !ruby/object:Gem::Requirement
18
+ requirement: &70100608348400 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ~>
@@ -23,15 +23,10 @@ dependencies:
23
23
  version: 2.10.0
24
24
  type: :development
25
25
  prerelease: false
26
- version_requirements: !ruby/object:Gem::Requirement
27
- none: false
28
- requirements:
29
- - - ~>
30
- - !ruby/object:Gem::Version
31
- version: 2.10.0
26
+ version_requirements: *70100608348400
32
27
  - !ruby/object:Gem::Dependency
33
28
  name: vcr
34
- requirement: !ruby/object:Gem::Requirement
29
+ requirement: &70100608347900 !ruby/object:Gem::Requirement
35
30
  none: false
36
31
  requirements:
37
32
  - - ~>
@@ -39,15 +34,10 @@ dependencies:
39
34
  version: 2.2.2
40
35
  type: :development
41
36
  prerelease: false
42
- version_requirements: !ruby/object:Gem::Requirement
43
- none: false
44
- requirements:
45
- - - ~>
46
- - !ruby/object:Gem::Version
47
- version: 2.2.2
37
+ version_requirements: *70100608347900
48
38
  - !ruby/object:Gem::Dependency
49
39
  name: webmock
50
- requirement: !ruby/object:Gem::Requirement
40
+ requirement: &70100608347440 !ruby/object:Gem::Requirement
51
41
  none: false
52
42
  requirements:
53
43
  - - ~>
@@ -55,15 +45,10 @@ dependencies:
55
45
  version: 1.8.7
56
46
  type: :development
57
47
  prerelease: false
58
- version_requirements: !ruby/object:Gem::Requirement
59
- none: false
60
- requirements:
61
- - - ~>
62
- - !ruby/object:Gem::Version
63
- version: 1.8.7
48
+ version_requirements: *70100608347440
64
49
  - !ruby/object:Gem::Dependency
65
50
  name: excon
66
- requirement: !ruby/object:Gem::Requirement
51
+ requirement: &70100608346980 !ruby/object:Gem::Requirement
67
52
  none: false
68
53
  requirements:
69
54
  - - ~>
@@ -71,15 +56,10 @@ dependencies:
71
56
  version: 0.9.6
72
57
  type: :development
73
58
  prerelease: false
74
- version_requirements: !ruby/object:Gem::Requirement
75
- none: false
76
- requirements:
77
- - - ~>
78
- - !ruby/object:Gem::Version
79
- version: 0.9.6
59
+ version_requirements: *70100608346980
80
60
  - !ruby/object:Gem::Dependency
81
61
  name: httparty
82
- requirement: !ruby/object:Gem::Requirement
62
+ requirement: &70100608346520 !ruby/object:Gem::Requirement
83
63
  none: false
84
64
  requirements:
85
65
  - - ~>
@@ -87,15 +67,10 @@ dependencies:
87
67
  version: 0.8.3
88
68
  type: :runtime
89
69
  prerelease: false
90
- version_requirements: !ruby/object:Gem::Requirement
91
- none: false
92
- requirements:
93
- - - ~>
94
- - !ruby/object:Gem::Version
95
- version: 0.8.3
70
+ version_requirements: *70100608346520
96
71
  - !ruby/object:Gem::Dependency
97
72
  name: multi_json
98
- requirement: !ruby/object:Gem::Requirement
73
+ requirement: &70100608346060 !ruby/object:Gem::Requirement
99
74
  none: false
100
75
  requirements:
101
76
  - - ~>
@@ -103,12 +78,7 @@ dependencies:
103
78
  version: 1.3.6
104
79
  type: :runtime
105
80
  prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- none: false
108
- requirements:
109
- - - ~>
110
- - !ruby/object:Gem::Version
111
- version: 1.3.6
81
+ version_requirements: *70100608346060
112
82
  description: Viki-gem is an official wrapper gem for the Viki V3 API.
113
83
  email:
114
84
  - engineering@viki.com
@@ -129,11 +99,12 @@ files:
129
99
  - lib/viki/request.rb
130
100
  - lib/viki/utilities.rb
131
101
  - lib/viki/version.rb
132
- - spec/client_spec.rb
133
- - spec/error_spec.rb
134
- - spec/filter_shared_examples_spec.rb
135
- - spec/request_spec.rb
102
+ - spec/lib/client_spec.rb
103
+ - spec/lib/error_spec.rb
104
+ - spec/requests/request_spec.rb
105
+ - spec/spec_config.rb.sample
136
106
  - spec/spec_helper.rb
107
+ - spec/support/filter_shared_examples_spec.rb
137
108
  - spec/support/vcr.rb
138
109
  - viki.gemspec
139
110
  homepage: http://dev.viki.com
@@ -156,14 +127,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
156
127
  version: '0'
157
128
  requirements: []
158
129
  rubyforge_project: viki
159
- rubygems_version: 1.8.24
130
+ rubygems_version: 1.8.6
160
131
  signing_key:
161
132
  specification_version: 3
162
133
  summary: A thin wrapper around the Viki V3 API
163
134
  test_files:
164
- - spec/client_spec.rb
165
- - spec/error_spec.rb
166
- - spec/filter_shared_examples_spec.rb
167
- - spec/request_spec.rb
135
+ - spec/lib/client_spec.rb
136
+ - spec/lib/error_spec.rb
137
+ - spec/requests/request_spec.rb
138
+ - spec/spec_config.rb.sample
168
139
  - spec/spec_helper.rb
140
+ - spec/support/filter_shared_examples_spec.rb
169
141
  - spec/support/vcr.rb
File without changes
File without changes