Module: WebPay::Mock::FakeError

Includes:
Util
Included in:
WebMockWrapper
Defined in:
lib/webpay/mock/fake_error.rb

Instance Method Summary collapse

Methods included from Util

#stringify_keys

Instance Method Details

#bad_request(overrides = {}) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
# File 'lib/webpay/mock/fake_error.rb', line 4

def bad_request(overrides = {})
  {
    status: 400,
    body: { error: {
        'message'   => 'Missing required param: amount',
        'caused_by' => 'insufficient',
        'param'     => 'amount',
        'type'      => 'invalid_request_error'
      }.merge(stringify_keys(overrides)) }.to_json
  }
end

#card_error(overrides = {}) ⇒ Object



27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/webpay/mock/fake_error.rb', line 27

def card_error(overrides = {})
  {
    status: 402,
    body: { error: {
        'message'   => 'The card number is invalid. Make sure the number entered matches your credit card.',
        'caused_by' => 'buyer',
        'param'     => 'number',
        'type'      => 'card_error',
        'code'      => 'incorrect_number'
      }.merge(stringify_keys(overrides)) }.to_json
  }
end

#internal_server_error(overrides = {}) ⇒ Object



52
53
54
55
56
57
58
59
60
61
# File 'lib/webpay/mock/fake_error.rb', line 52

def internal_server_error(overrides = {})
  {
    status: 500,
    body: { error: {
        'type'      => 'api_error',
        'message'   => 'Unkown error occured',
        'caused_by' => 'service'
      }.merge(stringify_keys(overrides)) }.to_json
  }
end

#not_found(overrides = {}) ⇒ Object



40
41
42
43
44
45
46
47
48
49
50
# File 'lib/webpay/mock/fake_error.rb', line 40

def not_found(overrides = {})
  {
    status: 404,
    body: { error: {
        'message'   => 'No such charge',
        'caused_by' => 'missing',
        'param'     => 'id',
        'type'      => 'invalid_request_error'
      }.merge(stringify_keys(overrides)) }.to_json
  }
end

#unauthorized(overrides = {}) ⇒ Object



16
17
18
19
20
21
22
23
24
25
# File 'lib/webpay/mock/fake_error.rb', line 16

def unauthorized(overrides = {})
  {
    status: 401,
    body: { error: {
        'message'   => "You did not provide an API key. You need to provide your API key in the Authorization header, using Bearer auth (e.g. 'Authorization: Bearer YOUR_SECRET_KEY').",
        'caused_by' => 'insufficient',
        'type'      => 'unauthorized'
      }.merge(stringify_keys(overrides)) }.to_json
  }
end