bitstampede 0.1.1 → 0.1.2

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.
@@ -27,7 +27,9 @@ module Bitstampede
27
27
  end
28
28
 
29
29
  def cancel(id)
30
- mapper.map_cancel(net.post("cancel_order", { id: id.to_s }))
30
+ wrapping_standard_error do
31
+ mapper.map_cancel(net.post("cancel_order", { id: id.to_s }))
32
+ end
31
33
  end
32
34
 
33
35
  private
@@ -40,8 +42,14 @@ module Bitstampede
40
42
  end
41
43
 
42
44
  def trade!(type, amount, price)
43
- begin
45
+ wrapping_standard_error do
44
46
  mapper.map_order(net.post(type, { price: price.to_digits, amount: amount.to_digits }))
47
+ end
48
+ end
49
+
50
+ def wrapping_standard_error &block
51
+ begin
52
+ yield
45
53
  rescue ::StandardError => e
46
54
  raise Bitstampede::StandardError.new(e.message)
47
55
  end
@@ -1,3 +1,3 @@
1
1
  module Bitstampede
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -117,5 +117,10 @@ describe Bitstampede::Client do
117
117
  it 'maps the API response to a boolean' do
118
118
  expect(mapper).to have_received(:map_cancel).with(api_cancel_response)
119
119
  end
120
+
121
+ it 'wraps exceptions in its own class' do
122
+ net.stub(:post).and_raise(StandardError)
123
+ expect{ subject.cancel(123) }.to raise_error(Bitstampede::StandardError)
124
+ end
120
125
  end
121
126
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bitstampede
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -191,7 +191,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
191
191
  version: '0'
192
192
  segments:
193
193
  - 0
194
- hash: 1066769478697545710
194
+ hash: 2961302357809872302
195
195
  required_rubygems_version: !ruby/object:Gem::Requirement
196
196
  none: false
197
197
  requirements:
@@ -200,7 +200,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
200
200
  version: '0'
201
201
  segments:
202
202
  - 0
203
- hash: 1066769478697545710
203
+ hash: 2961302357809872302
204
204
  requirements: []
205
205
  rubyforge_project:
206
206
  rubygems_version: 1.8.25