kiik 0.1.12 → 0.2.0
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 +4 -4
- data/Gemfile.lock +2 -2
- data/README.md +1 -1
- data/kiik.gemspec +1 -1
- data/lib/kiik.rb +3 -0
- data/lib/kiik/compensation.rb +39 -0
- data/lib/kiik/paginated.rb +5 -0
- data/lib/kiik/resource.rb +7 -1
- data/lib/kiik/rest/get_all.rb +46 -0
- data/test/kiik/resource_test.rb +15 -0
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3aa46780669ea29fcb0c21bc4824be339cde036b
|
4
|
+
data.tar.gz: fd352f9fbdde22a8a74be62ea635ce6f8bc8b501
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 783be33cda49ce5363df1baacf639d01069619275f9031d248ec09eb6a2d0190090e6c0047ad6379c2bc51a76df8d05264bb73296f5b560dc400f4d5c21d2a1e
|
7
|
+
data.tar.gz: f8e3723af150b2e60810ee9cdcd7a07279983bd2ba10515101832ffdc896f2048b8e89022e8d34b80388468956bd1ac3fc365a35e25cb000660df0a1e55e3884
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# KiiK Ruby [](https://snap-ci.com/kiik-payments/kiik_ruby/branch/master) [](http://inch-ci.org/github/kiik-payments/kiik-ruby)
|
2
2
|
|
3
3
|
Gem for bindings with Kiik API
|
4
4
|
|
data/kiik.gemspec
CHANGED
@@ -2,7 +2,7 @@ $:.unshift(File.join(File.dirname(__FILE__), 'lib'))
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = 'kiik'
|
5
|
-
s.version = '0.
|
5
|
+
s.version = '0.2.0'
|
6
6
|
s.summary = 'Integrate Kiik with your Ruby app'
|
7
7
|
s.description = "KiiK's official gem that helps you to integrate with our services. See https://docs.kiik.com.br for details."
|
8
8
|
s.authors = ['Julien Lucca', 'Esdras Eduardo']
|
data/lib/kiik.rb
CHANGED
@@ -3,12 +3,15 @@ require 'httparty'
|
|
3
3
|
|
4
4
|
require 'kiik/rest/create'
|
5
5
|
require 'kiik/rest/update'
|
6
|
+
require 'kiik/rest/get_all'
|
6
7
|
require 'kiik/util'
|
7
8
|
require 'kiik/resource'
|
8
9
|
require 'kiik/card'
|
9
10
|
require 'kiik/customer'
|
10
11
|
require 'kiik/charge'
|
12
|
+
require 'kiik/compensation'
|
11
13
|
require 'kiik/error'
|
14
|
+
require 'kiik/paginated'
|
12
15
|
|
13
16
|
module Kiik
|
14
17
|
relative_config = '../config/kiik.yml'
|
@@ -0,0 +1,39 @@
|
|
1
|
+
module Kiik
|
2
|
+
class Compensation < Resource
|
3
|
+
include Kiik::Rest::GetAll
|
4
|
+
|
5
|
+
attr_accessor :status, :received_at, :history_type, :expected_compensation_date,
|
6
|
+
:compensated_at, :charge_id, :amount, :aditional_info, :total
|
7
|
+
|
8
|
+
class << self
|
9
|
+
def consolidated(customer = nil, start_date = nil, end_date = nil)
|
10
|
+
url = customer.nil? ? '' : "#{customer}/"
|
11
|
+
url += "consolidated"
|
12
|
+
params = []
|
13
|
+
params << "start_date=#{start_date.strftime('%Y-%m-%d %H:%M:%S')}" if start_date
|
14
|
+
params << "end_date=#{end_date.strftime('%Y-%m-%d %H:%M:%S')}" if end_date
|
15
|
+
url += "?#{params.join('&')}" if params.length
|
16
|
+
result = request(url, {}, :GET, {})
|
17
|
+
raise result if result.kind_of? StandardError
|
18
|
+
result.total
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
def initialize(attributes = {})
|
23
|
+
super(attributes)
|
24
|
+
end
|
25
|
+
|
26
|
+
def to_json
|
27
|
+
super.merge!(super([
|
28
|
+
:status,
|
29
|
+
:received_at,
|
30
|
+
:history_type,
|
31
|
+
:expected_compensation_date,
|
32
|
+
:compensated_at,
|
33
|
+
:charge_id,
|
34
|
+
:amount,
|
35
|
+
:aditional_info
|
36
|
+
]))
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
data/lib/kiik/resource.rb
CHANGED
@@ -25,7 +25,13 @@ module Kiik
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def build(data, error = nil)
|
28
|
-
|
28
|
+
if data['result'] && data['total']
|
29
|
+
instance = Kiik::Paginated.new()
|
30
|
+
instance.result = data['result'].map { |element| self.new(element) }
|
31
|
+
instance.total = data['total']
|
32
|
+
else
|
33
|
+
instance = self.new(data)
|
34
|
+
end
|
29
35
|
instance.errors = error.errors unless error.nil?
|
30
36
|
instance
|
31
37
|
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Kiik
|
2
|
+
module Rest
|
3
|
+
module GetAll
|
4
|
+
class << self
|
5
|
+
|
6
|
+
def included(base)
|
7
|
+
base.extend(ClassMethods)
|
8
|
+
end
|
9
|
+
|
10
|
+
end
|
11
|
+
def get_all
|
12
|
+
result = self.class.get_all(self.to_json)
|
13
|
+
raise result if result.instance_of? StandardError
|
14
|
+
|
15
|
+
if result.instance_of? KiikError
|
16
|
+
self.errors = result.errors
|
17
|
+
return false
|
18
|
+
end
|
19
|
+
|
20
|
+
initialize(result.to_json)
|
21
|
+
true
|
22
|
+
end
|
23
|
+
|
24
|
+
module ClassMethods
|
25
|
+
|
26
|
+
def get_all!(params={}, header={})
|
27
|
+
begin
|
28
|
+
get_all(params, header)
|
29
|
+
rescue KiikError => e
|
30
|
+
build(params, e)
|
31
|
+
rescue StandardError => e
|
32
|
+
e
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
def get_all(params={}, header={})
|
37
|
+
|
38
|
+
result = request(nil, params, :GET, header)
|
39
|
+
|
40
|
+
raise result if result.kind_of? StandardError
|
41
|
+
result
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require File.expand_path('../../test_helper', __FILE__)
|
2
|
+
|
3
|
+
module Kiik
|
4
|
+
class ResourceTest < Test::Unit::TestCase
|
5
|
+
|
6
|
+
should "" do
|
7
|
+
respond = {errors: [{type:"invalid_request_error", param:"name", message:"Param name is required"}]}
|
8
|
+
post({}, respond, 422)
|
9
|
+
assert_raise KiikError do
|
10
|
+
Kiik::Customer.create
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kiik
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Julien Lucca
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-
|
12
|
+
date: 2016-08-04 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: mocha
|
@@ -100,16 +100,20 @@ files:
|
|
100
100
|
- lib/kiik.rb
|
101
101
|
- lib/kiik/card.rb
|
102
102
|
- lib/kiik/charge.rb
|
103
|
+
- lib/kiik/compensation.rb
|
103
104
|
- lib/kiik/customer.rb
|
104
105
|
- lib/kiik/error.rb
|
106
|
+
- lib/kiik/paginated.rb
|
105
107
|
- lib/kiik/resource.rb
|
106
108
|
- lib/kiik/rest/create.rb
|
109
|
+
- lib/kiik/rest/get_all.rb
|
107
110
|
- lib/kiik/rest/update.rb
|
108
111
|
- lib/kiik/util.rb
|
109
112
|
- lib/tasks/kiik.rake
|
110
113
|
- test/kiik/card_test.rb
|
111
114
|
- test/kiik/charge_test.rb
|
112
115
|
- test/kiik/customer_test.rb
|
116
|
+
- test/kiik/resource_test.rb
|
113
117
|
- test/test_helper.rb
|
114
118
|
- test/test_mock.rb
|
115
119
|
homepage: http://docs.kiik.com
|
@@ -140,5 +144,6 @@ test_files:
|
|
140
144
|
- test/kiik/card_test.rb
|
141
145
|
- test/kiik/charge_test.rb
|
142
146
|
- test/kiik/customer_test.rb
|
147
|
+
- test/kiik/resource_test.rb
|
143
148
|
- test/test_helper.rb
|
144
149
|
- test/test_mock.rb
|