Module: StripeMock::RequestHandlers::Sources

Included in:
Instance
Defined in:
lib/stripe_mock/request_handlers/sources.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(klass) ⇒ Object



5
6
7
8
9
10
11
# File 'lib/stripe_mock/request_handlers/sources.rb', line 5

def Sources.included(klass)
  klass.add_handler 'get /v1/customers/(.*)/sources', :retrieve_sources
  klass.add_handler 'post /v1/customers/(.*)/sources', :create_source
  klass.add_handler 'get /v1/customers/(.*)/sources/(.*)', :retrieve_source
  klass.add_handler 'delete /v1/customers/(.*)/sources/(.*)', :delete_source
  klass.add_handler 'post /v1/customers/(.*)/sources/(.*)', :update_source
end

Instance Method Details

#create_source(route, method_url, params, headers) ⇒ Object



13
14
15
16
# File 'lib/stripe_mock/request_handlers/sources.rb', line 13

def create_source(route, method_url, params, headers)
  route =~ method_url
  add_card_to(:customer, $1, params, customers)
end

#delete_source(route, method_url, params, headers) ⇒ Object



30
31
32
33
# File 'lib/stripe_mock/request_handlers/sources.rb', line 30

def delete_source(route, method_url, params, headers)
  route =~ method_url
  delete_card_from(:customer, $1, $2, customers)
end

#retrieve_source(route, method_url, params, headers) ⇒ Object



23
24
25
26
27
28
# File 'lib/stripe_mock/request_handlers/sources.rb', line 23

def retrieve_source(route, method_url, params, headers)
  route =~ method_url
  customer = assert_existence :customer, $1, customers[$1]

  assert_existence :card, $2, get_card(customer, $2)
end

#retrieve_sources(route, method_url, params, headers) ⇒ Object



18
19
20
21
# File 'lib/stripe_mock/request_handlers/sources.rb', line 18

def retrieve_sources(route, method_url, params, headers)
  route =~ method_url
  retrieve_object_cards(:customer, $1, customers)
end

#update_source(route, method_url, params, headers) ⇒ Object



35
36
37
38
39
40
41
42
# File 'lib/stripe_mock/request_handlers/sources.rb', line 35

def update_source(route, method_url, params, headers)
  route =~ method_url
  customer = assert_existence :customer, $1, customers[$1]

  card = assert_existence :card, $2, get_card(customer, $2)
  card.merge!(params)
  card
end