finapps_core 5.0.14 → 6.0.1

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
  SHA256:
3
- metadata.gz: 4a0b9d68f085e0831b039da71cd442e4c96d58f8e6cd9787c4b8ec4eef9edf8d
4
- data.tar.gz: aacb0dc131db339c2360f38fa8918360bdcc2f5ada120e97b21cdd1c15a2daf4
3
+ metadata.gz: d18e32588446fcca7dbf1e07e819e278d3d2abb4bf75207eba374b5c60c5f14c
4
+ data.tar.gz: 0f7f59132bdf40f76b80925390bacb4067be4a3604d45a0defdbd3f3dbe5b298
5
5
  SHA512:
6
- metadata.gz: 1487eb6356e82eccf6b8584b0a7074fb8af3ef893b74bbda50b1e4087fdb35132e84c8eb44801f376f504b44e6d80e7fcb1a45cdf4a8520c49ad08c148659d2d
7
- data.tar.gz: 61838248219a84def621b1136da25ac25a93404a35cd67d8e2435e3ec16d84873862e52453293fa22f3c8cb73382e2ee5a259057c7b295207e0edaec31e1c724
6
+ metadata.gz: 3278d2d0ca52fcf1042923b9fe641b112b2c7956062e81527c84b5e24d3805df7479b233ded5c2e5c2fa96a7c2457107ee52afdf1c783f3a307c7b0626ad5cef
7
+ data.tar.gz: d845efa3086595a6b5c024a91a6755d92fe24fa3e85e79cc530074d4469b861c2e54c133289a19762b2c126145d2e01f9891da4617b99d98490c60af6380171e
@@ -0,0 +1,7 @@
1
+ version: 2
2
+ updates:
3
+ # Maintain dependencies for GitHub Actions
4
+ - package-ecosystem: "github-actions"
5
+ directory: "/"
6
+ schedule:
7
+ interval: "daily"
@@ -0,0 +1,41 @@
1
+ name: Continuous Integration
2
+
3
+ on:
4
+ push:
5
+ paths-ignore:
6
+ - ".github/**"
7
+ - ".VERSION"
8
+ pull_request:
9
+ paths-ignore:
10
+ - ".github/**"
11
+ - ".VERSION"
12
+ jobs:
13
+ test:
14
+ if: "!contains(github.event.head_commit.message, 'skip ci')"
15
+ strategy:
16
+ fail-fast: false
17
+ matrix:
18
+ os: [ubuntu-latest]
19
+ ruby: [2.6, 2.7, '3.0']
20
+ runs-on: ${{ matrix.os }}
21
+ steps:
22
+ - name: Checkout source code
23
+ uses: actions/checkout@v2.3.4
24
+
25
+ - name: Install required ruby version
26
+ uses: ruby/setup-ruby@v1
27
+ with:
28
+ bundler-cache: true # runs 'bundle install' and caches gems
29
+
30
+ - name: Run rspec with coverage
31
+ run: |
32
+ COVERAGE=true bundle exec rspec
33
+
34
+ - name: Run rubocop
35
+ run: |
36
+ bundle exec rubocop --parallel
37
+
38
+ - name: Run Skunk on Project
39
+ run: |
40
+ gem install skunk
41
+ skunk lib/
@@ -11,7 +11,7 @@ jobs:
11
11
 
12
12
  steps:
13
13
  - name: Checkout source code
14
- uses: actions/checkout@v2
14
+ uses: actions/checkout@v2.3.4
15
15
  with:
16
16
  persist-credentials: false
17
17
  fetch-depth: 0 # otherwise, you will fail to push refs to dest repo
@@ -7,8 +7,17 @@ jobs:
7
7
  label:
8
8
  runs-on: ubuntu-latest
9
9
  steps:
10
- - uses: mheap/github-action-required-labels@v1
10
+ - uses: mheap/github-action-required-labels@v1.1.2
11
11
  with:
12
- mode: exactly
12
+ mode: minimum
13
13
  count: 1
14
- labels: "bug, change, enhancement"
14
+ #
15
+ # Releases will group changes under Added/Fixed/Changed sub-headers
16
+ # based on labels and follwing these rules:
17
+ #
18
+ # Added: enhancement
19
+ # Fixed: bug
20
+ # Changed: maintenance, change, dependencies (used by Dependabot)
21
+ # Ignore: skip-changelog
22
+ #
23
+ labels: "enhancement, bug, maintenance, change, dependencies, skip-changelog"
data/README.md CHANGED
@@ -3,9 +3,6 @@ FinApps Ruby-Client-Core
3
3
  ========================
4
4
 
5
5
  [![Gem Version](https://img.shields.io/gem/v/finapps_core.svg)](https://rubygems.org/gems/finapps_core)
6
- [![Build Status](https://travis-ci.org/finapps/ruby-client-core.svg?branch=master)](https://travis-ci.org/finapps/ruby-client-core)
7
- [![Code Climate](https://codeclimate.com/github/finapps/ruby-client-core/badges/gpa.svg)](https://codeclimate.com/github/finapps/ruby-client-core)
8
- [![Test Coverage](https://codeclimate.com/github/finapps/ruby-client-core/badges/coverage.svg)](https://codeclimate.com/github/finapps/ruby-client-core/coverage)
9
6
  [![License](http://img.shields.io/:license-mit-blue.svg?style=flat-square)](http://finapps.mit-license.org)
10
7
 
11
8
  Common library for Ruby clients.
@@ -18,4 +15,4 @@ See Financial Apps API [Ruby Client][ruby-client].
18
15
  [FinancialApps.com][financialapps]
19
16
 
20
17
  [ruby-client]: https://github.com/finapps/ruby-client
21
- [financialapps]: https://financialapps.com
18
+ [financialapps]: https://financialapps.com
data/finapps_core.gemspec CHANGED
@@ -20,19 +20,20 @@ Gem::Specification.new do |spec|
20
20
  spec.test_files = Dir['spec/**/*.rb']
21
21
  spec.require_paths = ['lib']
22
22
 
23
- spec.add_runtime_dependency 'faraday', '~> 1.0', '>= 1.0.1'
24
- spec.add_runtime_dependency 'faraday_middleware', '~> 1.0', '>= 1.0'
23
+ spec.add_runtime_dependency 'faraday', '~> 1.4', '>= 1.4.0'
24
+ spec.add_runtime_dependency 'faraday_middleware', '~> 1.0', '>= 1.0.0'
25
25
 
26
- spec.add_development_dependency 'bundler', '~> 2.0', '>= 2.0.2'
27
- spec.add_development_dependency 'codeclimate-test-reporter', '~> 1.0', '>= 1.0.9'
26
+ spec.add_development_dependency 'bundler', '~> 2.2', '>= 2.2.16'
28
27
  spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.1'
29
28
  spec.add_development_dependency 'rspec', '~> 3.10', '>= 3.10.0'
30
- spec.add_development_dependency 'rubocop', '~> 1.8', '>= 1.8.1'
29
+ spec.add_development_dependency 'rubocop', '~> 1.9', '>= 1.9.1'
31
30
  spec.add_development_dependency 'rubocop-performance', '~> 1.9', '>= 1.9.2'
32
31
  spec.add_development_dependency 'rubocop-rake', '~> 0.5', '>= 0.5.1'
33
- spec.add_development_dependency 'rubocop-rspec', '~> 2.1', '>= 2.1.0'
34
- spec.add_development_dependency 'sinatra', '~> 2.0', '>= 2.0.5'
35
- spec.add_development_dependency 'webmock', '~> 3.6', '>= 3.6.0'
32
+ spec.add_development_dependency 'rubocop-rspec', '~> 2.2', '>= 2.2.0'
33
+ spec.add_development_dependency 'simplecov', '~> 0.21', '>= 0.21.2'
34
+ spec.add_development_dependency 'simplecov-console', '~> 0.9'
35
+ spec.add_development_dependency 'sinatra', '~> 2.1', '>= 2.1.0'
36
+ spec.add_development_dependency 'webmock', '~> 3.12', '>= 3.12.2'
36
37
 
37
38
  spec.extra_rdoc_files = %w(README.md LICENSE)
38
39
  spec.rdoc_options = %w(--line-numbers --inline-source --title finapps-ruby-core --main README.md)
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'faraday/logging/formatter'
4
+
5
+ module FinAppsCore
6
+ module Logging
7
+ class ContenTypeFormatter < Faraday::Logging::Formatter
8
+ CONTENT_TYPE = 'Content-Type' unless defined?(ContenTypeFormatter::CONTENT_TYPE)
9
+
10
+ def response(env)
11
+ status = proc { "Status #{env.status}" }
12
+ public_send(log_level, 'response', &status)
13
+
14
+ log_headers('response', env.response_headers) if log_headers?(:response)
15
+ log_body('response', env[:body]) if env[:body] && log_body?(:response) && loggable?(env)
16
+ end
17
+
18
+ private
19
+
20
+ def loggable?(env)
21
+ loggable_types = ['application/json', 'text/plain']
22
+ process_response_type?(env, loggable_types)
23
+ end
24
+
25
+ def process_response_type?(env, content_types)
26
+ type = response_type(env)
27
+ content_types.empty? || content_types.any? do |pattern|
28
+ pattern.is_a?(Regexp) ? type.match?(pattern) : type == pattern
29
+ end
30
+ end
31
+
32
+ def response_type(env)
33
+ type = env[:response_headers][CONTENT_TYPE].to_s
34
+ type = type.split(';', 2).first if type.index(';')
35
+ type
36
+ end
37
+ end
38
+ end
39
+ end
@@ -27,7 +27,7 @@ module FinAppsCore
27
27
  def assign_attributes(new_attributes)
28
28
  unless new_attributes.respond_to?(:each_pair)
29
29
  fail ArgumentError, 'When assigning attributes, '\
30
- "you must pass a hash argument, #{new_attributes.class} passed."
30
+ "you must pass a hash argument, #{new_attributes.class} passed."
31
31
  end
32
32
  return if new_attributes.empty?
33
33
 
@@ -19,7 +19,10 @@ module FinAppsCore
19
19
  end
20
20
 
21
21
  def init_connection_response(conn, logger)
22
- conn.response :logger, logger, bodies: true
22
+ conn.response :logger, logger, bodies: true,
23
+ headers: true,
24
+ formatter: FinAppsCore::Logging::ContenTypeFormatter,
25
+ log_level: :debug
23
26
  conn.response :json,
24
27
  content_type: /\bjson$/,
25
28
  parser_options: {symbolize_names: true}
@@ -5,11 +5,11 @@ require 'logger'
5
5
  module FinAppsCore
6
6
  module REST
7
7
  module Defaults
8
- API_VERSION = '4'
8
+ API_VERSION = '5'
9
9
 
10
10
  # noinspection SpellCheckingInspection
11
11
  DEFAULTS = {
12
- host: 'https://api.finclear.io',
12
+ host: 'https://api.allcleardecisioning.com',
13
13
  timeout: 30,
14
14
  proxy: nil,
15
15
  log_level: Logger::UNKNOWN
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module FinAppsCore
4
- VERSION = '5.0.14'
4
+ VERSION = '6.0.1'
5
5
  end
data/lib/finapps_core.rb CHANGED
@@ -12,6 +12,8 @@ require 'finapps_core/utils/loggeable'
12
12
  require 'finapps_core/utils/validatable'
13
13
  require 'finapps_core/error'
14
14
 
15
+ require 'finapps_core/logging/content_type_formatter'
16
+
15
17
  require 'finapps_core/middleware/request/tenant_authentication'
16
18
  require 'finapps_core/middleware/request/no_encoding_basic_authentication'
17
19
  require 'finapps_core/middleware/request/accept_json'
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'stringio'
4
+ require 'logger'
5
+
6
+ RSpec.describe Faraday::Response::Logger do
7
+ let(:string_io) { StringIO.new }
8
+ let(:logger) { Logger.new(string_io) }
9
+ let(:conn) do
10
+ rubbles = %w(Barney Betty)
11
+ logger_options = {
12
+ bodies: true,
13
+ formatter: FinAppsCore::Logging::ContenTypeFormatter
14
+ }
15
+
16
+ Faraday.new do |b|
17
+ b.response :logger, logger, logger_options
18
+ b.adapter :test do |stubs|
19
+ stubs.get('/text') { [200, {'Content-Type' => 'text/plain'}, 'hello'] }
20
+ stubs.get('/json') { [200, {'Content-Type' => 'application/json'}, rubbles] }
21
+ stubs.get('/pdf') { [200, {'Content-Type' => 'application/pdf'}, 'binary-here'] }
22
+ end
23
+ end
24
+ end
25
+
26
+ before do
27
+ logger.level = Logger::DEBUG
28
+ end
29
+
30
+ context 'when content type is text/plain' do
31
+ before { conn.get '/text' }
32
+
33
+ it 'logs response body' do
34
+ expect(string_io.string).to match('hello')
35
+ end
36
+ end
37
+
38
+ context 'when content type is application/json' do
39
+ before { conn.get '/json' }
40
+
41
+ it 'logs response body' do
42
+ expect(string_io.string).to match('[\"Barney\", \"Betty\"]')
43
+ end
44
+ end
45
+
46
+ context 'when content type is something else' do
47
+ before { conn.get '/pdf' }
48
+
49
+ it 'does not log response body' do
50
+ expect(string_io.string).not_to match('binary-here')
51
+ end
52
+ end
53
+ end
@@ -6,12 +6,25 @@ RSpec.describe FinAppsCore::REST::Defaults do
6
6
  describe 'set constants' do
7
7
  before { stub_const(described_class.to_s, fake_class) }
8
8
 
9
- it('sets API_VERSION') { expect(described_class::API_VERSION).to eq '4' }
9
+ it('sets API_VERSION') { expect(described_class::API_VERSION).to eq '5' }
10
10
  it('sets DEFAULTS') { expect(described_class::DEFAULTS).to be_a(Hash) }
11
11
  it('freezes DEFAULTS') { expect(described_class::DEFAULTS).to be_frozen }
12
- it('sets DEFAULTS[:host]') { expect(described_class::DEFAULTS[:host]).to eq 'https://api.finclear.io' }
13
- it('sets DEFAULTS[:timeout]') { expect(described_class::DEFAULTS[:timeout]).to eq 30 }
14
- it('does not set DEFAULTS[:proxy]') { expect(described_class::DEFAULTS[:proxy]).to be_nil }
15
- it('sets DEFAULTS[:log_level]') { expect(described_class::DEFAULTS[:log_level]).to eq Logger::UNKNOWN }
12
+
13
+ it('sets DEFAULTS[:host]') {
14
+ expected = 'https://api.allcleardecisioning.com'
15
+ expect(described_class::DEFAULTS[:host]).to eq expected
16
+ }
17
+
18
+ it('sets DEFAULTS[:timeout]') {
19
+ expect(described_class::DEFAULTS[:timeout]).to eq 30
20
+ }
21
+
22
+ it('does not set DEFAULTS[:proxy]') {
23
+ expect(described_class::DEFAULTS[:proxy]).to be_nil
24
+ }
25
+
26
+ it('sets DEFAULTS[:log_level]') {
27
+ expect(described_class::DEFAULTS[:log_level]).to eq Logger::UNKNOWN
28
+ }
16
29
  end
17
30
  end
data/spec/spec_helper.rb CHANGED
@@ -1,10 +1,19 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- if ENV['CODECLIMATE_REPO_TOKEN']
4
- # require 'codeclimate-test-reporter'
5
- # CodeClimate::TestReporter.start
3
+ if ENV['COVERAGE'] == 'true'
6
4
  require 'simplecov'
7
- SimpleCov.start
5
+ require 'simplecov-console'
6
+
7
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
8
+ SimpleCov::Formatter::HTMLFormatter,
9
+ SimpleCov::Formatter::Console,
10
+ ]
11
+
12
+ SimpleCov.start do
13
+ track_files 'lib/**/*.rb'
14
+ end
15
+
16
+ puts "Using SimpleCov v#{SimpleCov::VERSION}"
8
17
  end
9
18
 
10
19
  require 'bundler/setup'
@@ -33,7 +42,6 @@ RSpec.configure do |config|
33
42
  base_url = "#{FinAppsCore::REST::Defaults::DEFAULTS[:host]}/v#{FinAppsCore::REST::Defaults::API_VERSION}/"
34
43
  stub_request(:any, /#{base_url}/).to_rack(::FakeApi)
35
44
  end
36
- WebMock.disable_net_connect!(allow: 'codeclimate.com')
37
45
  end
38
46
 
39
47
  VALID_CREDENTIALS = {identifier: '49fb918d-7e71-44dd-7378-58f19606df2a',
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: finapps_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.14
4
+ version: 6.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erich Quintero
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-21 00:00:00.000000000 Z
11
+ date: 2021-08-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -16,20 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.0'
19
+ version: '1.4'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 1.0.1
22
+ version: 1.4.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '1.0'
29
+ version: '1.4'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 1.0.1
32
+ version: 1.4.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: faraday_middleware
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -39,7 +39,7 @@ dependencies:
39
39
  version: '1.0'
40
40
  - - ">="
41
41
  - !ruby/object:Gem::Version
42
- version: '1.0'
42
+ version: 1.0.0
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
@@ -49,47 +49,27 @@ dependencies:
49
49
  version: '1.0'
50
50
  - - ">="
51
51
  - !ruby/object:Gem::Version
52
- version: '1.0'
52
+ version: 1.0.0
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: bundler
55
55
  requirement: !ruby/object:Gem::Requirement
56
56
  requirements:
57
57
  - - "~>"
58
58
  - !ruby/object:Gem::Version
59
- version: '2.0'
59
+ version: '2.2'
60
60
  - - ">="
61
61
  - !ruby/object:Gem::Version
62
- version: 2.0.2
62
+ version: 2.2.16
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - "~>"
68
68
  - !ruby/object:Gem::Version
69
- version: '2.0'
70
- - - ">="
71
- - !ruby/object:Gem::Version
72
- version: 2.0.2
73
- - !ruby/object:Gem::Dependency
74
- name: codeclimate-test-reporter
75
- requirement: !ruby/object:Gem::Requirement
76
- requirements:
77
- - - "~>"
78
- - !ruby/object:Gem::Version
79
- version: '1.0'
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: 1.0.9
83
- type: :development
84
- prerelease: false
85
- version_requirements: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '1.0'
69
+ version: '2.2'
90
70
  - - ">="
91
71
  - !ruby/object:Gem::Version
92
- version: 1.0.9
72
+ version: 2.2.16
93
73
  - !ruby/object:Gem::Dependency
94
74
  name: rake
95
75
  requirement: !ruby/object:Gem::Requirement
@@ -136,20 +116,20 @@ dependencies:
136
116
  requirements:
137
117
  - - "~>"
138
118
  - !ruby/object:Gem::Version
139
- version: '1.8'
119
+ version: '1.9'
140
120
  - - ">="
141
121
  - !ruby/object:Gem::Version
142
- version: 1.8.1
122
+ version: 1.9.1
143
123
  type: :development
144
124
  prerelease: false
145
125
  version_requirements: !ruby/object:Gem::Requirement
146
126
  requirements:
147
127
  - - "~>"
148
128
  - !ruby/object:Gem::Version
149
- version: '1.8'
129
+ version: '1.9'
150
130
  - - ">="
151
131
  - !ruby/object:Gem::Version
152
- version: 1.8.1
132
+ version: 1.9.1
153
133
  - !ruby/object:Gem::Dependency
154
134
  name: rubocop-performance
155
135
  requirement: !ruby/object:Gem::Requirement
@@ -196,60 +176,94 @@ dependencies:
196
176
  requirements:
197
177
  - - "~>"
198
178
  - !ruby/object:Gem::Version
199
- version: '2.1'
179
+ version: '2.2'
200
180
  - - ">="
201
181
  - !ruby/object:Gem::Version
202
- version: 2.1.0
182
+ version: 2.2.0
203
183
  type: :development
204
184
  prerelease: false
205
185
  version_requirements: !ruby/object:Gem::Requirement
206
186
  requirements:
207
187
  - - "~>"
208
188
  - !ruby/object:Gem::Version
209
- version: '2.1'
189
+ version: '2.2'
210
190
  - - ">="
211
191
  - !ruby/object:Gem::Version
212
- version: 2.1.0
192
+ version: 2.2.0
193
+ - !ruby/object:Gem::Dependency
194
+ name: simplecov
195
+ requirement: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - - "~>"
198
+ - !ruby/object:Gem::Version
199
+ version: '0.21'
200
+ - - ">="
201
+ - !ruby/object:Gem::Version
202
+ version: 0.21.2
203
+ type: :development
204
+ prerelease: false
205
+ version_requirements: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - "~>"
208
+ - !ruby/object:Gem::Version
209
+ version: '0.21'
210
+ - - ">="
211
+ - !ruby/object:Gem::Version
212
+ version: 0.21.2
213
+ - !ruby/object:Gem::Dependency
214
+ name: simplecov-console
215
+ requirement: !ruby/object:Gem::Requirement
216
+ requirements:
217
+ - - "~>"
218
+ - !ruby/object:Gem::Version
219
+ version: '0.9'
220
+ type: :development
221
+ prerelease: false
222
+ version_requirements: !ruby/object:Gem::Requirement
223
+ requirements:
224
+ - - "~>"
225
+ - !ruby/object:Gem::Version
226
+ version: '0.9'
213
227
  - !ruby/object:Gem::Dependency
214
228
  name: sinatra
215
229
  requirement: !ruby/object:Gem::Requirement
216
230
  requirements:
217
231
  - - "~>"
218
232
  - !ruby/object:Gem::Version
219
- version: '2.0'
233
+ version: '2.1'
220
234
  - - ">="
221
235
  - !ruby/object:Gem::Version
222
- version: 2.0.5
236
+ version: 2.1.0
223
237
  type: :development
224
238
  prerelease: false
225
239
  version_requirements: !ruby/object:Gem::Requirement
226
240
  requirements:
227
241
  - - "~>"
228
242
  - !ruby/object:Gem::Version
229
- version: '2.0'
243
+ version: '2.1'
230
244
  - - ">="
231
245
  - !ruby/object:Gem::Version
232
- version: 2.0.5
246
+ version: 2.1.0
233
247
  - !ruby/object:Gem::Dependency
234
248
  name: webmock
235
249
  requirement: !ruby/object:Gem::Requirement
236
250
  requirements:
237
251
  - - "~>"
238
252
  - !ruby/object:Gem::Version
239
- version: '3.6'
253
+ version: '3.12'
240
254
  - - ">="
241
255
  - !ruby/object:Gem::Version
242
- version: 3.6.0
256
+ version: 3.12.2
243
257
  type: :development
244
258
  prerelease: false
245
259
  version_requirements: !ruby/object:Gem::Requirement
246
260
  requirements:
247
261
  - - "~>"
248
262
  - !ruby/object:Gem::Version
249
- version: '3.6'
263
+ version: '3.12'
250
264
  - - ">="
251
265
  - !ruby/object:Gem::Version
252
- version: 3.6.0
266
+ version: 3.12.2
253
267
  description: A simple library for communicating with the FinApps REST API. Core functionality.
254
268
  email:
255
269
  - erich@financialapps.com
@@ -260,8 +274,9 @@ extra_rdoc_files:
260
274
  - LICENSE
261
275
  files:
262
276
  - ".codeclimate.yml"
277
+ - ".github/dependabot.yml"
263
278
  - ".github/release-drafter.yml"
264
- - ".github/workflows/main.yaml"
279
+ - ".github/workflows/ci.yaml"
265
280
  - ".github/workflows/release-drafter.yml"
266
281
  - ".github/workflows/release.yml"
267
282
  - ".github/workflows/verify-pr-labeled.yml"
@@ -284,6 +299,7 @@ files:
284
299
  - lib/core_extensions/string/json_to_hash.rb
285
300
  - lib/finapps_core.rb
286
301
  - lib/finapps_core/error.rb
302
+ - lib/finapps_core/logging/content_type_formatter.rb
287
303
  - lib/finapps_core/middleware/middleware.rb
288
304
  - lib/finapps_core/middleware/request/accept_json.rb
289
305
  - lib/finapps_core/middleware/request/no_encoding_basic_authentication.rb
@@ -304,6 +320,7 @@ files:
304
320
  - lib/finapps_core/version.rb
305
321
  - lib/tasks/releaser.rake
306
322
  - spec/core_extensions/object/is_integer_spec.rb
323
+ - spec/logging/conten_type_formatter_spec.rb
307
324
  - spec/middleware/request/accept_json_spec.rb
308
325
  - spec/middleware/request/no_encoding_basic_authentication_spec.rb
309
326
  - spec/middleware/request/request_id_spec.rb
@@ -357,21 +374,22 @@ signing_key:
357
374
  specification_version: 4
358
375
  summary: FinApps REST API ruby client - Core.
359
376
  test_files:
377
+ - spec/rest/base_client_spec.rb
378
+ - spec/rest/defaults_spec.rb
379
+ - spec/rest/configuration_spec.rb
380
+ - spec/rest/resources_spec.rb
381
+ - spec/rest/credentials_spec.rb
360
382
  - spec/spec_helpers/client.rb
361
- - spec/spec_helper.rb
362
- - spec/core_extensions/object/is_integer_spec.rb
363
- - spec/utils/validatable_spec.rb
364
- - spec/support/fake_api.rb
365
- - spec/middleware/request/no_encoding_basic_authentication_spec.rb
383
+ - spec/middleware/request/user_agent_spec.rb
384
+ - spec/middleware/request/request_id_spec.rb
385
+ - spec/middleware/request/x_consumer_id_spec.rb
366
386
  - spec/middleware/request/x_tenant_id_spec.rb
367
387
  - spec/middleware/request/tenant_authentication_spec.rb
368
388
  - spec/middleware/request/accept_json_spec.rb
369
- - spec/middleware/request/user_agent_spec.rb
370
- - spec/middleware/request/x_consumer_id_spec.rb
371
- - spec/middleware/request/request_id_spec.rb
389
+ - spec/middleware/request/no_encoding_basic_authentication_spec.rb
372
390
  - spec/middleware/response/raise_error_spec.rb
373
- - spec/rest/credentials_spec.rb
374
- - spec/rest/defaults_spec.rb
375
- - spec/rest/configuration_spec.rb
376
- - spec/rest/resources_spec.rb
377
- - spec/rest/base_client_spec.rb
391
+ - spec/support/fake_api.rb
392
+ - spec/core_extensions/object/is_integer_spec.rb
393
+ - spec/logging/conten_type_formatter_spec.rb
394
+ - spec/spec_helper.rb
395
+ - spec/utils/validatable_spec.rb
@@ -1,37 +0,0 @@
1
- name: Continuous Integration
2
-
3
- on: [push, pull_request]
4
-
5
- jobs:
6
- ci:
7
- if: "!contains(github.event.head_commit.message, 'skip ci')"
8
- runs-on: ubuntu-latest
9
-
10
- strategy:
11
- fail-fast: true
12
-
13
- steps:
14
- - name: Checkout source code
15
- uses: actions/checkout@v2
16
-
17
- - name: Install required ruby version
18
- uses: ruby/setup-ruby@v1
19
-
20
- - uses: actions/cache@v2
21
- with:
22
- path: vendor/bundle
23
- key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
24
- restore-keys: |
25
- ${{ runner.os }}-gems-
26
-
27
- - name: Install gems
28
- run: |
29
- gem install -N bundler
30
- bundle config path vendor/bundle
31
- bundle install --jobs 4 --retry 3
32
-
33
- - name: Run rubocop
34
- run: bundle exec rubocop
35
-
36
- - name: Run tests
37
- run: bundle exec rspec