Module: StripeMock::Data

Defined in:
lib/stripe_mock/data/cards.rb,
lib/stripe_mock/data/tokens.rb,
lib/stripe_mock/data/charges.rb,
lib/stripe_mock/data/transfers.rb,
lib/stripe_mock/data/bank_account.rb,
lib/stripe_mock/data/balance_transaction.rb

Class Method Summary collapse

Class Method Details

.balance_transaction(params = {}) ⇒ Object



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
# File 'lib/stripe_mock/data/balance_transaction.rb', line 3

def self.balance_transaction(params={})
  source_id = params[:source] || StripeMock.new_id('tr')
  {
    id: StripeMock.new_id('txn'),
    object: 'balance_transaction',
    amount: -18982,
    currency: 'usd',
    net: -18982,
    type: 'transfer',
    created: Faker::Date.backward(2).to_time.to_i,
    available_on: Faker::Date.backward(1).to_time.to_i,
    status: 'available',
    fee: 0,
    fee_details: [],
    source: source_id,
    description: 'STRIPE TRANSFER',
    sourced_transfers: {
      object: 'list',
      total_count: 0,
      has_more: false,
      url: "/v1/transfers?source_transaction=#{ source_id }",
      data: []
    }
  }.merge(params)
end

.balance_transactions(params = {}) ⇒ Object



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
54
55
56
57
# File 'lib/stripe_mock/data/balance_transaction.rb', line 29

def self.balance_transactions(params={})
  {
    object: 'list',
    url: '/v1/balance/history',
    has_more: false,
    data: [balance_transaction, balance_transaction({
      type: 'charge',
      amount: 37621,
      net: 36000,
      fee: 1621,
      fee_details: [
        {
          amount: 1121,
          currency: "usd",
          type: "stripe_fee",
          description: "Stripe processing fees",
          application: nil
        },
        {
          amount: 500,
          currency: "usd",
          type: "application_fee",
          description: "MY APP application fee",
          application: "ca_xxx"
        }
      ]
    })]
  }.merge(params)
end

.bank_account(params = {}) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/stripe_mock/data/bank_account.rb', line 3

def self.(params={})
  {
    object: 'bank_account',
    id: StripeMock.new_id('ba'),
    last4: '6789',
    country: 'US',
    currency: 'usd',
    status: 'new',
    fingerprint: nil,
    routing_number: Faker::Number.number(9).to_s,
    bank_name: 'STRIPE TEST BANK'
  }.merge(params)
end

.card(params = {}) ⇒ Object



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
# File 'lib/stripe_mock/data/cards.rb', line 3

def self.card(params={})
  {
    id: StripeMock.new_id('card'),
    object: "card",
    last4: Faker::Number.number(4).to_s,
    brand: "Visa",
    funding: "credit",
    exp_month: Faker::Number.between(1, 12),
    exp_year: (Date.today.year + 1),
    fingerprint: Faker::Internet.password(16),
    country: "US",
    name: Faker::Name.name,
    address_line1: Faker::Address.street_address,
    address_line2: nil,
    address_city: Faker::Address.city,
    address_state: Faker::Address.state_abbr,
    address_zip: Faker::Address.postcode,
    address_country: nil,
    cvc_check: 'pass',
    address_line1_check: 'pass',
    address_zip_check: 'pass',
    tokenization_method: nil,
    dynamic_last4: nil,
    metadata: {}
  }.merge(params)
end

.charge(params = {}) ⇒ Object



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
# File 'lib/stripe_mock/data/charges.rb', line 3

def self.charge(params={})
  id = params[:id] || StripeMock.new_id('ch')

  {
    id: id,
    object: "charge",
    created: Faker::Date.backward(2).to_time.to_i,
    livemode: false,
    paid: true,
    status: 'succeeded',
    amount: Faker::Number.number(4),
    currency: "usd",
    refunded: false,
    source: StripeMock::Data.card,
    captured: true,
    balance_transaction: StripeMock.new_id('txn'),
    failure_message: nil,
    failure_code: nil,
    amount_refunded: 0,
    customer: nil,
    invoice: nil,
    description: "For items ordered on my kick ass app",
    dispute: nil,
    metadata: {},
    statement_descriptor: 'MY APP',
    fraud_details: {},
    receipt_email: nil,
    shipping: nil,
    destination: nil,
    application_fee: nil,
    refunds: {
      object: "list",
      total_count: 0,
      has_more: false,
      url: "/v1/charges/#{ id }/refunds",
      data: []
    }
  }.merge(params)
end

.charges(params = {}) ⇒ Object



43
44
45
46
47
48
49
50
# File 'lib/stripe_mock/data/charges.rb', line 43

def self.charges(params={})
  {
    object: 'list',
    url: '/v1/charges',
    has_more: false,
    data: [charge, charge]
  }.merge(params)
end

.token(params = {}) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
# File 'lib/stripe_mock/data/tokens.rb', line 3

def self.token(params={})
  {
    id: StripeMock.new_id('tok'),
    livemode: false,
    created: Faker::Date.backward(2).to_time.to_i,
    used: false,
    object: "token",
    type: 'card',
    card: StripeMock::Data.card,
    client_ip: nil
  }.merge(params)
end

.transfer(params = {}) ⇒ Object



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
# File 'lib/stripe_mock/data/transfers.rb', line 3

def self.transfer(params={})
  id = params[:id] || StripeMock.new_id('tr')
   = StripeMock.new_id('ba')

  {
    id: id,
    object: "transfer",
    created: Faker::Date.backward(2).to_time.to_i,
    date: Date.today.to_time.to_i,
    livemode: false,
    amount: 100,
    currency: "usd",
    reversed: false,
    status: 'paid',
    type: 'bank_account',
    reversals: {
      object: "list",
      total_count: 0,
      has_more: false,
      url: "/v1/transfers/#{id}/reversals",
      data: []
    },
    balance_transaction: StripeMock.new_id('txn'),
    bank_account: StripeMock::Data.(id: ),
    destination: ,
    description: 'STRIPE TRANSFER',
    failure_message: nil,
    failure_code: nil,
    amount_reversed: 0,
    metadata: {},
    statement_descriptor: nil,
    recipient: nil,
    source_transaction: nil,
    application_fee: nil
  }.merge(params)
end

.transfers(params = {}) ⇒ Object



40
41
42
43
44
45
46
47
# File 'lib/stripe_mock/data/transfers.rb', line 40

def self.transfers(params={})
  {
    object: 'list',
    url: '/v1/transfers',
    has_more: false,
    data: [transfer, transfer]
  }
end