forked from stripe-ruby-mock/stripe-ruby-mock
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathaccounts.rb
35 lines (30 loc) · 1.07 KB
/
accounts.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
module StripeMock
module RequestHandlers
module Accounts
def Accounts.included(klass)
klass.add_handler 'post /v1/accounts', :new_account
klass.add_handler 'get /v1/account', :get_account
klass.add_handler 'get /v1/accounts/(.*)', :get_account
klass.add_handler 'post /v1/accounts/(.*)', :update_account
klass.add_handler 'get /v1/accounts', :list_accounts
end
def new_account(route, method_url, params, headers)
params[:id] ||= new_id('acct')
route =~ method_url
accounts[ params[:id] ] ||= Data.mock_account(params)
end
def get_account(route, method_url, params, headers)
route =~ method_url
Data.mock_account
end
def update_account(route, method_url, params, headers)
route =~ method_url
assert_existence :account, $1, accounts[$1]
accounts[$1].merge!(params)
end
def list_accounts(route, method_url, params, headers)
Data.mock_list_object(accounts.values, params)
end
end
end
end