crapi 0.1.3 → 1.0.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/.circleci/config.yml +63 -0
- data/.rubocop.yml +53 -70
- data/.ruby-version +1 -1
- data/Gemfile.lock +66 -42
- data/README.md +29 -27
- data/crapi.gemspec +15 -15
- data/docs/{Crapi → CrAPI}/ArgumentError.html +15 -16
- data/docs/{Crapi → CrAPI}/BadHttpResponseError.html +15 -16
- data/docs/{Crapi → CrAPI}/Client.html +144 -174
- data/docs/{Crapi → CrAPI}/Error.html +14 -15
- data/docs/{Crapi → CrAPI}/Proxy.html +65 -89
- data/docs/CrAPI.html +157 -0
- data/docs/Net/HTTP.html +18 -23
- data/docs/_index.html +19 -19
- data/docs/class_list.html +3 -3
- data/docs/css/style.css +7 -9
- data/docs/file.README.html +68 -87
- data/docs/file_list.html +2 -2
- data/docs/frames.html +2 -2
- data/docs/index.html +68 -87
- data/docs/js/app.js +69 -3
- data/docs/method_list.html +34 -34
- data/docs/top-level-namespace.html +8 -8
- data/lib/crapi/client.rb +224 -228
- data/lib/crapi/errors.rb +7 -7
- data/lib/crapi/proxy.rb +82 -82
- data/lib/crapi/version.rb +10 -10
- data/lib/crapi.rb +3 -1
- data/spec/crapi_client_spec.rb +121 -0
- data/spec/crapi_errors_spec.rb +17 -0
- data/spec/crapi_proxy_spec.rb +121 -0
- data/spec/crapi_spec.rb +5 -0
- data/spec/spec_helper.rb +19 -0
- metadata +66 -52
- data/.travis.yml +0 -5
- data/docs/Crapi.html +0 -153
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '075697a77cf82734a58523c8c65c8395d754ad3e7a0a41648a5d33228e62b77e'
|
4
|
+
data.tar.gz: c5368393dd38933dd3e10ee4bb23dfc809e5ab023dbdccfa50a882d23fdf41a6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9340c8ec96dd620bcd6e41388af546e2adb5b01edc331209d2f541f6229e396caece559911bbbb16879d2cd53b1ca3bf2af5cf0dbfb28ed2b5525a2892a6408a
|
7
|
+
data.tar.gz: c72ae40ed2ca9b4bcaef675e4e8326dc33e4764b9c577a10fddfbdbc52653e4458f386e363f4c5d42e04c033eb8782ca5bef0071cfd2d67f65c208a028d6130e
|
@@ -0,0 +1,63 @@
|
|
1
|
+
# Ruby CircleCI 2.0 configuration file
|
2
|
+
#
|
3
|
+
# Check https://circleci.com/docs/2.0/language-ruby/ for more details
|
4
|
+
#
|
5
|
+
version: 2
|
6
|
+
jobs:
|
7
|
+
build:
|
8
|
+
docker:
|
9
|
+
# specify the version you desire here
|
10
|
+
- image: cimg/ruby:3.0
|
11
|
+
|
12
|
+
# Specify service dependencies here if necessary
|
13
|
+
# CircleCI maintains a library of pre-built images
|
14
|
+
# documented at https://circleci.com/docs/2.0/circleci-images/
|
15
|
+
# - image: circleci/postgres:9.4
|
16
|
+
|
17
|
+
working_directory: ~/repo
|
18
|
+
|
19
|
+
steps:
|
20
|
+
- checkout
|
21
|
+
|
22
|
+
# Download and cache dependencies
|
23
|
+
- restore_cache:
|
24
|
+
keys:
|
25
|
+
- v1-dependencies-{{ checksum "Gemfile.lock" }}
|
26
|
+
# fallback to using the latest cache if no exact match is found
|
27
|
+
- v1-dependencies
|
28
|
+
|
29
|
+
- run:
|
30
|
+
name: update bundler
|
31
|
+
command: |
|
32
|
+
gem install bundler --version $(tail -n 1 ~/repo/Gemfile.lock | tr -d ' ')
|
33
|
+
|
34
|
+
- run:
|
35
|
+
name: install dependencies
|
36
|
+
command: |
|
37
|
+
bundle install --jobs=4 --retry=3 --path vendor/bundle
|
38
|
+
|
39
|
+
- save_cache:
|
40
|
+
paths:
|
41
|
+
- ./vendor/bundle
|
42
|
+
key: v1-dependencies-{{ checksum "Gemfile.lock" }}
|
43
|
+
|
44
|
+
# run tests!
|
45
|
+
- run:
|
46
|
+
name: run tests
|
47
|
+
command: |
|
48
|
+
mkdir /tmp/test-results
|
49
|
+
TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timings)"
|
50
|
+
|
51
|
+
bundle exec rspec --format progress \
|
52
|
+
--format RspecJunitFormatter \
|
53
|
+
--out /tmp/test-results/rspec.xml \
|
54
|
+
--format progress \
|
55
|
+
-- \
|
56
|
+
$TEST_FILES
|
57
|
+
|
58
|
+
# collect reports
|
59
|
+
- store_test_results:
|
60
|
+
path: /tmp/test-results
|
61
|
+
- store_artifacts:
|
62
|
+
path: /tmp/test-results
|
63
|
+
destination: test-results
|
data/.rubocop.yml
CHANGED
@@ -1,81 +1,64 @@
|
|
1
1
|
AllCops:
|
2
|
-
TargetRubyVersion:
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
- "**/Cheffile"
|
10
|
-
Exclude:
|
11
|
-
- "vendor/**/*"
|
12
|
-
- "db/**/*"
|
13
|
-
- "tmp/**/*"
|
14
|
-
- "true/**/*"
|
15
|
-
Metrics/ClassLength:
|
16
|
-
Description: Avoid classes longer than 100 lines of code.
|
17
|
-
Enabled: false
|
18
|
-
CountComments: false
|
19
|
-
Max: 100
|
20
|
-
Metrics/LineLength:
|
21
|
-
Description: Limit lines to 100 characters.
|
2
|
+
TargetRubyVersion: 3.0
|
3
|
+
SuggestExtensions: false
|
4
|
+
NewCops: enable
|
5
|
+
|
6
|
+
|
7
|
+
Layout/EmptyLineAfterGuardClause:
|
8
|
+
# Add empty line after guard clause.
|
22
9
|
Enabled: false
|
23
|
-
|
10
|
+
|
11
|
+
Layout/LineLength:
|
12
|
+
# Checks that line length does not exceed the configured limit.
|
13
|
+
Max: 150
|
14
|
+
|
15
|
+
|
16
|
+
Metrics/AbcSize:
|
17
|
+
# A calculated magnitude based on number of assignments, branches, and conditions.
|
18
|
+
Max: 30
|
19
|
+
|
24
20
|
Metrics/BlockLength:
|
21
|
+
# Avoid long blocks with many lines.
|
25
22
|
Exclude:
|
26
23
|
- 'spec/**/*.rb'
|
27
|
-
|
28
|
-
Description: Avoid methods longer than 10 lines of code.
|
29
|
-
StyleGuide: https://github.com/bbatsov/ruby-style-guide#short-methods
|
30
|
-
Enabled: false
|
31
|
-
CountComments: false
|
32
|
-
Max: 10
|
33
|
-
Metrics/AbcSize:
|
34
|
-
Description: A calculated magnitude based on number of assignments, branches, and conditions.
|
35
|
-
Enabled: false
|
36
|
-
Max: 15
|
24
|
+
|
37
25
|
Metrics/CyclomaticComplexity:
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
Enabled: false
|
47
|
-
Style/RegexpLiteral:
|
48
|
-
Description: Enforces using / or %r around regular expressions.
|
49
|
-
EnforcedStyle: percent_r
|
26
|
+
# A complexity metric that is strongly correlated to the number of test cases needed to validate a method.
|
27
|
+
Max: 10
|
28
|
+
|
29
|
+
Metrics/MethodLength:
|
30
|
+
# Avoid methods longer than 25 lines of code.
|
31
|
+
Max: 25
|
32
|
+
|
33
|
+
|
50
34
|
Style/AsciiComments:
|
51
|
-
#
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
Description: Document classes and non-namespace modules.
|
59
|
-
Enabled: false
|
35
|
+
# Use only ASCII symbols in comments.
|
36
|
+
#
|
37
|
+
# NLC: We're allowing non-breaking spaces (' '), as they're needed to prevent
|
38
|
+
# browsers from collapsing multiple spaces in documentation code blocks.
|
39
|
+
AllowedChars:
|
40
|
+
- ' '
|
41
|
+
|
60
42
|
Style/ClassAndModuleChildren:
|
61
|
-
|
62
|
-
Enabled: false
|
63
|
-
Style/FrozenStringLiteralComment:
|
64
|
-
Enabled: false
|
65
|
-
Style/EmptyMethod:
|
43
|
+
# Checks style of children classes and modules.
|
66
44
|
Enabled: false
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
- 'bin/**/*'
|
71
|
-
Style/BlockDelimiters:
|
72
|
-
Description: Check for uses of braces or do/end around single line or multi-line blocks.
|
73
|
-
Enabled: true
|
74
|
-
Exclude:
|
75
|
-
- 'spec/**/*.rb'
|
76
|
-
Style/RescueModifier:
|
77
|
-
Description: This cop checks for uses of rescue in its modifier form.
|
45
|
+
|
46
|
+
Style/FetchEnvVar:
|
47
|
+
# Suggests `ENV.fetch` for the replacement of `ENV[]`.
|
78
48
|
Enabled: false
|
79
|
-
|
80
|
-
|
49
|
+
|
50
|
+
Style/FrozenStringLiteralComment:
|
51
|
+
# Add the frozen_string_literal comment to the top of files to help transition to frozen string literals by default.
|
52
|
+
EnforcedStyle: never
|
53
|
+
|
54
|
+
Style/NumericLiterals:
|
55
|
+
# Add underscores to large numeric literals to improve their readability.
|
81
56
|
Enabled: false
|
57
|
+
|
58
|
+
Style/RegexpLiteral:
|
59
|
+
# Use / or %r around regular expressions.
|
60
|
+
EnforcedStyle: percent_r
|
61
|
+
|
62
|
+
Style/StringLiterals:
|
63
|
+
# Check for use of ' vs ".
|
64
|
+
ConsistentQuotesInMultiline: true
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
3.0
|
data/Gemfile.lock
CHANGED
@@ -2,61 +2,85 @@ PATH
|
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
4
|
crapi (0.1.3)
|
5
|
-
activesupport (
|
5
|
+
activesupport (>= 6.0, < 7.1)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
|
-
activesupport (
|
10
|
+
activesupport (7.0.4)
|
11
11
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
12
|
-
i18n (>=
|
13
|
-
minitest (
|
14
|
-
tzinfo (~>
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
12
|
+
i18n (>= 1.6, < 2)
|
13
|
+
minitest (>= 5.1)
|
14
|
+
tzinfo (~> 2.0)
|
15
|
+
addressable (2.8.1)
|
16
|
+
public_suffix (>= 2.0.2, < 6.0)
|
17
|
+
ast (2.4.2)
|
18
|
+
concurrent-ruby (1.1.10)
|
19
|
+
crack (0.4.5)
|
20
|
+
rexml
|
21
|
+
diff-lcs (1.5.0)
|
22
|
+
hashdiff (1.0.1)
|
23
|
+
i18n (1.12.0)
|
20
24
|
concurrent-ruby (~> 1.0)
|
21
|
-
|
22
|
-
minitest (5.
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
rspec (3.
|
31
|
-
rspec-core (~> 3.
|
32
|
-
rspec-expectations (~> 3.
|
33
|
-
rspec-mocks (~> 3.
|
34
|
-
rspec-core (3.
|
35
|
-
rspec-support (~> 3.
|
36
|
-
rspec-expectations (3.
|
25
|
+
json (2.6.3)
|
26
|
+
minitest (5.16.3)
|
27
|
+
parallel (1.22.1)
|
28
|
+
parser (3.1.3.0)
|
29
|
+
ast (~> 2.4.1)
|
30
|
+
public_suffix (5.0.1)
|
31
|
+
rainbow (3.1.1)
|
32
|
+
regexp_parser (2.6.1)
|
33
|
+
rexml (3.2.5)
|
34
|
+
rspec (3.12.0)
|
35
|
+
rspec-core (~> 3.12.0)
|
36
|
+
rspec-expectations (~> 3.12.0)
|
37
|
+
rspec-mocks (~> 3.12.0)
|
38
|
+
rspec-core (3.12.0)
|
39
|
+
rspec-support (~> 3.12.0)
|
40
|
+
rspec-expectations (3.12.1)
|
37
41
|
diff-lcs (>= 1.2.0, < 2.0)
|
38
|
-
rspec-support (~> 3.
|
39
|
-
rspec-mocks (3.
|
42
|
+
rspec-support (~> 3.12.0)
|
43
|
+
rspec-mocks (3.12.1)
|
40
44
|
diff-lcs (>= 1.2.0, < 2.0)
|
41
|
-
rspec-support (~> 3.
|
42
|
-
rspec-support (3.
|
43
|
-
rspec_junit_formatter (0.
|
45
|
+
rspec-support (~> 3.12.0)
|
46
|
+
rspec-support (3.12.0)
|
47
|
+
rspec_junit_formatter (0.6.0)
|
44
48
|
rspec-core (>= 2, < 4, != 2.12.0)
|
45
|
-
|
46
|
-
|
47
|
-
|
49
|
+
rubocop (1.41.1)
|
50
|
+
json (~> 2.3)
|
51
|
+
parallel (~> 1.10)
|
52
|
+
parser (>= 3.1.2.1)
|
53
|
+
rainbow (>= 2.2.2, < 4.0)
|
54
|
+
regexp_parser (>= 1.8, < 3.0)
|
55
|
+
rexml (>= 3.2.5, < 4.0)
|
56
|
+
rubocop-ast (>= 1.23.0, < 2.0)
|
57
|
+
ruby-progressbar (~> 1.7)
|
58
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
59
|
+
rubocop-ast (1.24.1)
|
60
|
+
parser (>= 3.1.1.0)
|
61
|
+
ruby-progressbar (1.11.0)
|
62
|
+
tzinfo (2.0.5)
|
63
|
+
concurrent-ruby (~> 1.0)
|
64
|
+
unicode-display_width (2.3.0)
|
65
|
+
webmock (3.18.1)
|
66
|
+
addressable (>= 2.8.0)
|
67
|
+
crack (>= 0.3.2)
|
68
|
+
hashdiff (>= 0.4.0, < 2.0.0)
|
69
|
+
webrick (1.7.0)
|
70
|
+
yard (0.9.28)
|
71
|
+
webrick (~> 1.7.0)
|
48
72
|
|
49
73
|
PLATFORMS
|
50
|
-
|
74
|
+
x86_64-linux
|
51
75
|
|
52
76
|
DEPENDENCIES
|
53
|
-
bundler (~>
|
77
|
+
bundler (~> 2)
|
54
78
|
crapi!
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
79
|
+
rspec (~> 3)
|
80
|
+
rspec_junit_formatter
|
81
|
+
rubocop
|
82
|
+
webmock
|
83
|
+
yard
|
60
84
|
|
61
85
|
BUNDLED WITH
|
62
|
-
|
86
|
+
2.3.24
|
data/README.md
CHANGED
@@ -1,10 +1,12 @@
|
|
1
|
-
|
1
|
+
[](https://rubygems.org/gems/crapi)
|
2
|
+
[](https://tldrlegal.com/license/mit-license)
|
2
3
|
|
3
|
-
Crapi is yet another API wrapper. Yes, there is no shortage of these out there, but no other API wrapper gem (that I could find) provided the kind of functionality you get from the Crapi::Proxy class, which is really the biggest benefit here.
|
4
4
|
|
5
|
-
|
5
|
+
# CrAPI
|
6
6
|
|
7
|
-
|
7
|
+
CrAPI is yet another <u>Cr</u>ud <u>API</u> client wrapper. Yes, there is no shortage of these out there, but no other API wrapper gem (that I could find) provided the kind of functionality you get from the CrAPI::Proxy class, which is really the biggest benefit here.
|
8
|
+
|
9
|
+
**CrAPI::Client** will connect to the target system and handily provides a base path for you (because some APIs and services have a path that is always part of every request), **CrAPI::Proxy** lets you add to the root client's base path or default set of headers without having to create any new connections.
|
8
10
|
|
9
11
|
|
10
12
|
## Installation
|
@@ -24,24 +26,24 @@ Or install it yourself as:
|
|
24
26
|
$ gem install crapi
|
25
27
|
|
26
28
|
|
27
|
-
## Using The
|
29
|
+
## Using The CrAPI Tools
|
28
30
|
|
29
31
|
### Client Usage
|
30
32
|
|
31
33
|
```ruby
|
32
|
-
|
34
|
+
# Connect to an API.
|
33
35
|
|
34
|
-
api =
|
36
|
+
api = CrAPI::Client.new('https://jsonplaceholder.typicode.com/')
|
35
37
|
|
36
38
|
|
37
|
-
|
39
|
+
# Issue requests against the API.
|
38
40
|
|
39
|
-
api.get('users/1')
|
41
|
+
api.get('users/1') # GETs /users/1; returns a Hash.
|
40
42
|
|
41
|
-
api.get('posts', query: { userId: 2 })
|
43
|
+
api.get('posts', query: { userId: 2 }) # GETs /posts?userId=2; returns an Array.
|
42
44
|
|
43
45
|
mew_comment = { user: 'megapwner', text: 'FRIST!!1!' }
|
44
|
-
api.post('comments', payload: new_comment)
|
46
|
+
api.post('comments', payload: new_comment) # POSTs to /comments; returns a Hash.
|
45
47
|
```
|
46
48
|
|
47
49
|
---
|
@@ -49,40 +51,40 @@ api.post('comments', payload: new_comment) ## POSTs to /comments; returns a Has
|
|
49
51
|
### Proxy Usage
|
50
52
|
|
51
53
|
```ruby
|
52
|
-
|
54
|
+
# Connect to an API.
|
53
55
|
|
54
|
-
api =
|
56
|
+
api = CrAPI::Client.new('https://versioned.fake-api.com/api/')
|
55
57
|
|
56
58
|
|
57
|
-
|
59
|
+
# Back in the v1 days, versioning of this API was via the URL ...
|
58
60
|
|
59
61
|
v1 = api.new_proxy('/v1')
|
60
62
|
|
61
|
-
v1.get('data')
|
62
|
-
v1.post('data', payload: values)
|
63
|
+
v1.get('data') # GETs /api/v1/data; pretty straight-forward.
|
64
|
+
v1.post('data', payload: values) # POSTs *values* to /api/v1/data.
|
63
65
|
|
64
66
|
|
65
|
-
|
67
|
+
# For API v2, they switched to an Accept header approach ...
|
66
68
|
|
67
69
|
v2 = api.new_proxy('/', headers: { Accept: 'application/vnd.fake-api.v2+json' })
|
68
70
|
|
69
|
-
v2.get('data')
|
71
|
+
v2.get('data') # GETs /api/data with the v2 header.
|
70
72
|
|
71
73
|
|
72
|
-
|
74
|
+
# API v3 keeps the Accept header approach ...
|
73
75
|
|
74
76
|
v3 = api.new_proxy('/', headers: { Accept: 'application/vnd.fake-api.v3+json' })
|
75
77
|
|
76
|
-
v3.get('data')
|
78
|
+
v3.get('data') # GETs /api/data with the v3 header.
|
77
79
|
|
78
80
|
|
79
|
-
|
80
|
-
|
81
|
+
# Note that only one connection to the client is made and you can easily make
|
82
|
+
# v1, v2, and v3 API calls ad hoc without having to juggle paths/headers yourself.
|
81
83
|
```
|
82
84
|
|
83
85
|
---
|
84
86
|
|
85
|
-
[Consult the repo docs for the full
|
87
|
+
[Consult the repo docs for the full CrAPI documentation.](http://nestor-custodio.github.io/crapi/CrAPI.html)
|
86
88
|
|
87
89
|
|
88
90
|
## Feature Roadmap / Future Development
|
@@ -95,13 +97,13 @@ Additional features/options coming in the future:
|
|
95
97
|
|
96
98
|
## Contribution / Development
|
97
99
|
|
98
|
-
Bug reports and pull requests are welcome
|
100
|
+
Bug reports and pull requests are welcome at: [https://github.com/nestor-custodio/crapi](https://github.com/nestor-custodio/crapi)
|
99
101
|
|
100
|
-
After checking out the repo, run `bin/setup` to install dependencies. Then, run `
|
102
|
+
After checking out the repo, run `bin/setup` to install dependencies. Then, run `bundle exec rspec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
101
103
|
|
102
|
-
Linting is courtesy of [Rubocop](https://
|
104
|
+
Linting is courtesy of [Rubocop](https://docs.rubocop.org/) (`bundle exec rubocop`) and documentation is built using [Yard](https://yardoc.org/) (`bundle exec yard`). Please ensure you have a clean bill of health from Rubocop and that any new features and/or changes to behaviour are reflected in the documentation before submitting a pull request.
|
103
105
|
|
104
106
|
|
105
107
|
## License
|
106
108
|
|
107
|
-
|
109
|
+
CrAPI is available as open source under the terms of the [MIT License](https://tldrlegal.com/license/mit-license).
|
data/crapi.gemspec
CHANGED
@@ -1,31 +1,31 @@
|
|
1
|
-
|
2
1
|
lib = File.expand_path('lib', __dir__)
|
3
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
3
|
require 'crapi/version'
|
5
4
|
|
6
5
|
Gem::Specification.new do |spec|
|
6
|
+
spec.required_ruby_version = ['>= 3.0', '< 3.2']
|
7
|
+
|
7
8
|
spec.name = 'crapi'
|
8
|
-
spec.version =
|
9
|
+
spec.version = CrAPI::VERSION
|
9
10
|
spec.authors = ['Nestor Custodio']
|
10
11
|
spec.email = ['sakimorix@gmail.com']
|
11
12
|
|
12
13
|
spec.summary = 'A simple API client with built-in segment/header proxy support. "... It could be better." ™️'
|
13
|
-
spec.homepage = 'https://
|
14
|
+
spec.homepage = 'https://github.com/nestor-custodio/crapi'
|
14
15
|
spec.license = 'MIT'
|
15
16
|
|
16
|
-
spec.files = `git ls-files -z`.split("\x0").reject
|
17
|
-
|
18
|
-
end
|
19
|
-
spec.bindir = 'exe'
|
20
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
17
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |filename| filename.start_with? 'test/' }
|
18
|
+
spec.executables = []
|
21
19
|
spec.require_paths = ['lib']
|
22
20
|
|
23
|
-
spec.
|
24
|
-
|
25
|
-
spec.
|
26
|
-
spec.add_development_dependency 'rake', '~> 10.0'
|
27
|
-
spec.add_development_dependency 'rspec', '~> 3.0'
|
28
|
-
spec.add_development_dependency 'rspec_junit_formatter', '~> 0.3'
|
21
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
22
|
+
|
23
|
+
spec.add_dependency 'activesupport', ['>= 6.0', '< 7.1']
|
29
24
|
|
30
|
-
spec.
|
25
|
+
spec.add_development_dependency 'bundler', '~> 2'
|
26
|
+
spec.add_development_dependency 'rspec', '~> 3'
|
27
|
+
spec.add_development_dependency 'rspec_junit_formatter'
|
28
|
+
spec.add_development_dependency 'rubocop'
|
29
|
+
spec.add_development_dependency 'webmock'
|
30
|
+
spec.add_development_dependency 'yard'
|
31
31
|
end
|
@@ -4,18 +4,18 @@
|
|
4
4
|
<meta charset="utf-8">
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
6
|
<title>
|
7
|
-
Exception:
|
7
|
+
Exception: CrAPI::ArgumentError
|
8
8
|
|
9
|
-
— Documentation by YARD 0.9.
|
9
|
+
— Documentation by YARD 0.9.28
|
10
10
|
|
11
11
|
</title>
|
12
12
|
|
13
|
-
<link rel="stylesheet" href="../css/style.css" type="text/css"
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" />
|
14
14
|
|
15
|
-
<link rel="stylesheet" href="../css/common.css" type="text/css"
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" />
|
16
16
|
|
17
|
-
<script type="text/javascript"
|
18
|
-
pathId = "
|
17
|
+
<script type="text/javascript">
|
18
|
+
pathId = "CrAPI::ArgumentError";
|
19
19
|
relpath = '../';
|
20
20
|
</script>
|
21
21
|
|
@@ -37,7 +37,7 @@
|
|
37
37
|
<div id="menu">
|
38
38
|
|
39
39
|
<a href="../_index.html">Index (A)</a> »
|
40
|
-
<span class='title'><span class='object_link'><a href="../
|
40
|
+
<span class='title'><span class='object_link'><a href="../CrAPI.html" title="CrAPI (module)">CrAPI</a></span></span>
|
41
41
|
»
|
42
42
|
<span class="title">ArgumentError</span>
|
43
43
|
|
@@ -59,7 +59,7 @@
|
|
59
59
|
<div class="clear"></div>
|
60
60
|
</div>
|
61
61
|
|
62
|
-
<div id="content"><h1>Exception:
|
62
|
+
<div id="content"><h1>Exception: CrAPI::ArgumentError
|
63
63
|
|
64
64
|
|
65
65
|
|
@@ -69,16 +69,16 @@
|
|
69
69
|
<dl>
|
70
70
|
<dt>Inherits:</dt>
|
71
71
|
<dd>
|
72
|
-
<span class="inheritName"><span class='object_link'><a href="Error.html" title="
|
72
|
+
<span class="inheritName"><span class='object_link'><a href="Error.html" title="CrAPI::Error (class)">Error</a></span></span>
|
73
73
|
|
74
74
|
<ul class="fullTree">
|
75
75
|
<li>Object</li>
|
76
76
|
|
77
77
|
<li class="next">StandardError</li>
|
78
78
|
|
79
|
-
<li class="next"><span class='object_link'><a href="Error.html" title="
|
79
|
+
<li class="next"><span class='object_link'><a href="Error.html" title="CrAPI::Error (class)">Error</a></span></li>
|
80
80
|
|
81
|
-
<li class="next">
|
81
|
+
<li class="next">CrAPI::ArgumentError</li>
|
82
82
|
|
83
83
|
</ul>
|
84
84
|
<a href="#" class="inheritanceTree">show all</a>
|
@@ -105,8 +105,7 @@
|
|
105
105
|
|
106
106
|
<h2>Overview</h2><div class="docstring">
|
107
107
|
<div class="discussion">
|
108
|
-
|
109
|
-
<p>An error relating to missing, invalid, or incompatible method arguments.</p>
|
108
|
+
<p>An error relating to missing, invalid, or incompatible method arguments.</p>
|
110
109
|
|
111
110
|
|
112
111
|
</div>
|
@@ -133,9 +132,9 @@
|
|
133
132
|
</div>
|
134
133
|
|
135
134
|
<div id="footer">
|
136
|
-
Generated on
|
137
|
-
<a href="
|
138
|
-
0.9.
|
135
|
+
Generated on Mon Jan 2 15:16:45 2023 by
|
136
|
+
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
137
|
+
0.9.28 (ruby-3.0.4).
|
139
138
|
</div>
|
140
139
|
|
141
140
|
</div>
|