/
errors_test.rb
53 lines (45 loc) · 1.7 KB
/
errors_test.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# frozen_string_literal: true
require ::File.expand_path("../test_helper", __dir__)
module Stripe
class StripeErrorTest < Test::Unit::TestCase
context "StripeError" do
context "#initialize" do
should "initialize error if json_body is set" do
e = StripeError.new("message", json_body: { error: { code: "some_error" } })
assert_not_nil e.error
assert_equal "some_error", e.error.code
assert_nil e.error.charge
end
end
context "#idempotent_replayed?" do
should "initialize from header" do
e = StripeError.new("message", http_headers: { "idempotent-replayed" => "true" })
assert_equal true, e.idempotent_replayed?
end
should "be 'falsey' by default" do
e = StripeError.new("message")
refute_equal true, e.idempotent_replayed?
end
end
context "#to_s" do
should "convert to string" do
e = StripeError.new("message")
assert_equal "message", e.to_s
e = StripeError.new("message", http_status: 200)
assert_equal "(Status 200) message", e.to_s
e = StripeError.new("message", http_status: nil, http_body: nil, json_body: nil, http_headers: { "request-id" => "request-id" })
assert_equal "(Request request-id) message", e.to_s
end
end
end
context "OAuth::OAuthError" do
context "#initialize" do
should "initialize error if json_body is set" do
e = OAuth::OAuthError.new("message", "description", json_body: { error: "some_oauth_error" })
assert_not_nil e.error
assert_equal "some_oauth_error", e.error.error
end
end
end
end
end