tamber 0.1.3 → 0.1.4

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: 34977d3642e3fadc688e4fb95a73e54a44ec2dc5
4
- data.tar.gz: e336d5302a49b3d7c0905e79c3030754c0bb3061
3
+ metadata.gz: 04cbb04bf2dbb1a3c938529885994ffda6b37cd2
4
+ data.tar.gz: f63ed8198c31d0167d1e7e4295d1b98eb0828f47
5
5
  SHA512:
6
- metadata.gz: d7be4a452e9be2c12b590fbefdb5fb9dfb58df43cc861d271431921664867cd2320e190b62daf26da558d3bc7dbbc3cf44339d4be103662745c381cd144503c5
7
- data.tar.gz: 1d0292b2c0abb24435af72dac96621cf1297d4fd70caa014f031033390ddf6958ad8d79bfd4353311fb190098c0cda24f6f10d99b5151d479ed9b9769bfd1597
6
+ metadata.gz: a835f33afe46afd0ea1bf1466f3d436a722d4de7b9c5edf0bb4cd7706676bfb10f00e41846fe62841f02255354700db70a29971903495598623b4dd0c6d260a7
7
+ data.tar.gz: 745676b9e419f44b4e5df47e272eeb245d9e5bdbe56610969ad9b66a45c8d037830eb104b7e98f15dfb38ac9c1dcb3fc2dec76f00d0c450e6d25f1a826803250
data/Rakefile CHANGED
@@ -5,13 +5,3 @@ task :default => [:test]
5
5
  Rake::TestTask.new do |t|
6
6
  t.pattern = './test/*_test.rb'
7
7
  end
8
-
9
- # desc "update bundled certs"
10
- # task :update_certs do
11
- # require "restclient"
12
- # File.open(File.join(File.dirname(__FILE__), 'lib', 'data', 'ca-certificates.crt'), 'w') do |file|
13
- # resp = RestClient.get "https://raw.githubusercontent.com/bagder/ca-bundle/master/ca-bundle.crt"
14
- # abort("bad response when fetching bundle") unless resp.code == 200
15
- # file.write(resp.to_str)
16
- # end
17
- # end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.3
1
+ 0.1.4
Binary file
@@ -42,7 +42,7 @@ module Tamber
42
42
  @read_timeout = 80
43
43
 
44
44
  class << self
45
- attr_accessor :project_key, :engine_key, :api_base, :api_version, :verify_ssl_certs, :open_timeout, :read_timeout
45
+ attr_accessor :project_key, :engine_key, :api_version, :verify_ssl_certs, :open_timeout, :read_timeout
46
46
  end
47
47
 
48
48
 
@@ -59,7 +59,6 @@ module Tamber
59
59
  end
60
60
 
61
61
  def self.request(method, url, params={})
62
- api_base_url = api_base_url || @api_base
63
62
 
64
63
  if project_key =~ /\s/
65
64
  raise TamberError.new('Your project key is invalid, as it contains ' \
@@ -88,8 +87,7 @@ module Tamber
88
87
  end
89
88
  end
90
89
 
91
- # params = Util.objects_to_ids(params)
92
- url = api_url(api_base_url,url)
90
+ url = @api_url + url
93
91
 
94
92
  case method.to_s.downcase.to_sym
95
93
  when :get, :head, :delete
@@ -104,15 +102,17 @@ module Tamber
104
102
  :method => method, :open_timeout => open_timeout,
105
103
  :payload => payload, :url => url, :timeout => read_timeout)
106
104
 
107
- response = execute_request_with_rescues(request_opts, api_base_url)
105
+ response = execute_request_with_rescues(request_opts)
108
106
 
109
107
  [parse(response)]
110
108
  end
111
109
 
112
110
 
113
111
 
114
- def self.request_headers(project_key, engine_key, method)
115
- encoded_key = Base64.encode64(project_key + ':' + engine_key)
112
+ def self.request_headers(pkey, ekey, method)
113
+ pkey ||= ''
114
+ ekey ||= ''
115
+ encoded_key = Base64.encode64(pkey + ':' + ekey)
116
116
  headers = {
117
117
  :user_agent => "Tamber/v1 RubyBindings/#{Tamber::VERSION}",
118
118
  :authorization => "Basic "+encoded_key,
@@ -148,6 +148,10 @@ module Tamber
148
148
  TamberError.new("Invalid response object from API: "+rbody.inspect)
149
149
  end
150
150
 
151
+ def self.handle_restclient_error(e, request_opts)
152
+ parse(e)
153
+ end
154
+
151
155
  def self.execute_request(opts)
152
156
  RestClient::Request.execute(opts)
153
157
  end
@@ -163,36 +167,36 @@ module Tamber
163
167
  rescue JSON::ParserError
164
168
  raise general_api_error(response.body)
165
169
  end
166
-
167
170
  Util.symbolize_names(response)
168
171
  end
169
172
 
170
173
  private
171
174
 
172
- def self.execute_request_with_rescues(request_opts, api_base_url, retry_count = 0)
173
- response = execute_request(request_opts)
174
- # begin
175
- # response = execute_request(request_opts)
176
- # rescue SocketError => e
177
- # response = handle_restclient_error(e, request_opts, retry_count, api_base_url)
178
- # rescue NoMethodError => e
179
- # # Work around RestClient bug
180
- # if e.message =~ /\WRequestFailed\W/
181
- # e = APIConnectionError.new('Unexpected HTTP response code')
182
- # response = handle_restclient_error(e, request_opts, retry_count, api_base_url)
183
- # else
184
- # raise
185
- # end
186
- # rescue RestClient::ExceptionWithResponse => e
187
- # if e.response
188
- # handle_api_error(e.response)
189
- # else
190
- # response = handle_restclient_error(e, request_opts, retry_count, api_base_url)
191
- # end
192
- # rescue RestClient::Exception, Errno::ECONNREFUSED => e
193
- # response = handle_restclient_error(e, request_opts, retry_count, api_base_url)
194
- # end
195
-
196
- # response
175
+ def self.execute_request_with_rescues(request_opts)
176
+ # response = execute_request(request_opts)
177
+ begin
178
+ response = execute_request(request_opts)
179
+ rescue SocketError => e
180
+ response = handle_restclient_error(e, request_opts)
181
+ rescue NoMethodError => e
182
+ # Work around RestClient bug
183
+ if e.message =~ /\WRequestFailed\W/
184
+ raise TamberError.new('Error: Unexpected HTTP response code')
185
+ else
186
+ raise
187
+ end
188
+ rescue RestClient::ExceptionWithResponse => e
189
+ puts "ExceptionWithResponse: #{e}"
190
+ if e.response
191
+ puts "e.response"
192
+ parse(e.response)
193
+ else
194
+ response = handle_restclient_error(e, request_opts)
195
+ end
196
+ rescue RestClient::Exception, Errno::ECONNREFUSED => e
197
+ response = handle_restclient_error(e, request_opts)
198
+ end
199
+
200
+ response
197
201
  end
198
202
  end
@@ -1,3 +1,3 @@
1
1
  module Tamber
2
- VERSION = '0.1.3'
2
+ VERSION = '0.1.4'
3
3
  end
@@ -15,7 +15,7 @@ spec = Gem::Specification.new do |s|
15
15
 
16
16
  s.add_dependency('rest-client', '~> 1.4')
17
17
  s.add_dependency('json', '~> 1.8.1')
18
- s.add_dependency('activesupport', '~> 4.2.6')
18
+ s.add_dependency('activesupport', '~> 4.2.4')
19
19
 
20
20
  s.add_development_dependency('mocha', '~> 0.13.2')
21
21
  s.add_development_dependency('shoulda', '~> 3.4.0')
@@ -9,8 +9,6 @@ module Tamber
9
9
  :desirability => 0.2
10
10
  )
11
11
  puts e
12
- rescue TamberError => error
13
- puts error.message
14
12
  end
15
13
  end
16
14
 
@@ -20,10 +18,7 @@ module Tamber
20
18
  :name => 'mention',
21
19
  )
22
20
  puts e
23
- rescue TamberError => error
24
- puts error.message
25
21
  end
26
-
27
22
  end
28
23
  end
29
24
  end
@@ -15,8 +15,6 @@ module Tamber
15
15
  }
16
16
  )
17
17
  d.each { |rec| puts "item: #{rec.item}, score: #{rec.score}"}
18
- rescue TamberError => error
19
- puts error.message
20
18
  end
21
19
  end
22
20
 
@@ -26,8 +24,6 @@ module Tamber
26
24
  :item => 'item_i5gq90scc1'
27
25
  )
28
26
  d.each { |rec| puts "item: #{rec.item}, score: #{rec.score}"}
29
- rescue TamberError => error
30
- puts error.message
31
27
  end
32
28
  end
33
29
 
@@ -38,8 +34,6 @@ module Tamber
38
34
  :item => 'item_i5gq90scc1'
39
35
  )
40
36
  d.each { |rec| puts "item: #{rec.item}, score: #{rec.score}"}
41
- rescue TamberError => error
42
- puts error.message
43
37
  end
44
38
  end
45
39
 
@@ -10,9 +10,7 @@ module Tamber
10
10
  :behavior => 'mention',
11
11
  :get_recs => {}
12
12
  )
13
- e.recommended.each { |rec| puts "item: #{rec.item}, score: #{rec.score}"}
14
- rescue TamberError => error
15
- puts error.message
13
+ puts e
16
14
  end
17
15
  end
18
16
 
@@ -22,8 +20,6 @@ module Tamber
22
20
  :user => 'user_jctzgisbru',
23
21
  )
24
22
  puts e
25
- rescue TamberError => error
26
- puts error.message
27
23
  end
28
24
  end
29
25
 
@@ -44,8 +40,6 @@ module Tamber
44
40
  ]
45
41
  )
46
42
  puts e
47
- rescue TamberError => error
48
- puts error.message
49
43
  end
50
44
  end
51
45
 
@@ -5,7 +5,7 @@ module Tamber
5
5
  should "be creatable" do
6
6
  begin
7
7
  e = Tamber::Item.create(
8
- :id => 'item_i7gq90scc1',
8
+ :id => 'item_i5gq90scc1',
9
9
  :properties => {
10
10
  'type'=> 'artwork',
11
11
  'artist'=> 'Alexander Calder',
@@ -23,7 +23,7 @@ module Tamber
23
23
  should "be updatable" do
24
24
  begin
25
25
  e = Tamber::Item.update(
26
- :id => 'item_i7gq90scc1',
26
+ :id => 'item_i5gq90scc1',
27
27
  :updates => {
28
28
  :add => {
29
29
  :properties => {
@@ -47,7 +47,7 @@ module Tamber
47
47
  should "be retrievable" do
48
48
  begin
49
49
  e = Tamber::Item.retrieve(
50
- :id => 'item_i7gq90scc1',
50
+ :id => 'item_i5gq90scc1',
51
51
  )
52
52
  puts e
53
53
  rescue TamberError => error
@@ -58,7 +58,7 @@ module Tamber
58
58
  should "be removable" do
59
59
  begin
60
60
  e = Tamber::Item.remove(
61
- :id => 'item_i7gq90scc1',
61
+ :id => 'item_i5gq90scc1',
62
62
  )
63
63
  puts e
64
64
  rescue TamberError => error
@@ -18,9 +18,6 @@ module Tamber
18
18
  }
19
19
  ]
20
20
  )
21
- puts u
22
- rescue TamberError => error
23
- puts error.message
24
21
  end
25
22
  end
26
23
 
@@ -35,9 +32,8 @@ module Tamber
35
32
  :id => id,
36
33
  :metadata => metadata
37
34
  )
35
+ puts "retrieved user #{u}"
38
36
  assert u.id == id
39
- rescue TamberError => error
40
- puts error.message
41
37
  end
42
38
  end
43
39
 
@@ -53,10 +49,7 @@ module Tamber
53
49
  )
54
50
  puts u.inspect
55
51
  puts u.metadata
56
- puts u.metadata[:name]
57
52
  assert u.id == id
58
- rescue TamberError => error
59
- puts error.message
60
53
  end
61
54
  end
62
55
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tamber
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexi Robbins
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-02-23 00:00:00.000000000 Z
12
+ date: 2017-05-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rest-client
@@ -45,14 +45,14 @@ dependencies:
45
45
  requirements:
46
46
  - - "~>"
47
47
  - !ruby/object:Gem::Version
48
- version: 4.2.6
48
+ version: 4.2.4
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - "~>"
54
54
  - !ruby/object:Gem::Version
55
- version: 4.2.6
55
+ version: 4.2.4
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: mocha
58
58
  requirement: !ruby/object:Gem::Requirement
@@ -109,6 +109,48 @@ dependencies:
109
109
  - - ">="
110
110
  - !ruby/object:Gem::Version
111
111
  version: '0'
112
+ - !ruby/object:Gem::Dependency
113
+ name: byebug
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ version: '0'
119
+ type: :development
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: pry
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
140
+ - !ruby/object:Gem::Dependency
141
+ name: pry-byebug
142
+ requirement: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ type: :development
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
112
154
  description: Tamber is the easiest way to put head-scratchingly accurate, real time
113
155
  recommendations in your app. See https://tamber.com for details.
114
156
  email:
@@ -171,7 +213,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
213
  version: '0'
172
214
  requirements: []
173
215
  rubyforge_project:
174
- rubygems_version: 2.4.8
216
+ rubygems_version: 2.5.1
175
217
  signing_key:
176
218
  specification_version: 4
177
219
  summary: Ruby bindings for the Tamber API