mpayer_ruby 0.0.10 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f16f461bac9407c17afcf540d4095a091965ed8d
4
- data.tar.gz: 194c8a4618311845f991401be2624d752f9c1bf6
3
+ metadata.gz: 7b4d99a94ee5c778c3be51edc14a2a13e6a44e93
4
+ data.tar.gz: 33951faa2cb58c902faf7e9d7502e05064ff125d
5
5
  SHA512:
6
- metadata.gz: 6aa9d45fe3ce0d126c1b0a453cbe3cbd62da017e6c13387217d24bdb006cd8c370c424ad0bdf40e249f285027940ff0de60ed35d6682423aa06d9a2a1ca49ffe
7
- data.tar.gz: 25c7d112955514318ebe54ea7c78f9cf243e65d352a83314e56cd1ebb61b861a3c18820afb99f47be97ff6f6ac1edf5d3e6cc39d2f50818ff029228c9dd749dc
6
+ metadata.gz: 477d864b4897a932be2ae34c90da8afef2948795c11485a47f1274c535cad8605cd06bbaab6ba382adb42a814117af76207c2a6a0e908a69d938fb674f75fb09
7
+ data.tar.gz: cb3ee3475cc84284ca7b11d6a1787864553769e408aa7f10cff8be78978a9b6d9a2ea7d80223369ddf04eae5cc4a49b4cb8f5f633efd8a17f20c4f9284063dca
data/README.md CHANGED
@@ -55,7 +55,7 @@ Mpayer.setup do |config|
55
55
  end
56
56
 
57
57
  #Get all clients in your organisation
58
- clients = Mpayer::Client.all(per:1,per_page:100)
58
+ clients = Mpayer::Client.all(page:1,per_page:100)
59
59
 
60
60
  #Get one client in your organisation
61
61
  clients = Mpayer::Client.find(123)
@@ -78,7 +78,7 @@ https://app.mpayer.co.ke/api/payables
78
78
  All responses are objects and can be accessed with dot notation
79
79
  e.g
80
80
  ```ruby
81
- clients = Mpayer::Client.all(per:1,per_page:100)
81
+ clients = Mpayer::Client.all(page:1,per_page:100)
82
82
  client = client.first
83
83
  client.name #=> "CLark Kent"
84
84
  ```
@@ -97,9 +97,9 @@ client = Mpayer::Client.find(id:20284,fetch:false).account(account_id) # Get cli
97
97
  client = Mpayer::Client.find(id:20284,fetch:false)
98
98
  account = client.account(account_id) # Get clients account with id
99
99
 
100
- client_accounts = Mpayer::Client.find(id:20284,fetch:false).accounts(per:1,per_page:100)
101
- client_payables = Mpayer::Client.find(id:20284,fetch:false).payables(per:1,per_page:100)
102
- client_transactions = Mpayer::Client.find(id:20284,fetch:false).transactions(account_id, per:1,per_page:100)
100
+ client_accounts = Mpayer::Client.find(id:20284,fetch:false).accounts(page:1,per_page:100)
101
+ client_payables = Mpayer::Client.find(id:20284,fetch:false).payables(page:1,per_page:100)
102
+ client_transactions = Mpayer::Client.find(id:20284,fetch:false).transactions(account_id, page:1,per_page:100)
103
103
 
104
104
  ```
105
105
 
@@ -195,9 +195,9 @@ Mpayer.setup do |config|
195
195
  end
196
196
 
197
197
  url = "/clients/all_clients"
198
- Mpayer::Fetch.get(url,query:{per:per,per_page:per_page})
199
- Mpayer::Fetch.post(url,body:{client:{name:'Kiki Lolo'}}.to_json)
200
- Mpayer::Fetch.put(url,body:{client:{name:'Kiki Lolo'}}.to_json)
198
+ Mpayer::Fetch.get(url,query:{page:page,per_page:per_page})
199
+ Mpayer::Fetch.post(url,{client:{name:'Kiki Lolo'}})
200
+ Mpayer::Fetch.put(url,{client:{name:'Kiki Lolo'}})
201
201
  Mpayer::Fetch.delete(url)
202
202
 
203
203
  ```
@@ -32,16 +32,16 @@ module Mpayer
32
32
  end
33
33
 
34
34
  # Use this methon in the association reader method witht the same name
35
- def find_all(per:1,per_page:100,**options)
35
+ def find_all(page:1,per_page:100,**options)
36
36
  # gets caller methods as association
37
37
  association = caller_locations(1,1)[0].label
38
38
  url = assoc_link(association.to_sym,options)
39
- if self.pagination[association]=={per_page:per_page,per:per}
40
- self.send("#{association}=", Mpayer::Fetch.get(url,query:{per:per,per_page:per_page}) ) if instance_variable_get("@#{association}").nil?
39
+ if self.pagination[association]=={per_page:per_page,page:page}
40
+ self.send("#{association}=", Mpayer::Fetch.get(url,query:{page:page,per_page:per_page}) ) if instance_variable_get("@#{association}").nil?
41
41
  else
42
- self.send("#{association}=", Mpayer::Fetch.get(url,query:{per:per,per_page:per_page}) )
42
+ self.send("#{association}=", Mpayer::Fetch.get(url,query:{page:page,per_page:per_page}) )
43
43
  end
44
- self.pagination.merge!({"#{association}":{per:per,per_page:per_page}})
44
+ self.pagination.merge!({"#{association}":{page:page,per_page:per_page}})
45
45
  return instance_variable_get("@#{association}")
46
46
  end
47
47
 
@@ -5,16 +5,16 @@ module Mpayer
5
5
  class << self
6
6
 
7
7
  # Mpayer::Account.all()
8
- def all(per:1,per_page:100)
8
+ def all(page:1,per_page:100)
9
9
  url = "/accounts/all_accounts"
10
- Mpayer::Fetch.get(url,query:{per:per,per_page:per_page})
10
+ Mpayer::Fetch.get(url,query:{page:page,per_page:per_page})
11
11
  end
12
12
 
13
13
  # options = {from_date:nil,to_date:nil, dr_cr:nil, ac_type:nil, category:nil}
14
14
  # Mpayer::Account.aggregate(options)
15
- def aggregates(per:1,per_page:100, **options)
15
+ def aggregates(page:1,per_page:100, **options)
16
16
  url = "/accounts/aggregates"
17
- Mpayer::Fetch.get(url,query:{per:per,per_page:per_page}.merge!(options))
17
+ Mpayer::Fetch.get(url,query:{page:page,per_page:per_page}.merge!(options))
18
18
  end
19
19
 
20
20
  # Mpayer::Account.find(account_id)
@@ -29,7 +29,7 @@ module Mpayer
29
29
  # account.update(name:new_name)
30
30
  def update(options)
31
31
  url = "/accounts/#{self.id}"
32
- response = Mpayer::Fetch.put(url,body: options.to_json)
32
+ response = Mpayer::Fetch.put(url,options)
33
33
  self.response = response
34
34
  end
35
35
 
@@ -37,14 +37,14 @@ module Mpayer
37
37
 
38
38
  end
39
39
 
40
- # Mpayer::Account.find(26, fetch:false).members(per:1,per_page:100)
41
- def members(per:1,per_page:100)
42
- find_all(per:per,per_page:per_page)
40
+ # Mpayer::Account.find(26, fetch:false).members(page:1,per_page:100)
41
+ def members(page:1,per_page:100)
42
+ find_all(page:page,per_page:per_page)
43
43
  end
44
44
 
45
- # Mpayer::Account.find(26, fetch:false).payable_items(per:1,per_page:100)
46
- def payable_items(per:1,per_page:100)
47
- find_all(per:per,per_page:per_page)
45
+ # Mpayer::Account.find(26, fetch:false).payable_items(page:1,per_page:100)
46
+ def payable_items(page:1,per_page:100)
47
+ find_all(page:page,per_page:per_page)
48
48
  end
49
49
 
50
50
  protected
@@ -5,9 +5,9 @@ module Mpayer
5
5
  class << self
6
6
 
7
7
  # Mpayer::Client.all
8
- def all(per:1,per_page:100)
8
+ def all(page:1,per_page:100)
9
9
  url = "/clients/all_clients"
10
- Mpayer::Fetch.get(url,query:{per:per,per_page:per_page})
10
+ Mpayer::Fetch.get(url,query:{page:page,per_page:per_page})
11
11
  end
12
12
 
13
13
  # Mpayer::Client.find(id)
@@ -21,7 +21,8 @@ module Mpayer
21
21
  # Mpayer::Client.create(client_attributes)
22
22
  def create(options={})
23
23
  url = "/clients"
24
- response = Mpayer::Fetch.post(url,body: options.to_json)
24
+ # bp
25
+ response = Mpayer::Fetch.post(url,options)
25
26
  client = new(options.merge!(id:response.id ,response:response, account: response.account.first))
26
27
  end
27
28
 
@@ -43,22 +44,22 @@ module Mpayer
43
44
  # Mpayer::Client.find(id:20284).create_account(options)
44
45
  def create_account(options={})
45
46
  url = "/clients/#{self.id}/accounts/new"
46
- @account = Mpayer::Fetch.post(url,body: options.to_json)
47
+ @account = Mpayer::Fetch.post(url,options)
47
48
  end
48
49
 
49
- # Mpayer::Client.find(26, fetch:false).accounts(per:1,per_page:100)
50
- def accounts(per:1,per_page:100)
51
- find_all(per:per,per_page:per_page)
50
+ # Mpayer::Client.find(26, fetch:false).accounts(page:1,per_page:100)
51
+ def accounts(page:1,per_page:100)
52
+ find_all(page:page,per_page:per_page)
52
53
  end
53
54
 
54
- # Mpayer::Client.find(26, fetch:false).payables(per:1,per_page:100)
55
- def payables(per:1,per_page:100)
56
- find_all(per:per,per_page:per_page)
55
+ # Mpayer::Client.find(26, fetch:false).payables(page:1,per_page:100)
56
+ def payables(page:1,per_page:100)
57
+ find_all(page:page,per_page:per_page)
57
58
  end
58
59
 
59
- # Mpayer::Client.find(26, fetch:false).transactions(account_id, per:1,per_page:100)
60
- def transactions(account_id,per:1,per_page:100)
61
- find_all(per:per,per_page:per_page,account_id:account_id)
60
+ # Mpayer::Client.find(26, fetch:false).transactions(account_id, page:1,per_page:100)
61
+ def transactions(account_id,page:1,per_page:100)
62
+ find_all(page:page,per_page:per_page,account_id:account_id)
62
63
  end
63
64
 
64
65
  protected
@@ -6,7 +6,7 @@ module Mpayer
6
6
  # Mpayer::Message.create(message_attributes)
7
7
  def create(options={})
8
8
  url = "/messages"
9
- response = Mpayer::Fetch.post(url,body: options.to_json)
9
+ response = Mpayer::Fetch.post(url,options)
10
10
  message = new(options.merge!(id:response.id ,response:response))
11
11
  end
12
12
 
@@ -4,9 +4,9 @@ module Mpayer
4
4
  class << self
5
5
 
6
6
  # Mpayer::Payable.all
7
- def all(per:1,per_page:100)
7
+ def all(page:1,per_page:100)
8
8
  url = "/payables/all"
9
- Mpayer::Fetch.get(url,query:{per:per,per_page:per_page})
9
+ Mpayer::Fetch.get(url,query:{page:page,per_page:per_page})
10
10
  end
11
11
 
12
12
  # Mpayer::Payable.find(id)
@@ -18,7 +18,7 @@ module Mpayer
18
18
 
19
19
  # Mpayer::Payable.where(ref_id:"KT0041[P]-010000402")
20
20
  def where(ref_id:,fetch:true)
21
- url = "/payables/search/#{CGI.escape(ref_id)}"
21
+ url = "/payables/search/#{CGI.escape(ref_id.to_s)}"
22
22
  response = Mpayer::Fetch.get(url) if fetch
23
23
  payable = new(id:response.id,response:response) unless (response.id rescue nil).nil?
24
24
  end
@@ -26,7 +26,7 @@ module Mpayer
26
26
  # Mpayer::Payable.create(options)
27
27
  def create(options={})
28
28
  url = "/payables"
29
- response = Mpayer::Fetch.post(url,body: options.to_json)
29
+ response = Mpayer::Fetch.post(url,options)
30
30
  payable_id = response.id
31
31
  payable = new(options.merge!(id:payable_id,response:response))
32
32
  end
@@ -4,16 +4,16 @@ module Mpayer
4
4
  class << self
5
5
 
6
6
  # Mpayer::Transaction.all(from: Time.now - (86400*400))
7
- def all(per:1,per_page:100,from: nil,to: nil)
7
+ def all(page:1,per_page:100,from: nil,to: nil)
8
8
  url = "/transactions/all"
9
9
  from = from.strftime("%F %T") unless from.nil?
10
10
  to = to.strftime("%F %T") unless to.nil?
11
- Mpayer::Fetch.get(url,query:{per:per,per_page:per_page,from:from,to:to})
11
+ Mpayer::Fetch.get(url,query:{page:page,per_page:per_page,from:from,to:to})
12
12
  end
13
13
 
14
14
  # Mpayer::Transaction.where(ref_id:"KT0041[P]-010000402")
15
15
  def where(ref_id:,fetch:true)
16
- url = "/transactions/#{CGI.escape(ref_id)}"
16
+ url = "/transactions/#{CGI.escape(ref_id.to_s)}"
17
17
  response = Mpayer::Fetch.get(url) if fetch
18
18
  transaction = new(id:response.id,response:response)
19
19
  end
@@ -22,7 +22,7 @@ module Mpayer
22
22
  # Mpayer::Transaction.deposit(body)
23
23
  def deposit(**options)
24
24
  url = "/transactions/deposit"
25
- response = Mpayer::Fetch.put(url,body: mpayer_refs.merge!(options).to_json)
25
+ response = Mpayer::Fetch.put(url,mpayer_refs.merge!(options))
26
26
  transaction = new(id:response.id,response:response)
27
27
  end
28
28
 
@@ -30,7 +30,7 @@ module Mpayer
30
30
  # Mpayer::Transaction.withdraw(body)
31
31
  def withdraw(**options)
32
32
  url = "/transactions/withdraw"
33
- response = Mpayer::Fetch.delete(url,body: mpayer_refs.merge!(options).to_json)
33
+ response = Mpayer::Fetch.delete(url,mpayer_refs.merge!(options))
34
34
  transaction = new(id:response.id,response:response)
35
35
  end
36
36
 
@@ -38,7 +38,7 @@ module Mpayer
38
38
  # Mpayer::Transaction.transfer(body)
39
39
  def transfer(**options)
40
40
  url = "/transactions/transfer"
41
- response = Mpayer::Fetch.post(url,body: mpayer_refs.merge!(options).to_json)
41
+ response = Mpayer::Fetch.post(url,mpayer_refs.merge!(options))
42
42
  transaction = new(id:response.id,response:response)
43
43
  end
44
44
 
@@ -14,9 +14,10 @@ module Mpayer
14
14
 
15
15
  %w(get put post delete).each do |m|
16
16
  define_method m do |path, options={}, &block|
17
+ options = {body: options.to_json}
17
18
  res = perform_request Net::HTTP::Put, path, options, &block if m == 'put'
18
- res = perform_request Net::HTTP::Get, path, options, &block if m == 'get'
19
19
  res = perform_request Net::HTTP::Post, path, options, &block if m == 'post'
20
+ res = perform_request Net::HTTP::Get, path, options, &block if m == 'get'
20
21
  res = perform_request Net::HTTP::Delete, path, options, &block if m == 'delete'
21
22
  save_json(res) if load_json?
22
23
  res
@@ -26,7 +27,7 @@ module Mpayer
26
27
  def save_json(response)
27
28
  request_method = response.request.http_method.name.split('::').last.upcase
28
29
  file_path = response.request.path.to_s
29
- slash,model,*file_name = file_path.split(/\/|\?/)
30
+ slash,model,*file_name = file_path.split('?')[0].split(/\/|\?/)
30
31
  file_location = "lib/mpayer_ruby/support/fake_mpayer/#{model}/#{request_method}_#{file_name.join('_')}.json"
31
32
  File.write(file_location, response.body)
32
33
  end
@@ -8,7 +8,7 @@ class FakeMpayer < Sinatra::Base
8
8
  if (request.env['HTTP_X_WSSE'].empty? rescue true)
9
9
  [200, {}, [{base:["Authentication Failed"]}.to_json]]
10
10
  else
11
- slash,api,model,*path = request.path_info.split(/\/|\?/)
11
+ slash,api,model,*path = request.path_info.split('?')[0].split(/\/|\?/)
12
12
  json_response 200, "#{model}/#{request.request_method}_#{path.join('_')}.json"
13
13
  end
14
14
  end
@@ -1,3 +1,3 @@
1
1
  module Mpayer
2
- VERSION = "0.0.10"
2
+ VERSION = "0.0.11"
3
3
  end
data/lib/mpayer_ruby.rb CHANGED
@@ -34,7 +34,7 @@ module Mpayer
34
34
  end
35
35
 
36
36
  def login
37
- Mpayer::Fetch.post('/login',post: {user_no: ENV['MPAYER_USER'],password:ENV['MPAYER_PASSWORD']}.to_json)
37
+ Mpayer::Fetch.post('/login',{user: ENV['MPAYER_USER'],password:ENV['MPAYER_PASSWORD']})
38
38
  end
39
39
  end
40
40
 
data/mpayer_ruby.gemspec CHANGED
@@ -40,6 +40,7 @@ Gem::Specification.new do |spec|
40
40
  spec.add_development_dependency "coveralls", '~> 0'
41
41
  spec.add_development_dependency "webmock", '~> 1.21'
42
42
  spec.add_development_dependency "sinatra", '~> 1.4'
43
+ spec.add_development_dependency "faker", '~> 1.4'
43
44
 
44
45
  spec.add_dependency 'httparty', "~> 0.13"
45
46
  spec.add_dependency 'wsse', "~> 0.0"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mpayer_ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kariuki Gathitu
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-05-27 00:00:00.000000000 Z
11
+ date: 2015-05-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -178,6 +178,20 @@ dependencies:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
180
  version: '1.4'
181
+ - !ruby/object:Gem::Dependency
182
+ name: faker
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: '1.4'
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: '1.4'
181
195
  - !ruby/object:Gem::Dependency
182
196
  name: httparty
183
197
  requirement: !ruby/object:Gem::Requirement