bitstampede 0.1.7 → 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -45,8 +45,12 @@ module Bitstampede
45
45
  end
46
46
 
47
47
  def check_for_errors(hash)
48
- if hash.keys.include?("error")
49
- raise Bitstampede::StandardError.new(hash["error"]["__all__"].join(". "))
48
+ if hash.has_key?("error")
49
+ if hash["error"].has_key?("__all__")
50
+ raise Bitstampede::StandardError.new(hash["error"]["__all__"].join(". "))
51
+ else
52
+ raise Bitstampede::StandardError.new("Bitstamp API Error #404")
53
+ end
50
54
  end
51
55
  end
52
56
  end
@@ -1,3 +1,3 @@
1
1
  module Bitstampede
2
- VERSION = "0.1.7"
2
+ VERSION = "0.1.8"
3
3
  end
@@ -35,17 +35,34 @@ describe Bitstampede::Entities::Order do
35
35
  end
36
36
 
37
37
  context "an unsuccessful order" do
38
- let(:order_hash){
39
- # Don't get mad at me, not my fault bitstamp errors look like this
40
- {
41
- "error" => {
42
- "__all__" => ["Minimum order size is $1"]
38
+ context "with an __all__ key" do
39
+ let(:order_hash){
40
+ # Don't get mad at me, not my fault bitstamp errors look like this
41
+ {
42
+ "error" => {
43
+ "__all__" => ["Minimum order size is $1"]
44
+ }
43
45
  }
44
46
  }
45
- }
46
47
 
47
- it "raises an appropriate error" do
48
- expect{ subject }.to raise_error(Bitstampede::StandardError, "Minimum order size is $1")
48
+ it "raises an appropriate error" do
49
+ expect{ subject }.to raise_error(Bitstampede::StandardError, "Minimum order size is $1")
50
+ end
51
+ end
52
+
53
+ context "without an __all__ key" do
54
+ let(:order_hash){
55
+ # Don't get mad at me, not my fault bitstamp errors look like this
56
+ {
57
+ "error" => {
58
+ "neg" => ["Minimum order size is $1"]
59
+ }
60
+ }
61
+ }
62
+
63
+ it "raises an appropriate error" do
64
+ expect{ subject }.to raise_error(Bitstampede::StandardError, "Bitstamp API Error #404")
65
+ end
49
66
  end
50
67
  end
51
68
  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.7
4
+ version: 0.1.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-07-09 00:00:00.000000000 Z
12
+ date: 2013-07-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: net-http-persistent
@@ -191,7 +191,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
191
191
  version: '0'
192
192
  segments:
193
193
  - 0
194
- hash: 2088351870229713230
194
+ hash: -2131896050803578099
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: 2088351870229713230
203
+ hash: -2131896050803578099
204
204
  requirements: []
205
205
  rubyforge_project:
206
206
  rubygems_version: 1.8.25