finapps 5.0.30 → 5.0.35
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/.github/workflows/main.yaml +37 -0
- data/.rubocop.yml +134 -61
- data/.rubocop_todo.yml +29 -0
- data/.tmuxinator.yml +1 -0
- data/.travis.yml +3 -1
- data/README.md +1 -0
- data/RELEASES.md +29 -0
- data/finapps.gemspec +4 -4
- data/lib/finapps/rest/alert_definitions.rb +1 -1
- data/lib/finapps/rest/alert_occurrences.rb +1 -1
- data/lib/finapps/rest/client.rb +6 -5
- data/lib/finapps/rest/consumers.rb +22 -6
- data/lib/finapps/rest/consumers_portfolios.rb +1 -1
- data/lib/finapps/rest/documents_orders.rb +43 -26
- data/lib/finapps/rest/operators.rb +5 -5
- data/lib/finapps/rest/operators_password_resets.rb +1 -1
- data/lib/finapps/rest/order_assignments.rb +1 -1
- data/lib/finapps/rest/order_reports.rb +1 -1
- data/lib/finapps/rest/orders.rb +33 -22
- data/lib/finapps/rest/plaid/plaid_consumer_institutions.rb +1 -1
- data/lib/finapps/rest/portfolio_reports.rb +1 -1
- data/lib/finapps/rest/portfolios.rb +1 -1
- data/lib/finapps/rest/portfolios_available_consumers.rb +1 -1
- data/lib/finapps/rest/portfolios_consumers.rb +1 -1
- data/lib/finapps/rest/sessions.rb +11 -9
- data/lib/finapps/rest/signed_documents_downloads.rb +3 -1
- data/lib/finapps/utils/query_builder.rb +13 -4
- data/lib/finapps/version.rb +1 -1
- data/spec/rest/alert_definitions_spec.rb +10 -6
- data/spec/rest/alert_occurrences_spec.rb +6 -1
- data/spec/rest/api_request.rb +1 -0
- data/spec/rest/client_spec.rb +33 -41
- data/spec/rest/consumers_portfolios_spec.rb +7 -2
- data/spec/rest/consumers_spec.rb +240 -192
- data/spec/rest/documents_orders_notifications_spec.rb +4 -2
- data/spec/rest/documents_orders_spec.rb +94 -17
- data/spec/rest/esign_templates_spec.rb +2 -1
- data/spec/rest/operators_password_resets_spec.rb +50 -52
- data/spec/rest/operators_spec.rb +181 -172
- data/spec/rest/order_assignments_spec.rb +6 -1
- data/spec/rest/order_notifications_spec.rb +4 -2
- data/spec/rest/order_refreshes_spec.rb +8 -5
- data/spec/rest/order_reports_spec.rb +21 -15
- data/spec/rest/order_statuses_spec.rb +14 -10
- data/spec/rest/order_tokens_spec.rb +37 -30
- data/spec/rest/orders_spec.rb +121 -73
- data/spec/rest/password_resets_spec.rb +46 -36
- data/spec/rest/plaid/plaid_account_permissions_spec.rb +5 -4
- data/spec/rest/plaid/plaid_accounts_spec.rb +9 -4
- data/spec/rest/plaid/plaid_consumer_institutions_spec.rb +11 -11
- data/spec/rest/plaid/plaid_institution_logos_spec.rb +1 -1
- data/spec/rest/plaid/plaid_webhooks_spec.rb +3 -1
- data/spec/rest/portfolio_reports_spec.rb +7 -2
- data/spec/rest/portfolios_alerts_spec.rb +9 -4
- data/spec/rest/portfolios_available_consumers_spec.rb +7 -2
- data/spec/rest/portfolios_consumers_spec.rb +15 -4
- data/spec/rest/portfolios_spec.rb +20 -17
- data/spec/rest/products_spec.rb +17 -14
- data/spec/rest/sessions_spec.rb +63 -58
- data/spec/rest/signed_documents_downloads_spec.rb +10 -6
- data/spec/rest/tenant_app_settings_spec.rb +9 -3
- data/spec/rest/tenant_settings_spec.rb +9 -3
- data/spec/rest/verix/verix_documents_spec.rb +15 -22
- data/spec/rest/verix/verix_metadata_spec.rb +1 -1
- data/spec/rest/verix/verix_pdf_documents_spec.rb +14 -19
- data/spec/rest/verix/verix_records_spec.rb +31 -10
- data/spec/rest/version_spec.rb +6 -4
- data/spec/spec_helper.rb +2 -2
- data/spec/support/fake_api.rb +9 -3
- data/spec/support/fixtures/documents_orders_none.json +6 -0
- data/spec/utils/query_builder_spec.rb +40 -14
- metadata +20 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4756aafb56941b9eaf0609a1aa07d9eae9b3485e70a10bf1ab7590cc973654d1
|
4
|
+
data.tar.gz: 0e55b4ed791fc263027a21b6193ca025778e983fb0742006111b9fc1c5d88e4d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 90031e4f43d5a3fda8f4f3f2df53e7ecb8a5e27ab53830f79aaf80ab981b293b8890ad3e2bf8a31ebc210dcaf37f29fbcc1442fb139ee463b465243223381393
|
7
|
+
data.tar.gz: 56d79d89f1a40e4ee1fff5b58ad8e49f762375c7ea6a4911a3e149004272eba89fe3e6348653a49f75a2bf1cd6a1f41ef4e8c20af6857c0e75af76c818b88467
|
@@ -0,0 +1,37 @@
|
|
1
|
+
name: Main
|
2
|
+
|
3
|
+
on: [push, pull_request]
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
ci:
|
7
|
+
runs-on: ubuntu-latest
|
8
|
+
|
9
|
+
strategy:
|
10
|
+
fail-fast: true
|
11
|
+
|
12
|
+
steps:
|
13
|
+
- uses: actions/checkout@v1
|
14
|
+
|
15
|
+
- name: Use Ruby 2.6
|
16
|
+
uses: actions/setup-ruby@v1
|
17
|
+
with:
|
18
|
+
ruby-version: '2.6'
|
19
|
+
|
20
|
+
- uses: actions/cache@v1
|
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 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
|
data/.rubocop.yml
CHANGED
@@ -1,26 +1,59 @@
|
|
1
|
+
inherit_from: .rubocop_todo.yml
|
2
|
+
|
3
|
+
require:
|
4
|
+
- rubocop-rspec
|
5
|
+
- rubocop-performance
|
6
|
+
|
1
7
|
AllCops:
|
2
|
-
|
8
|
+
TargetRubyVersion: 2.6
|
3
9
|
Exclude:
|
4
|
-
|
5
|
-
|
10
|
+
- "vendor/**/*"
|
11
|
+
- "bin/**/*"
|
12
|
+
CacheRootDirectory: tmp
|
6
13
|
|
7
|
-
|
14
|
+
Layout/SpaceAroundMethodCallOperator:
|
15
|
+
Enabled: true
|
16
|
+
Layout/EmptyLinesAroundAttributeAccessor:
|
17
|
+
Enabled: true
|
18
|
+
Layout/SpaceInsideBlockBraces:
|
19
|
+
# The space here provides no real gain in readability while consuming
|
20
|
+
# horizontal space that could be used for a better parameter name.
|
21
|
+
# Also {| differentiates better from a hash than { | does.
|
22
|
+
SpaceBeforeBlockParameters: false
|
23
|
+
Layout/SpaceInsideHashLiteralBraces:
|
24
|
+
EnforcedStyle: no_space
|
25
|
+
Layout/DotPosition:
|
26
|
+
Description: Checks the position of the dot in multi-line method calls.
|
27
|
+
StyleGuide: https://github.com/bbatsov/ruby-style-guide#consistent-multi-line-chains
|
28
|
+
Enabled: true
|
29
|
+
EnforcedStyle: leading
|
30
|
+
SupportedStyles:
|
31
|
+
- leading
|
32
|
+
- trailing
|
8
33
|
Layout/LineLength:
|
9
|
-
Max:
|
34
|
+
Max: 110
|
10
35
|
|
11
|
-
|
12
|
-
Description: Preferred collection methods.
|
13
|
-
StyleGuide: https://github.com/bbatsov/ruby-style-guide#map-find-select-reduce-size
|
36
|
+
Lint/DeprecatedOpenSSLConstant:
|
14
37
|
Enabled: true
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
38
|
+
Lint/MixedRegexpCaptureTypes:
|
39
|
+
Enabled: true
|
40
|
+
Lint/RaiseException:
|
41
|
+
Enabled: true
|
42
|
+
Lint/StructNewOverride:
|
43
|
+
Enabled: true
|
44
|
+
|
45
|
+
Metrics/ClassLength:
|
46
|
+
Exclude:
|
47
|
+
- app/controllers/orders_controller.rb
|
48
|
+
- app/models/order.rb
|
49
|
+
Metrics/BlockLength:
|
50
|
+
ExcludedMethods: ['describe', 'context']
|
51
|
+
Exclude:
|
52
|
+
- config/environments/**/**
|
53
|
+
- Guardfile
|
54
|
+
- config/routes.rb
|
55
|
+
- config/Guardfile
|
56
|
+
|
24
57
|
Naming/PredicateName:
|
25
58
|
Description: Check the names of predicate methods.
|
26
59
|
StyleGuide: https://github.com/bbatsov/ruby-style-guide#bool-methods-qmark
|
@@ -33,54 +66,94 @@ Naming/PredicateName:
|
|
33
66
|
- is_
|
34
67
|
Exclude:
|
35
68
|
- spec/**/*
|
36
|
-
|
37
|
-
|
38
|
-
conditions.
|
39
|
-
Enabled: false
|
40
|
-
Max: 15
|
41
|
-
Metrics/BlockLength:
|
42
|
-
ExcludedMethods: ['describe', 'context']
|
43
|
-
Metrics/ClassLength:
|
44
|
-
Description: Avoid classes longer than 100 lines of code.
|
45
|
-
Enabled: false
|
46
|
-
CountComments: false
|
47
|
-
Max: 100
|
48
|
-
Metrics/ModuleLength:
|
49
|
-
CountComments: false
|
50
|
-
Max: 100
|
51
|
-
Description: Avoid modules longer than 100 lines of code.
|
52
|
-
Enabled: false
|
53
|
-
Metrics/CyclomaticComplexity:
|
54
|
-
Description: A complexity metric that is strongly correlated to the number of test
|
55
|
-
cases needed to validate a method.
|
56
|
-
Enabled: false
|
57
|
-
Max: 6
|
58
|
-
Metrics/MethodLength:
|
59
|
-
Description: Avoid methods longer than 10 lines of code.
|
60
|
-
StyleGuide: https://github.com/bbatsov/ruby-style-guide#short-methods
|
69
|
+
|
70
|
+
RSpec/FilePath:
|
61
71
|
Enabled: false
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
72
|
+
|
73
|
+
Style/RedundantRegexpCharacterClass:
|
74
|
+
Enabled: true
|
75
|
+
Style/RedundantRegexpEscape:
|
76
|
+
Enabled: true
|
77
|
+
Style/CollectionMethods:
|
78
|
+
Description: Preferred collection methods.
|
79
|
+
StyleGuide: https://github.com/bbatsov/ruby-style-guide#map-find-select-reduce-size
|
80
|
+
Enabled: true
|
81
|
+
PreferredMethods:
|
82
|
+
collect: map
|
83
|
+
collect!: map!
|
84
|
+
find: detect
|
85
|
+
find_all: select
|
86
|
+
reduce: inject
|
87
|
+
Style/GuardClause:
|
88
|
+
Description: Check for conditionals that can be replaced with guard clauses
|
89
|
+
StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals
|
90
|
+
Enabled: true
|
91
|
+
MinBodyLength: 1
|
92
|
+
Style/OptionHash:
|
93
|
+
Description: Don't use option hashes when you can use keyword arguments.
|
67
94
|
Enabled: false
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
Description: A complexity metric geared towards measuring complexity for a human
|
72
|
-
reader.
|
95
|
+
Style/PercentLiteralDelimiters:
|
96
|
+
Description: Use `%`-literal delimiters consistently
|
97
|
+
StyleGuide: https://github.com/bbatsov/ruby-style-guide#percent-literal-braces
|
73
98
|
Enabled: false
|
74
|
-
|
99
|
+
PreferredDelimiters:
|
100
|
+
"%": "()"
|
101
|
+
"%i": "()"
|
102
|
+
"%q": "()"
|
103
|
+
"%Q": "()"
|
104
|
+
"%r": "{}"
|
105
|
+
"%s": "()"
|
106
|
+
"%w": "()"
|
107
|
+
"%W": "()"
|
108
|
+
"%x": "()"
|
109
|
+
Style/SignalException:
|
110
|
+
Description: Checks for proper usage of fail and raise.
|
111
|
+
StyleGuide: https://github.com/bbatsov/ruby-style-guide#fail-method
|
112
|
+
Enabled: true
|
113
|
+
EnforcedStyle: semantic
|
114
|
+
SupportedStyles:
|
115
|
+
- only_raise
|
116
|
+
- only_fail
|
117
|
+
- semantic
|
118
|
+
Style/StringLiterals:
|
119
|
+
Description: Checks if uses of quotes match the configured preference.
|
120
|
+
StyleGuide: https://github.com/bbatsov/ruby-style-guide#consistent-string-literals
|
121
|
+
Enabled: true
|
122
|
+
EnforcedStyle: single_quotes
|
123
|
+
SupportedStyles:
|
124
|
+
- single_quotes
|
125
|
+
- double_quotes
|
126
|
+
Style/StringLiteralsInInterpolation:
|
127
|
+
Description: Checks if uses of quotes inside expressions in interpolated strings
|
128
|
+
match the configured preference.
|
129
|
+
Enabled: true
|
130
|
+
EnforcedStyle: single_quotes
|
131
|
+
SupportedStyles:
|
132
|
+
- single_quotes
|
133
|
+
- double_quotes
|
75
134
|
Style/Documentation:
|
76
135
|
Description: Document classes and non-namespace modules.
|
77
136
|
Enabled: false
|
78
|
-
Style/
|
79
|
-
Description:
|
80
|
-
StyleGuide: https://github.com/bbatsov/ruby-style-guide#
|
81
|
-
Enabled: false
|
82
|
-
Style/VariableInterpolation:
|
83
|
-
Description: Don't interpolate global, instance and class variables directly in
|
84
|
-
strings.
|
85
|
-
StyleGuide: https://github.com/bbatsov/ruby-style-guide#curlies-interpolate
|
137
|
+
Style/OneLineConditional:
|
138
|
+
Description: Favor the ternary operator(?:) over if/then/else/end constructs.
|
139
|
+
StyleGuide: https://github.com/bbatsov/ruby-style-guide#ternary-operator
|
86
140
|
Enabled: false
|
141
|
+
Style/ExponentialNotation:
|
142
|
+
Enabled: true
|
143
|
+
Style/HashEachMethods:
|
144
|
+
Enabled: true
|
145
|
+
Style/HashTransformKeys:
|
146
|
+
Enabled: true
|
147
|
+
Style/HashTransformValues:
|
148
|
+
Enabled: true
|
149
|
+
Style/RedundantFetchBlock:
|
150
|
+
Enabled: true
|
151
|
+
Style/SlicingWithRange:
|
152
|
+
Enabled: true
|
153
|
+
|
154
|
+
RSpec/NestedGroups:
|
155
|
+
Max: 5
|
156
|
+
RSpec/DescribeClass:
|
157
|
+
Exclude:
|
158
|
+
- spec/system/*
|
159
|
+
- spec/factories_spec.rb
|
data/.rubocop_todo.yml
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
# This configuration was generated by
|
2
|
+
# `rubocop --auto-gen-config`
|
3
|
+
# on 2020-06-24 14:28:46 UTC using RuboCop version 0.86.0.
|
4
|
+
# The point is for the user to remove these configuration records
|
5
|
+
# one by one as the offenses are removed from the code base.
|
6
|
+
# Note that changes in the inspected code, or installation of new
|
7
|
+
# versions of RuboCop, may require this file to be generated again.
|
8
|
+
|
9
|
+
# Offense count: 1
|
10
|
+
# Configuration parameters: CountComments, ExcludedMethods.
|
11
|
+
# ExcludedMethods: refine
|
12
|
+
# finapps.gemspec - leaving as is intentionally
|
13
|
+
Metrics/BlockLength:
|
14
|
+
Max: 28
|
15
|
+
|
16
|
+
# Offense count: 1
|
17
|
+
# Configuration parameters: CountComments.
|
18
|
+
# fake_api.rb - leaving as is intentionally
|
19
|
+
Metrics/ClassLength:
|
20
|
+
Max: 431
|
21
|
+
|
22
|
+
# Offense count: 5
|
23
|
+
# Configuration parameters: Max.
|
24
|
+
# Leaving as is intentionally - url being tested takes up as many lines
|
25
|
+
RSpec/ExampleLength:
|
26
|
+
Exclude:
|
27
|
+
- 'spec/rest/consumers_spec.rb'
|
28
|
+
- 'spec/rest/documents_orders_spec.rb'
|
29
|
+
- 'spec/rest/orders_spec.rb'
|
data/.tmuxinator.yml
CHANGED
data/.travis.yml
CHANGED
data/README.md
CHANGED
@@ -3,6 +3,7 @@ FinApps Ruby-Client
|
|
3
3
|
===================
|
4
4
|
|
5
5
|
[](https://rubygems.org/gems/finapps)
|
6
|
+

|
6
7
|
[](https://travis-ci.org/finapps/ruby-client)
|
7
8
|
[](https://codeclimate.com/github/finapps/ruby-client)
|
8
9
|
[](https://codeclimate.com/github/finapps/ruby-client/coverage)
|
data/RELEASES.md
CHANGED
@@ -1,3 +1,32 @@
|
|
1
|
+
## [5.0.35] - 2020-07-09
|
2
|
+
|
3
|
+
### Changed
|
4
|
+
* Change code to match rubocop suggestions ([#232][i232])
|
5
|
+
* Add support for first name order search with space ([#404][i404])
|
6
|
+
|
7
|
+
[i232]: https://github.com/finapps/ruby-client/issues/232
|
8
|
+
[i404]: https://github.com/finapps/tenant-dashboard-react/issues/404
|
9
|
+
|
10
|
+
[5.0.35]: https://github.com/finapps/ruby-client/compare/5.0.34...5.0.35
|
11
|
+
|
12
|
+
## [5.0.32] - 2020-06-11
|
13
|
+
|
14
|
+
### Fixed
|
15
|
+
* Argument error resulting from space search ([#225][i225])
|
16
|
+
|
17
|
+
[i225]: https://github.com/finapps/ruby-client/issues/225
|
18
|
+
|
19
|
+
[5.0.32]: https://github.com/finapps/ruby-client/compare/5.0.31...5.0.32
|
20
|
+
|
21
|
+
## [5.0.31] - 2020-06-11
|
22
|
+
|
23
|
+
### Changed
|
24
|
+
* Consumer and Doc-order search to query names on spaces ([#224][i224])
|
25
|
+
|
26
|
+
[i224]: https://github.com/finapps/ruby-client/issues/224
|
27
|
+
|
28
|
+
[5.0.31]: https://github.com/finapps/ruby-client/compare/5.0.30...5.0.31
|
29
|
+
|
1
30
|
## [5.0.30] - 2020-05-28
|
2
31
|
|
3
32
|
### Added
|
data/finapps.gemspec
CHANGED
@@ -20,7 +20,7 @@ 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 'finapps_core', '~> 5.0', '>= 5.0.
|
23
|
+
spec.add_runtime_dependency 'finapps_core', '~> 5.0', '>= 5.0.10'
|
24
24
|
|
25
25
|
spec.add_development_dependency 'bundler', '~> 2.0', '>= 2.0.2'
|
26
26
|
spec.add_development_dependency 'codeclimate-test-reporter', '~> 1.0', '>= 1.0.9'
|
@@ -29,9 +29,9 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.add_development_dependency 'guard-rspec', '~> 4.7', '>= 4.7.3'
|
30
30
|
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.1'
|
31
31
|
spec.add_development_dependency 'rspec', '~> 3.9', '>= 3.9.0'
|
32
|
-
spec.add_development_dependency 'rubocop', '~> 0.
|
33
|
-
spec.add_development_dependency 'rubocop-performance', '~> 1.
|
34
|
-
spec.add_development_dependency 'rubocop-rspec', '~> 1.
|
32
|
+
spec.add_development_dependency 'rubocop', '~> 0.86', '>= 0.86.0'
|
33
|
+
spec.add_development_dependency 'rubocop-performance', '~> 1.6', '>= 1.6.1'
|
34
|
+
spec.add_development_dependency 'rubocop-rspec', '~> 1.40', '>= 1.40.0'
|
35
35
|
spec.add_development_dependency 'sinatra', '~> 2.0', '>= 2.0.8'
|
36
36
|
spec.add_development_dependency 'webmock', '~> 3.8', '>= 3.8.0'
|
37
37
|
|
@@ -8,7 +8,7 @@ module FinApps
|
|
8
8
|
|
9
9
|
def list(params = nil)
|
10
10
|
return super END_POINT if params.nil?
|
11
|
-
|
11
|
+
fail FinAppsCore::InvalidArgumentsError, 'Invalid argument: params' unless params.is_a? Hash
|
12
12
|
|
13
13
|
super build_query_path(END_POINT, params)
|
14
14
|
end
|
@@ -8,7 +8,7 @@ module FinApps
|
|
8
8
|
|
9
9
|
def list(params = nil)
|
10
10
|
return super END_POINT if params.nil?
|
11
|
-
|
11
|
+
fail FinAppsCore::InvalidArgumentsError, 'Invalid argument: params' unless params.is_a? Hash
|
12
12
|
|
13
13
|
super build_query_path(END_POINT, params)
|
14
14
|
end
|
data/lib/finapps/rest/client.rb
CHANGED
@@ -60,17 +60,18 @@ module FinApps
|
|
60
60
|
if RESOURCES.include? symbol
|
61
61
|
class_name = camelize(symbol.to_s)
|
62
62
|
variable = "@#{class_name.downcase}"
|
63
|
-
unless instance_variable_defined? variable
|
64
|
-
klass =
|
65
|
-
Object.const_get('FinApps').const_get('REST').const_get class_name
|
66
|
-
instance_variable_set(variable, klass.new(self))
|
67
|
-
end
|
63
|
+
set_variable(class_name, variable) unless instance_variable_defined? variable
|
68
64
|
instance_variable_get(variable)
|
69
65
|
else
|
70
66
|
super
|
71
67
|
end
|
72
68
|
end
|
73
69
|
|
70
|
+
def set_variable(class_name, variable)
|
71
|
+
klass = Object.const_get('FinApps').const_get('REST').const_get class_name
|
72
|
+
instance_variable_set(variable, klass.new(self))
|
73
|
+
end
|
74
|
+
|
74
75
|
def respond_to_missing?(method_sym, include_private = false)
|
75
76
|
RESOURCES.include?(method_sym) ? true : super
|
76
77
|
end
|
@@ -15,7 +15,7 @@ module FinApps
|
|
15
15
|
|
16
16
|
def list(params = nil)
|
17
17
|
return super if params.nil?
|
18
|
-
|
18
|
+
fail FinAppsCore::InvalidArgumentsError, 'Invalid argument: params' unless params.is_a? Hash
|
19
19
|
|
20
20
|
super build_query_path(end_point, params)
|
21
21
|
end
|
@@ -54,14 +54,30 @@ module FinApps
|
|
54
54
|
end
|
55
55
|
|
56
56
|
def search_query(term)
|
57
|
+
query = with_space_search(term).concat(name_search(term))
|
57
58
|
{
|
58
|
-
"$or":
|
59
|
-
{ "email": term },
|
60
|
-
{ "first_name": term },
|
61
|
-
{ "last_name": term }
|
62
|
-
]
|
59
|
+
"$or": query
|
63
60
|
}
|
64
61
|
end
|
62
|
+
|
63
|
+
def with_space_search(term)
|
64
|
+
[
|
65
|
+
{"email": term},
|
66
|
+
{"first_name": term},
|
67
|
+
{"last_name": term}
|
68
|
+
]
|
69
|
+
end
|
70
|
+
|
71
|
+
def name_search(term)
|
72
|
+
search_arr = []
|
73
|
+
if /\s/.match?(term)
|
74
|
+
term.split.each do |t|
|
75
|
+
search_arr.append("first_name": t)
|
76
|
+
search_arr.append("last_name": t)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
search_arr
|
80
|
+
end
|
65
81
|
end
|
66
82
|
end
|
67
83
|
end
|