finapps_core 5.0.4 → 5.0.9
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/.codeclimate.yml +9 -8
- data/.rubocop.yml +131 -74
- data/.tmuxinator.yml +20 -0
- data/.travis.yml +5 -6
- data/RELEASES.md +8 -0
- data/finapps_core.gemspec +7 -7
- data/lib/finapps_core.rb +1 -0
- data/lib/finapps_core/middleware/middleware.rb +7 -3
- data/lib/finapps_core/middleware/request/accept_json.rb +2 -1
- data/lib/finapps_core/middleware/request/user_agent.rb +1 -1
- data/lib/finapps_core/middleware/request/x_consumer_id.rb +20 -0
- data/lib/finapps_core/middleware/response/raise_error.rb +36 -7
- data/lib/finapps_core/rest/base_client.rb +19 -31
- data/lib/finapps_core/rest/configuration.rb +17 -4
- data/lib/finapps_core/rest/connection.rb +31 -21
- data/lib/finapps_core/rest/defaults.rb +1 -1
- data/lib/finapps_core/utils/validatable.rb +1 -1
- data/lib/finapps_core/version.rb +1 -1
- data/spec/core_extensions/object/is_integer_spec.rb +6 -7
- data/spec/middleware/request/accept_json_spec.rb +7 -3
- data/spec/middleware/request/no_encoding_basic_authentication_spec.rb +15 -6
- data/spec/middleware/request/request_id_spec.rb +4 -4
- data/spec/middleware/request/tenant_authentication_spec.rb +21 -14
- data/spec/middleware/request/user_agent_spec.rb +8 -3
- data/spec/middleware/request/x_consumer_id_spec.rb +16 -0
- data/spec/middleware/response/raise_error_spec.rb +47 -15
- data/spec/rest/base_client_spec.rb +87 -43
- data/spec/rest/configuration_spec.rb +25 -18
- data/spec/rest/credentials_spec.rb +4 -4
- data/spec/rest/defaults_spec.rb +1 -1
- data/spec/rest/resources_spec.rb +10 -20
- data/spec/spec_helper.rb +3 -3
- data/spec/utils/validatable_spec.rb +9 -8
- metadata +61 -56
@@ -1,96 +1,140 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
RSpec.describe FinAppsCore::REST::BaseClient do
|
4
|
-
|
5
|
-
subject { FinAppsCore::REST::BaseClient.new(valid_tenant_options) }
|
4
|
+
subject(:base_client) { described_class.new(valid_tenant_options) }
|
6
5
|
|
7
|
-
|
8
|
-
|
9
|
-
|
6
|
+
let(:valid_tenant_options) { {tenant_token: VALID_CREDENTIALS[:token]} }
|
7
|
+
|
8
|
+
before do
|
9
|
+
stub_const 'RESPONSE', 0
|
10
|
+
stub_const 'ERROR_MESSAGES', 1
|
11
|
+
end
|
10
12
|
|
11
13
|
describe '#new' do
|
12
14
|
it 'assigns @config' do
|
13
|
-
expect(
|
15
|
+
expect(base_client.config).to be_a(FinAppsCore::REST::Configuration)
|
14
16
|
end
|
15
17
|
end
|
16
18
|
|
17
19
|
describe '#connection' do
|
18
20
|
it 'created a Faraday connection object' do
|
19
|
-
expect(
|
21
|
+
expect(base_client.connection).to be_a(Faraday::Connection)
|
20
22
|
end
|
21
23
|
|
22
24
|
it 'memoizes the results' do
|
23
|
-
first =
|
24
|
-
second =
|
25
|
+
first = base_client.connection
|
26
|
+
second = base_client.connection
|
25
27
|
expect(first.object_id).to eq(second.object_id)
|
26
28
|
end
|
27
29
|
end
|
28
30
|
|
29
31
|
describe '#send_request' do
|
30
|
-
it '
|
31
|
-
expect {
|
32
|
-
|
32
|
+
it 'raises FinAppsCore::InvalidArgumentsError if method is NOT supported' do
|
33
|
+
expect { base_client.send_request('fake_path', :option) }
|
34
|
+
.to(raise_error NoMethodError)
|
33
35
|
end
|
34
36
|
|
35
|
-
it '
|
36
|
-
expect {
|
37
|
-
|
37
|
+
it 'raises FinAppsCore::MissingArgumentsError if method is NOT provided' do
|
38
|
+
expect { base_client.send_request(nil, :get) }
|
39
|
+
.to(raise_error(FinAppsCore::MissingArgumentsError, ': path'))
|
38
40
|
end
|
39
41
|
|
40
|
-
it '
|
41
|
-
expect {
|
42
|
-
|
42
|
+
it 'raises FinAppsCore::MissingArgumentsError if path is NOT provided' do
|
43
|
+
expect { base_client.send_request('fake_path', nil) }
|
44
|
+
.to raise_error(FinAppsCore::MissingArgumentsError, ': method')
|
43
45
|
end
|
44
46
|
|
45
47
|
context 'when method and path are provided' do
|
46
|
-
subject
|
47
|
-
|
48
|
+
subject(:results) do
|
49
|
+
described_class.new(valid_tenant_options)
|
50
|
+
.send_request('relevance/ruleset/names', :get)
|
51
|
+
end
|
52
|
+
|
53
|
+
it('returns an array') do
|
54
|
+
expect(results).to be_a(Array)
|
55
|
+
end
|
48
56
|
|
49
|
-
it('returns an array of 2
|
50
|
-
expect(
|
51
|
-
expect(subject.size).to eq(return_array.length)
|
57
|
+
it('returns an array of length=2') do
|
58
|
+
expect(results.size).to eq(2)
|
52
59
|
end
|
53
60
|
|
54
|
-
context '
|
55
|
-
subject
|
61
|
+
context 'with client errors' do
|
62
|
+
subject(:client_error) do
|
63
|
+
described_class.new(valid_tenant_options)
|
64
|
+
.send_request('client_error', :get)
|
65
|
+
end
|
56
66
|
|
57
|
-
it('result is null') { expect(
|
58
|
-
|
59
|
-
it('error_messages
|
67
|
+
it('result is null') { expect(client_error[RESPONSE]).to be_nil }
|
68
|
+
|
69
|
+
it('error_messages is an array') {
|
70
|
+
expect(client_error[ERROR_MESSAGES]).to be_a(Array)
|
71
|
+
}
|
72
|
+
|
73
|
+
it('error_messages gets populated') {
|
74
|
+
expect(client_error[ERROR_MESSAGES].first)
|
75
|
+
.to eq 'Password Minimum size is 8'
|
76
|
+
}
|
60
77
|
end
|
61
78
|
|
62
|
-
context '
|
63
|
-
subject
|
79
|
+
context 'with server errors' do
|
80
|
+
subject(:server_error) do
|
81
|
+
described_class.new(valid_tenant_options)
|
82
|
+
.send_request('server_error', :get)
|
83
|
+
end
|
84
|
+
|
85
|
+
it('the result should be nil') {
|
86
|
+
expect(server_error[RESPONSE]).to be_nil
|
87
|
+
}
|
88
|
+
|
89
|
+
it('error messages should not be nil') {
|
90
|
+
expect(server_error[ERROR_MESSAGES]).not_to be_nil
|
91
|
+
}
|
92
|
+
|
93
|
+
it('error messages should be an array') {
|
94
|
+
expect(server_error[ERROR_MESSAGES]).to be_a(Array)
|
95
|
+
}
|
64
96
|
|
65
|
-
it('the
|
66
|
-
|
67
|
-
|
68
|
-
|
97
|
+
it('the first error message should match') {
|
98
|
+
expect(server_error[ERROR_MESSAGES].first)
|
99
|
+
.to eq 'the server responded with status 500'
|
100
|
+
}
|
69
101
|
end
|
70
102
|
|
71
|
-
context '
|
72
|
-
subject
|
73
|
-
|
103
|
+
context 'with proxy errors' do
|
104
|
+
subject(:proxy_error) do
|
105
|
+
described_class.new(valid_tenant_options)
|
106
|
+
.send_request('proxy_error', :get)
|
107
|
+
end
|
108
|
+
|
109
|
+
it {
|
110
|
+
expect { proxy_error }
|
111
|
+
.to(raise_error(FinAppsCore::ConnectionFailedError,
|
112
|
+
'Connection Failed'))
|
113
|
+
}
|
74
114
|
end
|
75
115
|
end
|
76
116
|
|
77
|
-
context '
|
117
|
+
context 'when a block is provided' do
|
78
118
|
it('gets executed on the response and returned as the result') do
|
79
|
-
expect(
|
119
|
+
expect(base_client
|
120
|
+
.send_request('relevance/ruleset/names', :get) {|r| r.body.length })
|
121
|
+
.to eq([45, []])
|
80
122
|
end
|
81
123
|
end
|
82
124
|
end
|
83
125
|
|
84
126
|
describe '#method_missing' do
|
85
|
-
context '
|
86
|
-
it { expect {
|
127
|
+
context 'with unsupported methods' do
|
128
|
+
it { expect { base_client.unsupported }.to raise_error(NoMethodError) }
|
87
129
|
end
|
88
130
|
end
|
89
131
|
|
90
132
|
describe '#respond_to_missing?' do
|
91
|
-
context '
|
133
|
+
context 'with supported methods' do
|
92
134
|
%i[get post put delete].each do |method|
|
93
|
-
it("responds to #{method}") {
|
135
|
+
it("responds to #{method}") {
|
136
|
+
expect(base_client).to respond_to(method)
|
137
|
+
}
|
94
138
|
end
|
95
139
|
end
|
96
140
|
end
|
@@ -4,41 +4,48 @@ require 'finapps_core/error'
|
|
4
4
|
|
5
5
|
RSpec.describe FinAppsCore::REST::Configuration do
|
6
6
|
describe '#new' do
|
7
|
-
context '
|
8
|
-
subject {
|
7
|
+
context 'with invalid timeout configuration' do
|
8
|
+
subject(:configuration) { described_class.new(timeout: 'whatever') }
|
9
|
+
|
9
10
|
expected_error = FinAppsCore::InvalidArgumentsError
|
10
|
-
it { expect {
|
11
|
+
it { expect { configuration }.to raise_error(expected_error, 'Invalid argument. {timeout: whatever}') }
|
11
12
|
end
|
12
13
|
|
13
|
-
context '
|
14
|
-
subject {
|
15
|
-
|
16
|
-
|
14
|
+
context 'with missing timeout configuration' do
|
15
|
+
subject(:configuration) { described_class.new(timeout: nil) }
|
16
|
+
|
17
|
+
it 'has a default timeout value' do
|
18
|
+
expect(configuration.timeout).to eq(FinAppsCore::REST::Defaults::DEFAULTS[:timeout])
|
17
19
|
end
|
18
20
|
end
|
19
21
|
|
20
|
-
context '
|
21
|
-
subject {
|
22
|
+
context 'with invalid host configuration' do
|
23
|
+
subject(:configuration) { described_class.new(host: 'whatever') }
|
24
|
+
|
22
25
|
expected_error = FinAppsCore::InvalidArgumentsError
|
23
|
-
it { expect {
|
26
|
+
it { expect { configuration }.to raise_error(expected_error, 'Invalid argument. {host: whatever}') }
|
24
27
|
end
|
25
28
|
|
26
|
-
context '
|
27
|
-
subject {
|
28
|
-
|
29
|
-
|
29
|
+
context 'with missing host configuration' do
|
30
|
+
subject(:configuration) { described_class.new(host: nil) }
|
31
|
+
|
32
|
+
it 'has a default host value' do
|
33
|
+
expect(configuration.host).to eq(FinAppsCore::REST::Defaults::DEFAULTS[:host])
|
30
34
|
end
|
31
35
|
end
|
32
36
|
end
|
33
37
|
|
34
38
|
describe '#valid_user_credentials??' do
|
35
39
|
context 'when user credentials were not set' do
|
36
|
-
subject {
|
37
|
-
|
40
|
+
subject(:configuration) { described_class.new(host: nil) }
|
41
|
+
|
42
|
+
it { expect(configuration.valid_user_credentials?).to eq(false) }
|
38
43
|
end
|
44
|
+
|
39
45
|
context 'when user credentials were set' do
|
40
|
-
subject {
|
41
|
-
|
46
|
+
subject(:configuration) { described_class.new(user_identifier: 1, user_token: 2) }
|
47
|
+
|
48
|
+
it { expect(configuration.valid_user_credentials?).to eq(true) }
|
42
49
|
end
|
43
50
|
end
|
44
51
|
end
|
@@ -3,19 +3,19 @@
|
|
3
3
|
RSpec.describe FinAppsCore::REST::Credentials do
|
4
4
|
describe '#valid?' do
|
5
5
|
context 'when missing identifier' do
|
6
|
-
it { expect(
|
6
|
+
it { expect(described_class.new(nil, :token).valid?).to be(true) }
|
7
7
|
end
|
8
8
|
|
9
9
|
context 'when missing token' do
|
10
|
-
it { expect(
|
10
|
+
it { expect(described_class.new(:identifier, nil).valid?).to be(false) }
|
11
11
|
end
|
12
12
|
|
13
13
|
context 'when missing both identifier and token' do
|
14
|
-
it { expect(
|
14
|
+
it { expect(described_class.new(nil, nil).valid?).to be(false) }
|
15
15
|
end
|
16
16
|
|
17
17
|
context 'when having identifier and token' do
|
18
|
-
it { expect(
|
18
|
+
it { expect(described_class.new(:identifier, :token).valid?).to be(true) }
|
19
19
|
end
|
20
20
|
end
|
21
21
|
end
|
data/spec/rest/defaults_spec.rb
CHANGED
@@ -12,6 +12,6 @@ RSpec.describe FinAppsCore::REST::Defaults do
|
|
12
12
|
it('sets DEFAULTS[:host]') { expect(described_class::DEFAULTS[:host]).to eq 'https://api.finclear.io' }
|
13
13
|
it('sets DEFAULTS[:timeout]') { expect(described_class::DEFAULTS[:timeout]).to eq 30 }
|
14
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::
|
15
|
+
it('sets DEFAULTS[:log_level]') { expect(described_class::DEFAULTS[:log_level]).to eq Logger::UNKNOWN }
|
16
16
|
end
|
17
17
|
end
|
data/spec/rest/resources_spec.rb
CHANGED
@@ -1,30 +1,20 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'spec_helpers/client'
|
4
|
-
|
5
3
|
RSpec.describe FinAppsCore::REST::Resources do
|
6
|
-
include SpecHelpers::Client
|
7
|
-
subject { FinAppsCore::REST::Resources.new client }
|
8
|
-
|
9
4
|
describe '#new' do
|
10
|
-
context '
|
11
|
-
|
5
|
+
context 'with a valid client param' do
|
6
|
+
subject(:resources) { described_class.new :client }
|
7
|
+
|
8
|
+
it { expect { resources }.not_to raise_error }
|
12
9
|
end
|
13
10
|
|
14
11
|
context 'when missing client param' do
|
15
|
-
subject {
|
16
|
-
it { expect { subject }.to raise_error(FinAppsCore::MissingArgumentsError) }
|
17
|
-
end
|
18
|
-
end
|
12
|
+
subject(:resources) { described_class.new nil }
|
19
13
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
end
|
26
|
-
describe '#show' do
|
27
|
-
end
|
28
|
-
describe '#destroy' do
|
14
|
+
it {
|
15
|
+
expect { resources }
|
16
|
+
.to raise_error(FinAppsCore::MissingArgumentsError)
|
17
|
+
}
|
18
|
+
end
|
29
19
|
end
|
30
20
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -29,12 +29,12 @@ RSpec.configure do |config|
|
|
29
29
|
config.warnings = true
|
30
30
|
Kernel.srand config.seed
|
31
31
|
|
32
|
-
config.before
|
32
|
+
config.before do
|
33
33
|
base_url = "#{FinAppsCore::REST::Defaults::DEFAULTS[:host]}/v#{FinAppsCore::REST::Defaults::API_VERSION}/"
|
34
34
|
stub_request(:any, /#{base_url}/).to_rack(::FakeApi)
|
35
35
|
end
|
36
36
|
WebMock.disable_net_connect!(allow: 'codeclimate.com')
|
37
37
|
end
|
38
38
|
|
39
|
-
VALID_CREDENTIALS = {
|
40
|
-
|
39
|
+
VALID_CREDENTIALS = {identifier: '49fb918d-7e71-44dd-7378-58f19606df2a',
|
40
|
+
token: 'hohoho='}.freeze
|
@@ -6,19 +6,20 @@ end
|
|
6
6
|
|
7
7
|
RSpec.describe FinAppsCore::Utils::Validatable do
|
8
8
|
describe '#not_blank' do
|
9
|
-
context '
|
10
|
-
it '
|
11
|
-
expect { FakeClass.new.not_blank(nil) }
|
9
|
+
context 'with null values' do
|
10
|
+
it 'raises FinAppsCore::MissingArgumentsError' do
|
11
|
+
expect { FakeClass.new.not_blank(nil) }
|
12
|
+
.to raise_error(FinAppsCore::MissingArgumentsError)
|
12
13
|
end
|
13
14
|
|
14
|
-
it '
|
15
|
-
expect { FakeClass.new.not_blank(nil, :name) }
|
16
|
-
|
15
|
+
it 'describes the argument name when provided' do
|
16
|
+
expect { FakeClass.new.not_blank(nil, :name) }
|
17
|
+
.to raise_error(FinAppsCore::MissingArgumentsError, ': name')
|
17
18
|
end
|
18
19
|
end
|
19
20
|
|
20
|
-
context '
|
21
|
-
it '
|
21
|
+
context 'with non null values' do
|
22
|
+
it 'does not raise' do
|
22
23
|
expect { FakeClass.new.not_blank(true) }.not_to raise_error
|
23
24
|
end
|
24
25
|
end
|
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.
|
4
|
+
version: 5.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Erich Quintero
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-06-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -116,100 +116,100 @@ dependencies:
|
|
116
116
|
requirements:
|
117
117
|
- - "~>"
|
118
118
|
- !ruby/object:Gem::Version
|
119
|
-
version: '
|
119
|
+
version: '13.0'
|
120
120
|
- - ">="
|
121
121
|
- !ruby/object:Gem::Version
|
122
|
-
version:
|
122
|
+
version: 13.0.1
|
123
123
|
type: :development
|
124
124
|
prerelease: false
|
125
125
|
version_requirements: !ruby/object:Gem::Requirement
|
126
126
|
requirements:
|
127
127
|
- - "~>"
|
128
128
|
- !ruby/object:Gem::Version
|
129
|
-
version: '
|
129
|
+
version: '13.0'
|
130
130
|
- - ">="
|
131
131
|
- !ruby/object:Gem::Version
|
132
|
-
version:
|
132
|
+
version: 13.0.1
|
133
133
|
- !ruby/object:Gem::Dependency
|
134
134
|
name: rspec
|
135
135
|
requirement: !ruby/object:Gem::Requirement
|
136
136
|
requirements:
|
137
|
-
- - ">="
|
138
|
-
- !ruby/object:Gem::Version
|
139
|
-
version: 3.8.0
|
140
137
|
- - "~>"
|
141
138
|
- !ruby/object:Gem::Version
|
142
139
|
version: '3.8'
|
140
|
+
- - ">="
|
141
|
+
- !ruby/object:Gem::Version
|
142
|
+
version: 3.8.0
|
143
143
|
type: :development
|
144
144
|
prerelease: false
|
145
145
|
version_requirements: !ruby/object:Gem::Requirement
|
146
146
|
requirements:
|
147
|
-
- - ">="
|
148
|
-
- !ruby/object:Gem::Version
|
149
|
-
version: 3.8.0
|
150
147
|
- - "~>"
|
151
148
|
- !ruby/object:Gem::Version
|
152
149
|
version: '3.8'
|
150
|
+
- - ">="
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: 3.8.0
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: rubocop
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
|
-
- - ">="
|
158
|
-
- !ruby/object:Gem::Version
|
159
|
-
version: 0.73.0
|
160
157
|
- - "~>"
|
161
158
|
- !ruby/object:Gem::Version
|
162
|
-
version: '0.
|
159
|
+
version: '0.86'
|
160
|
+
- - ">="
|
161
|
+
- !ruby/object:Gem::Version
|
162
|
+
version: 0.86.0
|
163
163
|
type: :development
|
164
164
|
prerelease: false
|
165
165
|
version_requirements: !ruby/object:Gem::Requirement
|
166
166
|
requirements:
|
167
|
-
- - ">="
|
168
|
-
- !ruby/object:Gem::Version
|
169
|
-
version: 0.73.0
|
170
167
|
- - "~>"
|
171
168
|
- !ruby/object:Gem::Version
|
172
|
-
version: '0.
|
169
|
+
version: '0.86'
|
170
|
+
- - ">="
|
171
|
+
- !ruby/object:Gem::Version
|
172
|
+
version: 0.86.0
|
173
173
|
- !ruby/object:Gem::Dependency
|
174
174
|
name: rubocop-performance
|
175
175
|
requirement: !ruby/object:Gem::Requirement
|
176
176
|
requirements:
|
177
|
-
- - ">="
|
178
|
-
- !ruby/object:Gem::Version
|
179
|
-
version: 1.4.0
|
180
177
|
- - "~>"
|
181
178
|
- !ruby/object:Gem::Version
|
182
|
-
version: '1.
|
179
|
+
version: '1.6'
|
180
|
+
- - ">="
|
181
|
+
- !ruby/object:Gem::Version
|
182
|
+
version: 1.6.1
|
183
183
|
type: :development
|
184
184
|
prerelease: false
|
185
185
|
version_requirements: !ruby/object:Gem::Requirement
|
186
186
|
requirements:
|
187
|
-
- - ">="
|
188
|
-
- !ruby/object:Gem::Version
|
189
|
-
version: 1.4.0
|
190
187
|
- - "~>"
|
191
188
|
- !ruby/object:Gem::Version
|
192
|
-
version: '1.
|
189
|
+
version: '1.6'
|
190
|
+
- - ">="
|
191
|
+
- !ruby/object:Gem::Version
|
192
|
+
version: 1.6.1
|
193
193
|
- !ruby/object:Gem::Dependency
|
194
194
|
name: rubocop-rspec
|
195
195
|
requirement: !ruby/object:Gem::Requirement
|
196
196
|
requirements:
|
197
|
-
- - ">="
|
198
|
-
- !ruby/object:Gem::Version
|
199
|
-
version: 1.33.0
|
200
197
|
- - "~>"
|
201
198
|
- !ruby/object:Gem::Version
|
202
|
-
version: '1.
|
199
|
+
version: '1.40'
|
200
|
+
- - ">="
|
201
|
+
- !ruby/object:Gem::Version
|
202
|
+
version: 1.40.0
|
203
203
|
type: :development
|
204
204
|
prerelease: false
|
205
205
|
version_requirements: !ruby/object:Gem::Requirement
|
206
206
|
requirements:
|
207
|
-
- - ">="
|
208
|
-
- !ruby/object:Gem::Version
|
209
|
-
version: 1.33.0
|
210
207
|
- - "~>"
|
211
208
|
- !ruby/object:Gem::Version
|
212
|
-
version: '1.
|
209
|
+
version: '1.40'
|
210
|
+
- - ">="
|
211
|
+
- !ruby/object:Gem::Version
|
212
|
+
version: 1.40.0
|
213
213
|
- !ruby/object:Gem::Dependency
|
214
214
|
name: sinatra
|
215
215
|
requirement: !ruby/object:Gem::Requirement
|
@@ -234,22 +234,22 @@ dependencies:
|
|
234
234
|
name: webmock
|
235
235
|
requirement: !ruby/object:Gem::Requirement
|
236
236
|
requirements:
|
237
|
-
- - ">="
|
238
|
-
- !ruby/object:Gem::Version
|
239
|
-
version: 3.6.0
|
240
237
|
- - "~>"
|
241
238
|
- !ruby/object:Gem::Version
|
242
239
|
version: '3.6'
|
240
|
+
- - ">="
|
241
|
+
- !ruby/object:Gem::Version
|
242
|
+
version: 3.6.0
|
243
243
|
type: :development
|
244
244
|
prerelease: false
|
245
245
|
version_requirements: !ruby/object:Gem::Requirement
|
246
246
|
requirements:
|
247
|
-
- - ">="
|
248
|
-
- !ruby/object:Gem::Version
|
249
|
-
version: 3.6.0
|
250
247
|
- - "~>"
|
251
248
|
- !ruby/object:Gem::Version
|
252
249
|
version: '3.6'
|
250
|
+
- - ">="
|
251
|
+
- !ruby/object:Gem::Version
|
252
|
+
version: 3.6.0
|
253
253
|
description: A simple library for communicating with the FinApps REST API. Core functionality.
|
254
254
|
email:
|
255
255
|
- erich@financialapps.com
|
@@ -267,10 +267,12 @@ files:
|
|
267
267
|
- ".rubocop.yml"
|
268
268
|
- ".ruby-gemset"
|
269
269
|
- ".ruby-version"
|
270
|
+
- ".tmuxinator.yml"
|
270
271
|
- ".travis.yml"
|
271
272
|
- Gemfile
|
272
273
|
- LICENSE
|
273
274
|
- README.md
|
275
|
+
- RELEASES.md
|
274
276
|
- Rakefile
|
275
277
|
- finapps_core.gemspec
|
276
278
|
- lib/core_extensions/object/is_integer.rb
|
@@ -283,6 +285,7 @@ files:
|
|
283
285
|
- lib/finapps_core/middleware/request/request_id.rb
|
284
286
|
- lib/finapps_core/middleware/request/tenant_authentication.rb
|
285
287
|
- lib/finapps_core/middleware/request/user_agent.rb
|
288
|
+
- lib/finapps_core/middleware/request/x_consumer_id.rb
|
286
289
|
- lib/finapps_core/middleware/response/raise_error.rb
|
287
290
|
- lib/finapps_core/rest/base_client.rb
|
288
291
|
- lib/finapps_core/rest/configuration.rb
|
@@ -300,6 +303,7 @@ files:
|
|
300
303
|
- spec/middleware/request/request_id_spec.rb
|
301
304
|
- spec/middleware/request/tenant_authentication_spec.rb
|
302
305
|
- spec/middleware/request/user_agent_spec.rb
|
306
|
+
- spec/middleware/request/x_consumer_id_spec.rb
|
303
307
|
- spec/middleware/response/raise_error_spec.rb
|
304
308
|
- spec/rest/base_client_spec.rb
|
305
309
|
- spec/rest/configuration_spec.rb
|
@@ -341,24 +345,25 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
341
345
|
- !ruby/object:Gem::Version
|
342
346
|
version: '0'
|
343
347
|
requirements: []
|
344
|
-
rubygems_version: 3.
|
348
|
+
rubygems_version: 3.1.3
|
345
349
|
signing_key:
|
346
350
|
specification_version: 4
|
347
351
|
summary: FinApps REST API ruby client - Core.
|
348
352
|
test_files:
|
349
|
-
- spec/
|
350
|
-
- spec/rest/base_client_spec.rb
|
351
|
-
- spec/rest/credentials_spec.rb
|
352
|
-
- spec/rest/configuration_spec.rb
|
353
|
-
- spec/rest/resources_spec.rb
|
354
|
-
- spec/support/fake_api.rb
|
355
|
-
- spec/utils/validatable_spec.rb
|
356
|
-
- spec/spec_helpers/client.rb
|
357
|
-
- spec/spec_helper.rb
|
358
|
-
- spec/core_extensions/object/is_integer_spec.rb
|
359
|
-
- spec/middleware/request/no_encoding_basic_authentication_spec.rb
|
353
|
+
- spec/middleware/response/raise_error_spec.rb
|
360
354
|
- spec/middleware/request/user_agent_spec.rb
|
355
|
+
- spec/middleware/request/request_id_spec.rb
|
361
356
|
- spec/middleware/request/tenant_authentication_spec.rb
|
362
357
|
- spec/middleware/request/accept_json_spec.rb
|
363
|
-
- spec/middleware/request/
|
364
|
-
- spec/middleware/
|
358
|
+
- spec/middleware/request/x_consumer_id_spec.rb
|
359
|
+
- spec/middleware/request/no_encoding_basic_authentication_spec.rb
|
360
|
+
- spec/spec_helper.rb
|
361
|
+
- spec/spec_helpers/client.rb
|
362
|
+
- spec/utils/validatable_spec.rb
|
363
|
+
- spec/support/fake_api.rb
|
364
|
+
- spec/core_extensions/object/is_integer_spec.rb
|
365
|
+
- spec/rest/credentials_spec.rb
|
366
|
+
- spec/rest/base_client_spec.rb
|
367
|
+
- spec/rest/configuration_spec.rb
|
368
|
+
- spec/rest/defaults_spec.rb
|
369
|
+
- spec/rest/resources_spec.rb
|