mpayer_ruby 0.0.10 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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