Class: Faker::Stripe

Inherits:
Base
  • Object
show all
Defined in:
lib/faker/stripe.rb

Constant Summary

Constants inherited from Base

Base::Letters, Base::Numbers, Base::ULetters

Class Method Summary collapse

Methods inherited from Base

bothify, fetch, fetch_all, flexible, letterify, method_missing, numerify, parse, rand, rand_in_range, regexify, respond_to_missing?, sample, shuffle, translate, unique, with_locale

Class Method Details

.ccv(card_type = nil) ⇒ Object



58
59
60
# File 'lib/faker/stripe.rb', line 58

def ccv(card_type = nil)
  (card_type.to_s == 'amex' ? rand_in_range(1000, 9999) : rand_in_range(100, 999)).to_s
end

.invalid_card(card_error = nil) ⇒ Object



34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/faker/stripe.rb', line 34

def invalid_card(card_error = nil)
  invalid_cards = translate('faker.stripe.invalid_cards').keys

  if card_error.nil?
    card_error = sample(invalid_cards).to_s
  else
    unless invalid_cards.include?(card_error.to_sym)
      raise ArgumentError,
            "Invalid credit cards argument can be left blank or include #{invalid_cards.join(', ')}"
    end
  end

  fetch('stripe.invalid_cards.' + card_error)
end

.monthObject



49
50
51
# File 'lib/faker/stripe.rb', line 49

def month
  format('%02d', rand_in_range(1, 12))
end

.valid_card(card_type = nil) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/faker/stripe.rb', line 4

def valid_card(card_type = nil)
  valid_cards = translate('faker.stripe.valid_cards').keys

  if card_type.nil?
    card_type = sample(valid_cards).to_s
  else
    unless valid_cards.include?(card_type.to_sym)
      raise ArgumentError,
            "Valid credit cards argument can be left blank or include #{valid_cards.join(', ')}"
    end
  end

  fetch('stripe.valid_cards.' + card_type)
end

.valid_token(card_type = nil) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/faker/stripe.rb', line 19

def valid_token(card_type = nil)
  valid_tokens = translate('faker.stripe.valid_tokens').keys

  if card_type.nil?
    card_type = sample(valid_tokens).to_s
  else
    unless valid_tokens.include?(card_type.to_sym)
      raise ArgumentError,
            "Valid credit cards argument can be left blank or include #{valid_tokens.join(', ')}"
    end
  end

  fetch('stripe.valid_tokens.' + card_type)
end

.yearObject



53
54
55
56
# File 'lib/faker/stripe.rb', line 53

def year
  start_year = ::Time.new.year + 1
  rand_in_range(start_year, start_year + 5).to_s
end