ruby_payler 0.1.9 → 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b0d368b0a8f3e7f3c87219161e8f3ba4914d39e6
4
- data.tar.gz: 0650a6beebe51d6576d3ee8c1bf38e888e678c56
3
+ metadata.gz: fd74e6abd4a02a3fa184ac90ee1ab9a1c690ed1f
4
+ data.tar.gz: 6804de07e127c5a70b15dad88465e8660c81aa6a
5
5
  SHA512:
6
- metadata.gz: d9714cd332d3319328f8cea4179009a00da87b2be9ac5c71540a0c04887508940c9e8012713213d5ca4e03071a55454a27f29b6877b0bc3769fcddaca204f542
7
- data.tar.gz: 9d3d09246589e3cdacaae7646a654027bc950c123e15c5132dc4df0dbc1d161445cc2fe063b10c25432393fa1926d00e38c1c99dd33aec34d214df655f2d6546
6
+ metadata.gz: ba25bcae20d0f735c7f90d0be20200874d3cfcd0b73620e9d82081b01db42d38eee6de390415d40af3dfa22d08f7fac8a0e0e8bdeb3d57fa35e70837fd6ee622
7
+ data.tar.gz: 0ae104a89f812dbbeddb24758822c5a09b8c14ada7b13dc10a255aeaa33c4ef0193ec69d81b4e56318a31fcd3bf4f90074f73bc73723c78f804825174eb980b6
data/.gitignore CHANGED
@@ -8,3 +8,4 @@
8
8
  /spec/reports/
9
9
  /tmp/
10
10
  /test/config.yml
11
+ /fixtures/vcr_cassettes/
data/.rubocop.yml ADDED
@@ -0,0 +1,34 @@
1
+ AllCops:
2
+ TargetRubyVersion: 2.3
3
+ DisplayCopNames: true
4
+ DisplayStyleGuide: true
5
+ Exclude:
6
+ - 'bin/*'
7
+ - 'config/**/*'
8
+ - 'db/**/*'
9
+ - 'Guardfile'
10
+ - 'Gemfile'
11
+
12
+ Metrics/MethodLength:
13
+ Max: 20
14
+
15
+ Metrics/LineLength:
16
+ Max: 100
17
+
18
+ Style/TrailingCommaInLiteral:
19
+ EnforcedStyleForMultiline: comma
20
+
21
+ Style/TrailingCommaInArguments:
22
+ EnforcedStyleForMultiline: comma
23
+
24
+ Style/AlignParameters:
25
+ EnforcedStyle: with_fixed_indentation
26
+
27
+ Style/MultilineMethodCallBraceLayout:
28
+ EnforcedStyle: new_line
29
+
30
+ Style/FrozenStringLiteralComment:
31
+ Enabled: false
32
+
33
+ Metrics/AbcSize:
34
+ Enabled: false
data/CHANGELOG.md ADDED
@@ -0,0 +1,15 @@
1
+ # RubyPayler Changelog
2
+
3
+ ## v0.2.0
4
+ * Major update: implement 100% of methods
5
+ * Achieve 100% test coverage
6
+ * Change config file format
7
+ * Change commands to run tests
8
+ * Add command to build coverage report
9
+ * Add some development dependencies
10
+ * Update Readme
11
+ * Add Changelog
12
+
13
+ ## v0.1.9
14
+ * Implement all necessary methods for Busfor usage
15
+
data/README.md CHANGED
@@ -1,12 +1,20 @@
1
1
  # RubyPayler
2
- Ruby wrapper for payler.com API
2
+ Ruby wrapper for payler.com Gate API v1.11
3
3
 
4
- _Not all methods, parameters are implemented. There's an issue about that and I'm going to resolve it a bit later._
4
+ _This is not Merchant API_
5
5
 
6
- Documentation for API is here: http://payler.com/docs/acquiring.html
6
+
7
+ Documentation for API is here: [pdf](http://payler.com/download/docs/%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5%20Payler%20Gate%20API.pdf) and here: http://payler.com/docs/acquiring.html
7
8
 
8
9
  Documentation for this gem: http://www.rubydoc.info/gems/ruby_payler/
9
10
 
11
+ ## Highlights
12
+ - 100% of API methods implemented
13
+ - 100% test coverage
14
+ - tests perform real interactions with Payler API via Capybara and PhantomJs
15
+ - tests work fast and offline with VCR cassettes
16
+ - battle-tested at [busfor.ru](https://busfor.ru), more than 200000 payments processed
17
+
10
18
  ## Installation
11
19
 
12
20
  Add this line to your application's Gemfile:
@@ -76,11 +84,17 @@ See tests for more usage examples
76
84
 
77
85
  ## Errors
78
86
  In case of any error RubyPayler `raises` RubyPayler::Error.
79
- There are two child types of Errors:
80
- - FailedRequest - for failed network request (FaradayError)
81
- - ResponseWithError - for response with status != 200 and error in body
87
+ There are three child types of Errors:
88
+ - ResponseError - for responses with error in body
89
+ - NetworkError - for failed network request
90
+ - UnexpectedResponseError - for responses with status != 200 but without error in body
91
+
92
+ All RubyPayler errors have methods _code_, _message_ and _to_s_
82
93
 
83
- ResponseWithError objects has methods to access _error_, _code_, _message_ of error returned in resonse.
94
+ Examples of errors `to_s`:
95
+ - ResponseError: `Payler responded with error: Invalid amount of the transaction., code 1`
96
+ - NetworkError: `NetworkError occured while performing request to Payler: #<Faraday::Error: Faraday::Error>`
97
+ - UnexpectedResponseError: `Unexpected response: code - 503, body - `
84
98
 
85
99
  ## Tests
86
100
  *Tests make real calls to Payler.com web API.*
@@ -89,7 +103,19 @@ Cool, because it really test workflows of interaction with payler equiring via r
89
103
 
90
104
  Payment step in tests is automated with Capybara and PhantomJS (cool as well).
91
105
 
92
- You can switch to make Payment step by hand via config file (use_capybara: false).
106
+ You can also switch to make Payment step by hand via ENV variable.
107
+
108
+ ```bash
109
+ REFRESH_CAPYBARA=1 rake test # Regenerate VCR-cassettes using capybara to pay
110
+ REFRESH_BY_HAND=1 rake test # Regenerate VCR-cassettes paying by hand
111
+ ```
112
+
113
+ After VCR-cassettes are saved launch `rake test` for fast test run
114
+
115
+ ## Coverage
116
+ **Current test coverage is 100%**
117
+
118
+ To rebuild coverage report use `COVERAGE=1 rake test` command
93
119
 
94
120
  ## Config
95
121
  Make file config.yml by copying config_example.yml
@@ -98,7 +124,10 @@ Fill in your Payler key, password, host
98
124
 
99
125
  Fill test card number, vaild_till, code, name for automated payment by capybara
100
126
 
101
- Change use_capybara to false to make payment by hand
127
+ ## Note on Pay method
128
+ This gem has methods `pay_page_url` instead of `pay` method, mentioned in Payler docs.
129
+
130
+ This is due to a fact that `pay` method does in fact return payment page url, and does not do any paying.
102
131
 
103
132
  ## Development
104
133
  To run automated tests with capybara install PhantomJS (_brew install phantomjs on MacOS_)
@@ -110,10 +139,12 @@ After checking out the repo, run `bin/setup` to install dependencies. Then, run
110
139
  To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
111
140
 
112
141
  ## Contributing
113
-
114
142
  Bug reports and pull requests are welcome on GitHub at https://github.com/busfor/ruby_payler. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
115
143
 
116
144
 
145
+ ## Changelog
146
+ [Changelog](CHANGELOG.md)
147
+
117
148
  ## License
118
149
 
119
150
  The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
data/Rakefile CHANGED
@@ -1,10 +1,10 @@
1
- require "bundler/gem_tasks"
2
- require "rake/testtask"
1
+ require 'bundler/gem_tasks'
2
+ require 'rake/testtask'
3
3
 
4
4
  Rake::TestTask.new(:test) do |t|
5
- t.libs << "test"
6
- t.libs << "lib"
5
+ t.libs << 'test'
6
+ t.libs << 'lib'
7
7
  t.test_files = FileList['test/**/*_test.rb']
8
8
  end
9
9
 
10
- task :default => :test
10
+ task default: :test
data/lib/ruby_payler.rb CHANGED
@@ -1,4 +1,4 @@
1
- require "ruby_payler/version"
2
- require "ruby_payler/payler"
3
- require "ruby_payler/errors"
4
- require "ruby_payler/constants"
1
+ require 'ruby_payler/version'
2
+ require 'ruby_payler/payler'
3
+ require 'ruby_payler/errors'
4
+ require 'ruby_payler/constants'
@@ -0,0 +1,23 @@
1
+ require 'faraday'
2
+ require 'faraday_middleware'
3
+
4
+ module RubyPayler
5
+ # Network connection to Payler
6
+ class Connection
7
+ def initialize(url:, key:, debug: false)
8
+ @driver = Faraday.new(url: url, params: { key: key }) do |f|
9
+ f.request :url_encoded # form-encode POST params
10
+
11
+ f.response :mashify # 3. mashify parsed JSON
12
+ f.response :json # 2. parse JSON
13
+ f.response :logger if debug # 1. log requests to STDOUT
14
+
15
+ f.adapter Faraday.default_adapter # make requests with Net::HTTP
16
+ end
17
+ end
18
+
19
+ def post(endpoint, params)
20
+ @driver.post(endpoint, params)
21
+ end
22
+ end
23
+ end
@@ -1,43 +1,79 @@
1
1
  module RubyPayler
2
+ # Base error class for all RubyPayler errors
3
+ # Every RubyPayler Error Class must have code, message and to_s methods!
2
4
  class Error < RuntimeError
5
+ end
6
+
7
+ # Response.body contains error
8
+ class ResponseError < Error
9
+ attr_reader :response
10
+
11
+ def initialize(response)
12
+ @response = response
13
+ end
14
+
15
+ # Payler error code
3
16
  def code
4
- raise NotImplementedError
17
+ response_error.code
5
18
  end
6
19
 
20
+ # Payler error description
7
21
  def message
8
- raise NotImplementedError
22
+ response_error.message
23
+ end
24
+
25
+ def to_s
26
+ "Payler responded with error: #{message}, code #{code}"
27
+ end
28
+
29
+ private
30
+
31
+ def response_error
32
+ @response_error ||= response.body.error
9
33
  end
10
34
  end
11
35
 
12
- # Faraday errors
13
- class FailedRequest < Error
36
+ # Unexpected response
37
+ class UnexpectedResponseError < Error
38
+ attr_reader :response
39
+
40
+ def initialize(response)
41
+ @response = response
42
+ end
43
+
14
44
  def code
15
- 'FailedRequest'
45
+ @code ||= response.status
46
+ end
47
+
48
+ def body
49
+ @body ||= response.body
16
50
  end
17
51
 
18
52
  def message
19
- self.to_s
53
+ "Unexpected response: code - #{code}, body - #{body}"
20
54
  end
21
- end
22
55
 
23
- # Response.body contains error
24
- class ResponseWithError < Error
25
- attr_reader :error
56
+ def to_s
57
+ message
58
+ end
59
+ end
26
60
 
27
- def initialize(error)
28
- @error = error
61
+ # Network Error (Faraday exception)
62
+ class NetworkError < Error
63
+ def initialize(faraday_error)
64
+ @faraday_error = faraday_error
29
65
  end
30
66
 
31
67
  def code
32
- error.code
68
+ 'NetworkError'
33
69
  end
34
70
 
35
71
  def message
36
- error.message
72
+ @faraday_error.inspect
37
73
  end
38
74
 
39
75
  def to_s
40
- "#{self.class}-#{code}-#{message}"
76
+ "NetworkError occured while performing request to Payler: #{message}"
41
77
  end
42
78
  end
43
79
  end
@@ -1,122 +1,123 @@
1
- require 'faraday'
2
- require 'faraday_middleware'
1
+ require 'ruby_payler/connection'
3
2
 
4
3
  module RubyPayler
4
+ # Wrapper for payler gate api
5
5
  class Payler
6
- attr_reader :host, :key, :password
6
+ attr_reader :host, :key, :password, :debug, :payler_url
7
7
 
8
8
  def initialize(host:, key:, password:, debug: false)
9
9
  @host = host
10
10
  @key = key
11
11
  @password = password
12
+ @debug = debug
12
13
 
13
- @connection = Faraday.new(
14
- url: "https://#{host}.payler.com",
15
- params: { key: @key },
16
- ) do |f|
17
- f.request :url_encoded # form-encode POST params
18
-
19
- f.params
20
-
21
- f.response :mashify # 3. mashify parsed JSON
22
- f.response :json # 2. parse JSON
23
- f.response :logger if debug # 1. log requests to STDOUT
24
-
25
- f.adapter Faraday.default_adapter # make requests with Net::HTTP
26
- end
14
+ @payler_url = "https://#{host}.payler.com/gapi/"
27
15
  end
28
16
 
29
17
  def start_session(
30
- order_id:,
31
18
  type:,
19
+ order_id:,
32
20
  cents:,
33
- currency:,
34
- lang:,
35
- product: nil,
36
- userdata: nil
21
+ **other_session_params
37
22
  )
38
- params =
39
- call_payler_api('gapi/StartSession', {
40
- key: key,
23
+ call_payler_api('StartSession',
41
24
  type: type,
42
25
  order_id: order_id,
43
- currency: currency,
44
26
  amount: cents,
45
- lang: lang,
46
- product: product,
47
- userdata: userdata,
48
- })
27
+ **other_session_params,
28
+ )
29
+ end
30
+
31
+ def find_session(order_id)
32
+ call_payler_api('FindSession', order_id: order_id)
49
33
  end
50
34
 
51
35
  def pay_page_url(session_id)
52
- "#{connection.url_prefix.to_s}gapi/Pay?key=#{key}&session_id=#{session_id}"
36
+ "#{payler_url}Pay?key=#{key}&session_id=#{session_id}"
53
37
  end
54
38
 
55
39
  def get_status(order_id)
56
- call_payler_api('gapi/GetStatus', {
57
- key: key,
58
- order_id: order_id,
59
- })
40
+ call_payler_api('GetStatus', order_id: order_id)
60
41
  end
61
42
 
62
43
  def get_advanced_status(order_id)
63
- call_payler_api('gapi/GetAdvancedStatus', {
64
- key: key,
65
- order_id: order_id,
66
- })
44
+ call_payler_api('GetAdvancedStatus', order_id: order_id)
67
45
  end
68
46
 
69
47
  def charge(order_id, amount)
70
- call_payler_api('gapi/Charge', {
71
- key: key,
48
+ call_payler_api('Charge',
72
49
  password: password,
73
50
  order_id: order_id,
74
51
  amount: amount,
75
- })
52
+ )
76
53
  end
77
54
 
78
55
  def retrieve(order_id, amount)
79
- call_payler_api('gapi/Retrieve', {
80
- key: key,
56
+ call_payler_api('Retrieve',
81
57
  password: password,
82
58
  order_id: order_id,
83
59
  amount: amount,
84
- })
60
+ )
85
61
  end
86
62
 
87
63
  def refund(order_id, amount)
88
- call_payler_api('gapi/Refund', {
89
- key: key,
64
+ call_payler_api('Refund',
90
65
  password: password,
91
66
  order_id: order_id,
92
67
  amount: amount,
93
- })
68
+ )
94
69
  end
95
70
 
96
- private
71
+ def get_template(recurrent_template_id)
72
+ call_payler_api('GetTemplate',
73
+ recurrent_template_id: recurrent_template_id,
74
+ )
75
+ end
97
76
 
98
- def connection
99
- @connection
77
+ def activate_template(recurrent_template_id, active)
78
+ call_payler_api('ActivateTemplate',
79
+ recurrent_template_id: recurrent_template_id,
80
+ active: active,
81
+ )
100
82
  end
101
83
 
102
- def remove_nils_from_params!(params)
103
- params.delete_if { |k, v| v.nil? }
84
+ def repeat_pay(order_id:, amount:, recurrent_template_id:)
85
+ call_payler_api('RepeatPay',
86
+ order_id: order_id,
87
+ amount: amount,
88
+ recurrent_template_id: recurrent_template_id,
89
+ )
90
+ end
91
+
92
+ private
93
+
94
+ def connection
95
+ @connection ||= Connection.new(url: payler_url, key: key, debug: debug)
104
96
  end
105
97
 
106
98
  def call_payler_api(endpoint, params)
107
99
  remove_nils_from_params!(params)
100
+ params[:key] = key
108
101
 
109
102
  begin
110
103
  response = connection.post(endpoint, params)
111
- rescue Faraday::Error => e
112
- raise FailedRequest, e.message
104
+ rescue Faraday::Error => faraday_error
105
+ raise RubyPayler::NetworkError, faraday_error
113
106
  end
114
107
 
115
- result = response.body
116
- if result.error
117
- raise ResponseWithError, result.error
108
+ response_body = response.body
109
+ if (response_body.class != Hashie::Mash) ||
110
+ (response.status != 200 && !response_body.include?(:error))
111
+ raise RubyPayler::UnexpectedResponseError, response
118
112
  end
119
- result
113
+
114
+ raise RubyPayler::ResponseError, response if response_body.error
115
+
116
+ response_body
117
+ end
118
+
119
+ def remove_nils_from_params!(params)
120
+ params.delete_if { |_key, value| value.nil? }
120
121
  end
121
122
  end # class Payler
122
123
  end # module RubyPayler
@@ -1,3 +1,3 @@
1
1
  module RubyPayler
2
- VERSION = "0.1.9"
2
+ VERSION = '0.2.0'.freeze
3
3
  end
data/ruby_payler.gemspec CHANGED
@@ -3,34 +3,45 @@ lib = File.expand_path('../lib', __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  require 'ruby_payler/version'
5
5
 
6
+ def add_production_dependencies(spec)
7
+ spec.add_dependency 'faraday', '~> 0.9.2'
8
+ spec.add_dependency 'faraday_middleware', '~> 0.10.0'
9
+ spec.add_dependency 'hashie', '~> 3.4', '>= 3.4.4'
10
+ end
11
+
12
+ def add_development_dependencies(spec)
13
+ spec.add_development_dependency 'bundler', '~> 1.12'
14
+ spec.add_development_dependency 'rake', '~> 10.0'
15
+ spec.add_development_dependency 'minitest', '~> 5.0'
16
+ spec.add_development_dependency 'pry-byebug', '~> 3.4'
17
+ spec.add_development_dependency 'guard', '~> 2.14'
18
+ spec.add_development_dependency 'guard-minitest', '~> 2.4', '>= 2.4.5'
19
+ spec.add_development_dependency 'terminal-notifier-guard', '~> 1.6.1'
20
+ spec.add_development_dependency 'capybara', '~> 2.6', '>= 2.6.2'
21
+ spec.add_development_dependency 'poltergeist', '~> 1.10'
22
+ spec.add_development_dependency 'mocha', '>= 1.2.1'
23
+ spec.add_development_dependency 'vcr'
24
+ spec.add_development_dependency 'simplecov'
25
+ end
26
+
6
27
  Gem::Specification.new do |spec|
7
- spec.name = "ruby_payler"
28
+ spec.name = 'ruby_payler'
8
29
  spec.version = RubyPayler::VERSION
9
- spec.authors = ["Alexey Vasilyev"]
10
- spec.email = ["bestspajic@gmail.com"]
30
+ spec.authors = ['Alexey Vasilyev']
31
+ spec.email = ['bestspajic@gmail.com']
11
32
 
12
- spec.summary = %q{Ruby wrapper for Payler Gate API.}
13
- spec.description = %q{Ruby wrapper for Payler.com Gate API.}
14
- spec.homepage = "https://github.com/busfor/ruby_payler"
15
- spec.license = "MIT"
33
+ spec.summary = 'Ruby wrapper for Payler Gate API.'
34
+ spec.description = 'Ruby wrapper for Payler.com Gate API.'
35
+ spec.homepage = 'https://github.com/busfor/ruby_payler'
36
+ spec.license = 'MIT'
16
37
 
17
- spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
- spec.bindir = "exe"
38
+ spec.files = `git ls-files -z`.split("\x0").reject do |f|
39
+ f.match(%r{^(test|spec|features)/})
40
+ end
41
+ spec.bindir = 'exe'
19
42
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
- spec.require_paths = ["lib"]
21
-
22
- spec.add_dependency "faraday", "~> 0.9.2"
23
- spec.add_dependency "faraday_middleware", "~> 0.10.0"
24
- spec.add_dependency "hashie", "~> 3.4", ">= 3.4.4"
43
+ spec.require_paths = ['lib']
25
44
 
26
- spec.add_development_dependency "bundler", "~> 1.12"
27
- spec.add_development_dependency "rake", "~> 10.0"
28
- spec.add_development_dependency "minitest", "~> 5.0"
29
- spec.add_development_dependency "pry-byebug", "~> 3.4"
30
- spec.add_development_dependency "guard", "~> 2.14"
31
- spec.add_development_dependency "guard-minitest", "~> 2.4", ">= 2.4.5"
32
- spec.add_development_dependency "terminal-notifier-guard", "~> 1.6.1"
33
- spec.add_development_dependency "capybara", "~> 2.6", ">= 2.6.2"
34
- spec.add_development_dependency "poltergeist", "~> 1.10"
35
- spec.add_development_dependency "mocha", ">= 1.2.1"
45
+ add_production_dependencies(spec)
46
+ add_development_dependencies(spec)
36
47
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_payler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.9
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexey Vasilyev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-10-27 00:00:00.000000000 Z
11
+ date: 2017-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -210,6 +210,34 @@ dependencies:
210
210
  - - ">="
211
211
  - !ruby/object:Gem::Version
212
212
  version: 1.2.1
213
+ - !ruby/object:Gem::Dependency
214
+ name: vcr
215
+ requirement: !ruby/object:Gem::Requirement
216
+ requirements:
217
+ - - ">="
218
+ - !ruby/object:Gem::Version
219
+ version: '0'
220
+ type: :development
221
+ prerelease: false
222
+ version_requirements: !ruby/object:Gem::Requirement
223
+ requirements:
224
+ - - ">="
225
+ - !ruby/object:Gem::Version
226
+ version: '0'
227
+ - !ruby/object:Gem::Dependency
228
+ name: simplecov
229
+ requirement: !ruby/object:Gem::Requirement
230
+ requirements:
231
+ - - ">="
232
+ - !ruby/object:Gem::Version
233
+ version: '0'
234
+ type: :development
235
+ prerelease: false
236
+ version_requirements: !ruby/object:Gem::Requirement
237
+ requirements:
238
+ - - ">="
239
+ - !ruby/object:Gem::Version
240
+ version: '0'
213
241
  description: Ruby wrapper for Payler.com Gate API.
214
242
  email:
215
243
  - bestspajic@gmail.com
@@ -218,7 +246,9 @@ extensions: []
218
246
  extra_rdoc_files: []
219
247
  files:
220
248
  - ".gitignore"
249
+ - ".rubocop.yml"
221
250
  - ".travis.yml"
251
+ - CHANGELOG.md
222
252
  - CODE_OF_CONDUCT.md
223
253
  - Gemfile
224
254
  - Guardfile
@@ -228,6 +258,7 @@ files:
228
258
  - bin/console
229
259
  - bin/setup
230
260
  - lib/ruby_payler.rb
261
+ - lib/ruby_payler/connection.rb
231
262
  - lib/ruby_payler/constants.rb
232
263
  - lib/ruby_payler/errors.rb
233
264
  - lib/ruby_payler/payler.rb
@@ -253,7 +284,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
253
284
  version: '0'
254
285
  requirements: []
255
286
  rubyforge_project:
256
- rubygems_version: 2.5.1
287
+ rubygems_version: 2.5.2
257
288
  signing_key:
258
289
  specification_version: 4
259
290
  summary: Ruby wrapper for Payler Gate API.