acfs 1.7.0 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +144 -116
- data/README.md +19 -24
- data/acfs.gemspec +7 -10
- data/lib/acfs/collections/paginatable.rb +11 -11
- data/lib/acfs/configuration.rb +1 -1
- data/lib/acfs/errors.rb +6 -6
- data/lib/acfs/global.rb +2 -2
- data/lib/acfs/location.rb +1 -1
- data/lib/acfs/resource/attributes/uuid.rb +1 -1
- data/lib/acfs/resource/attributes.rb +1 -1
- data/lib/acfs/resource/dirty.rb +1 -1
- data/lib/acfs/resource/operational.rb +4 -4
- data/lib/acfs/resource/query_methods.rb +3 -3
- data/lib/acfs/response/status.rb +1 -1
- data/lib/acfs/service/middleware.rb +2 -2
- data/lib/acfs/singleton_resource.rb +2 -2
- data/lib/acfs/stub.rb +1 -1
- data/lib/acfs/version.rb +2 -2
- data/lib/acfs/yard.rb +1 -0
- data/spec/acfs/adapter/typhoeus_spec.rb +3 -3
- data/spec/acfs/configuration_spec.rb +1 -1
- data/spec/acfs/global_spec.rb +5 -5
- data/spec/acfs/location_spec.rb +1 -1
- data/spec/acfs/middleware/json_spec.rb +1 -1
- data/spec/acfs/middleware/message_pack_spec.rb +1 -1
- data/spec/acfs/operation_spec.rb +1 -1
- data/spec/acfs/resource/attributes/boolean_spec.rb +31 -31
- data/spec/acfs/resource/attributes/date_time_spec.rb +9 -9
- data/spec/acfs/resource/attributes/dict_spec.rb +10 -10
- data/spec/acfs/resource/attributes/float_spec.rb +11 -11
- data/spec/acfs/resource/attributes/integer_spec.rb +6 -6
- data/spec/acfs/resource/attributes/list_spec.rb +1 -1
- data/spec/acfs/resource/attributes/uuid_spec.rb +8 -8
- data/spec/acfs/resource/attributes_spec.rb +8 -8
- data/spec/acfs/resource/dirty_spec.rb +1 -1
- data/spec/acfs/resource/persistence_spec.rb +7 -7
- data/spec/acfs/resource/query_methods_spec.rb +1 -1
- data/spec/acfs/runner_spec.rb +12 -12
- data/spec/acfs/stub_spec.rb +13 -18
- data/spec/acfs_spec.rb +4 -4
- data/spec/spec_helper.rb +9 -5
- data/spec/support/hash.rb +1 -1
- data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/README.md +23 -0
- data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/rubocop-config.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/CHANGELOG.md +205 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/README.rdoc +57 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/CHANGELOG.md +67 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/README.rdoc +40 -0
- data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/CHANGELOG.md +110 -0
- data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/README.rdoc +266 -0
- data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/CHANGELOG.md +157 -0
- data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/README.rdoc +40 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/CHANGELOG.md +301 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/LICENSE.txt +202 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/README.md +121 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/addressable.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/README.md +243 -0
- data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/appraisal.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/gems/base64-0.2.0/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/base64-0.2.0/README.md +48 -0
- data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/README.md +138 -0
- data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/benchmark.gemspec +32 -0
- data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.1.9/LICENSE +56 -0
- data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.1.9/bigdecimal.gemspec +57 -0
- data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/README.md +258 -0
- data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/builder.gemspec +49 -0
- data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/CHANGELOG.md +603 -0
- data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/LICENSE.txt +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/README.md +407 -0
- data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/README.md +167 -0
- data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/connection_pool.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/gems/crack-1.0.0/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/crack-1.0.0/README.md +43 -0
- data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/LICENSE +18 -0
- data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/README.md +192 -0
- data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/crass.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.5.1/License.md +41 -0
- data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.5.1/README.rdoc +84 -0
- data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.1/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.1/drb.gemspec +41 -0
- data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/CHANGELOG +111 -0
- data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/README.rdoc +151 -0
- data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/CHANGELOG.md +375 -0
- data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/README.md +118 -0
- data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/ethon.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/CHANGELOG.md +465 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/LICENSE +24 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/LICENSE.SPECS +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/README.md +137 -0
- data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/ffi.gemspec +42 -0
- data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/LICENSE +19 -0
- data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/README.md +298 -0
- data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/changelog.md +119 -0
- data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/hashdiff.gemspec +39 -0
- data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.6/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.6/README.md +127 -0
- data/vendor/bundle/ruby/3.4.0/gems/json-2.9.1/README.md +195 -0
- data/vendor/bundle/ruby/3.4.0/gems/json-2.9.1/json.gemspec +64 -0
- data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/README.md +104 -0
- data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/logger.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/CHANGELOG.md +591 -0
- data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/MIT-LICENSE.txt +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/README.md +410 -0
- data/vendor/bundle/ruby/3.4.0/gems/minitest-5.25.4/README.rdoc +835 -0
- data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/CHANGELOG.md +275 -0
- data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/LICENSE.md +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/README.md +121 -0
- data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/LICENSE-DEPENDENCIES.md +2224 -0
- data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/LICENSE.md +9 -0
- data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/README.md +293 -0
- data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/CHANGELOG.md +491 -0
- data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/README.md +222 -0
- data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/ChangeLog +846 -0
- data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.ja.rdoc +58 -0
- data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.rdoc +60 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/CHANGELOG.md +998 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/README.md +328 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-session-2.1.0/license.md +72 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-session-2.1.0/readme.md +47 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/MIT-LICENSE.txt +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/README.md +139 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.2.0/MIT-LICENSE +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.2.0/README.md +91 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/CHANGELOG.md +255 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/MIT-LICENSE +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/README.md +267 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/README.rdoc +155 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/rake.gemspec +101 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/README.md +107 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/rake-release.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rexml-3.4.0/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/rexml-3.4.0/README.md +57 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.0/LICENSE.md +27 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.0/README.md +47 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/Changelog.md +68 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/LICENSE.txt +27 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/README.md +76 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/rspec-collection_matchers.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/Changelog.md +2415 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/LICENSE.md +26 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/README.md +389 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/Changelog.md +1352 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/LICENSE.md +25 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/README.md +326 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/Changelog.md +73 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/LICENSE.txt +27 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/README.md +104 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/rspec-its.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/Changelog.md +1299 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/LICENSE.md +25 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/README.md +465 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/Changelog.md +408 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/LICENSE.md +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/README.md +40 -0
- data/vendor/bundle/ruby/3.4.0/gems/securerandom-0.4.1/README.md +72 -0
- data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/LICENSE.md +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/README.md +45 -0
- data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/thor.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/CHANGELOG.md +410 -0
- data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/LICENSE +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/README.md +588 -0
- data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/typhoeus.gemspec +25 -0
- data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/LICENSE +19 -0
- data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/README.md +406 -0
- data/vendor/bundle/ruby/3.4.0/gems/uri-1.0.2/README.md +55 -0
- data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/README.md +42 -0
- data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/CHANGELOG.md +2104 -0
- data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/README.md +1222 -0
- data/vendor/bundle/ruby/3.4.0/specifications/actionpack-8.0.1.gemspec +36 -0
- data/vendor/bundle/ruby/3.4.0/specifications/actionview-8.0.1.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/specifications/activemodel-8.0.1.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/activesupport-8.0.1.gemspec +38 -0
- data/vendor/bundle/ruby/3.4.0/specifications/addressable-2.8.7.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/appraisal-2.5.0.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/base64-0.2.0.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/benchmark-0.4.0.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/bigdecimal-3.1.9.gemspec +25 -0
- data/vendor/bundle/ruby/3.4.0/specifications/builder-3.3.0.gemspec +22 -0
- data/vendor/bundle/ruby/3.4.0/specifications/concurrent-ruby-1.3.5.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/connection_pool-2.5.0.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/crack-1.0.0.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/crass-1.0.6.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/diff-lcs-1.5.1.gemspec +37 -0
- data/vendor/bundle/ruby/3.4.0/specifications/drb-2.2.1.gemspec +22 -0
- data/vendor/bundle/ruby/3.4.0/specifications/erubi-1.13.1.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/ethon-0.16.0.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/ffi-1.17.1-x86_64-linux-gnu.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/hashdiff-1.1.2.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/i18n-1.14.6.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/json-2.9.1.gemspec +0 -0
- data/vendor/bundle/ruby/3.4.0/specifications/logger-1.6.5.gemspec +22 -0
- data/vendor/bundle/ruby/3.4.0/specifications/loofah-2.24.0.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/minitest-5.25.4.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/multi_json-1.15.0.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/nokogiri-1.18.1-x86_64-linux-gnu.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/public_suffix-6.0.1.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/racc-1.8.1.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rack-3.1.8.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rack-session-2.1.0.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rack-test-2.2.0.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rails-dom-testing-2.2.0.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rails-html-sanitizer-1.6.2.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rake-13.2.1.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rake-release-1.3.0.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rexml-3.4.0.gemspec +25 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-3.13.0.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-collection_matchers-1.2.1.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-core-3.13.2.gemspec +39 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-expectations-3.13.3.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-its-2.0.0.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-mocks-3.13.2.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-support-3.13.2.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/securerandom-0.4.1.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/thor-1.3.2.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/typhoeus-1.4.1.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/tzinfo-2.0.6.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/uri-1.0.2.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/useragent-0.16.11.gemspec +25 -0
- data/vendor/bundle/ruby/3.4.0/specifications/webmock-3.24.0.gemspec +45 -0
- metadata +204 -67
@@ -6,36 +6,36 @@ describe Acfs::Resource::Attributes::Integer do
|
|
6
6
|
let(:type) { Acfs::Resource::Attributes::Integer.new }
|
7
7
|
|
8
8
|
describe '#cast' do
|
9
|
-
subject(:cast) {
|
9
|
+
subject(:cast) { type.cast value }
|
10
10
|
|
11
11
|
context 'with nil' do
|
12
12
|
let(:value) { nil }
|
13
13
|
|
14
|
-
it { expect(cast
|
14
|
+
it { expect(cast).to be_nil }
|
15
15
|
end
|
16
16
|
|
17
17
|
context 'with empty string' do
|
18
18
|
let(:value) { '' }
|
19
19
|
|
20
|
-
it { expect(cast
|
20
|
+
it { expect(cast).to eq 0 }
|
21
21
|
end
|
22
22
|
|
23
23
|
context 'with blank string' do
|
24
24
|
let(:value) { " \t" }
|
25
25
|
|
26
|
-
it { expect(cast
|
26
|
+
it { expect(cast).to eq 0 }
|
27
27
|
end
|
28
28
|
|
29
29
|
context 'with string' do
|
30
30
|
let(:value) { '123' }
|
31
31
|
|
32
|
-
it { expect(cast
|
32
|
+
it { expect(cast).to eq 123 }
|
33
33
|
end
|
34
34
|
|
35
35
|
context 'with invalid string' do
|
36
36
|
let(:value) { '123a' }
|
37
37
|
|
38
|
-
it {
|
38
|
+
it { expect { cast }.to raise_error ArgumentError }
|
39
39
|
end
|
40
40
|
end
|
41
41
|
end
|
@@ -6,43 +6,43 @@ describe Acfs::Resource::Attributes::UUID do
|
|
6
6
|
let(:type) { Acfs::Resource::Attributes::UUID.new }
|
7
7
|
|
8
8
|
describe '#cast' do
|
9
|
-
subject(:cast) {
|
9
|
+
subject(:cast) { type.cast(value) }
|
10
10
|
|
11
11
|
context 'with nil' do
|
12
12
|
let(:value) { nil }
|
13
13
|
|
14
|
-
it { expect(cast
|
14
|
+
it { expect(cast).to be_nil }
|
15
15
|
end
|
16
16
|
|
17
17
|
context 'with empty string' do
|
18
18
|
let(:value) { '' }
|
19
19
|
|
20
|
-
it { expect(cast
|
20
|
+
it { expect(cast).to be_nil }
|
21
21
|
end
|
22
22
|
|
23
23
|
context 'with blank string' do
|
24
24
|
let(:value) { " \t" }
|
25
25
|
|
26
|
-
it { expect(cast
|
26
|
+
it { expect(cast).to be_nil }
|
27
27
|
end
|
28
28
|
|
29
29
|
context 'with string UUID' do
|
30
30
|
let(:value) { '450b7a40-94ad-11e3-baa8-0800200c9a66' }
|
31
31
|
|
32
|
-
it { expect(cast
|
33
|
-
it { expect(cast
|
32
|
+
it { expect(cast).to be_a String }
|
33
|
+
it { expect(cast).to eq value }
|
34
34
|
end
|
35
35
|
|
36
36
|
context 'with invalid string' do
|
37
37
|
let(:value) { 'invalid string' }
|
38
38
|
|
39
|
-
it {
|
39
|
+
it { expect { cast }.to raise_error TypeError, /invalid UUID/i }
|
40
40
|
end
|
41
41
|
|
42
42
|
context 'with invalid UUID' do
|
43
43
|
let(:value) { 'xxxxxxxx-yyyy-11e3-baa8-0800200c9a66' }
|
44
44
|
|
45
|
-
it {
|
45
|
+
it { expect { cast }.to raise_error TypeError, /invalid UUID/i }
|
46
46
|
end
|
47
47
|
end
|
48
48
|
end
|
@@ -41,7 +41,7 @@ describe Acfs::Resource::Attributes do
|
|
41
41
|
end
|
42
42
|
|
43
43
|
describe '#write_attributes' do
|
44
|
-
subject(:action) {
|
44
|
+
subject(:action) { m.write_attributes(params, **opts) }
|
45
45
|
|
46
46
|
before do
|
47
47
|
model.attribute :name, :string, default: 'John'
|
@@ -56,7 +56,7 @@ describe Acfs::Resource::Attributes do
|
|
56
56
|
let(:m) { model.new }
|
57
57
|
|
58
58
|
it 'updates attributes' do
|
59
|
-
expect
|
59
|
+
expect { action }.to change(m, :attributes)
|
60
60
|
.from(name: 'The Great John', age: 25)
|
61
61
|
.to(name: 'The Great James', age: 25)
|
62
62
|
end
|
@@ -64,17 +64,17 @@ describe Acfs::Resource::Attributes do
|
|
64
64
|
context 'without non-hash params' do
|
65
65
|
let(:params) { 'James' }
|
66
66
|
|
67
|
-
it { expect
|
68
|
-
it { expect(action
|
67
|
+
it { expect { action }.not_to change(m, :attributes) }
|
68
|
+
it { expect(action).to be false }
|
69
69
|
end
|
70
70
|
|
71
71
|
context 'with unknown attributes' do
|
72
72
|
let(:params) { {name: 'James', born_at: 'today'} }
|
73
73
|
|
74
|
-
it { expect
|
74
|
+
it { expect { action }.not_to raise_error }
|
75
75
|
|
76
76
|
it 'updates known attributes and store unknown' do
|
77
|
-
expect
|
77
|
+
expect { action }.to change(m, :attributes)
|
78
78
|
.from(name: 'The Great John', age: 25)
|
79
79
|
.to(name: 'The Great James', age: 25, born_at: 'today')
|
80
80
|
end
|
@@ -82,11 +82,11 @@ describe Acfs::Resource::Attributes do
|
|
82
82
|
context 'with unknown: :raise option' do
|
83
83
|
let(:opts) { {unknown: :raise} }
|
84
84
|
|
85
|
-
it { expect
|
85
|
+
it { expect { action }.to raise_error(ArgumentError, /unknown attribute/i) }
|
86
86
|
|
87
87
|
it do
|
88
88
|
expect do
|
89
|
-
action
|
89
|
+
action
|
90
90
|
rescue StandardError
|
91
91
|
true
|
92
92
|
end.not_to change(m, :attributes)
|
@@ -275,7 +275,7 @@ describe Acfs::Resource::Persistence do
|
|
275
275
|
rescue StandardError
|
276
276
|
nil
|
277
277
|
end
|
278
|
-
expect(model.errors.to_hash).to
|
278
|
+
expect(model.errors.to_hash).to eq({name: %w[required]})
|
279
279
|
end
|
280
280
|
end
|
281
281
|
end
|
@@ -286,8 +286,8 @@ describe Acfs::Resource::Persistence do
|
|
286
286
|
|
287
287
|
it 'creates new resource' do
|
288
288
|
model = model_class.create! data
|
289
|
-
expect(model.name).to
|
290
|
-
expect(model.age).to
|
289
|
+
expect(model.name).to eq 'Idefix'
|
290
|
+
expect(model.age).to eq 12
|
291
291
|
end
|
292
292
|
|
293
293
|
it 'is persisted' do
|
@@ -301,8 +301,8 @@ describe Acfs::Resource::Persistence do
|
|
301
301
|
|
302
302
|
it 'raises an error' do
|
303
303
|
expect { model_class.create! data }.to \
|
304
|
-
raise_error(
|
305
|
-
expect(error.errors).to
|
304
|
+
raise_error(Acfs::InvalidResource) do |error|
|
305
|
+
expect(error.errors).to eq({'name' => %w[required]})
|
306
306
|
end
|
307
307
|
end
|
308
308
|
end
|
@@ -315,8 +315,8 @@ describe Acfs::Resource::Persistence do
|
|
315
315
|
let(:data) { {name: 'Idefix', age: 12} }
|
316
316
|
|
317
317
|
it 'creates new resource' do
|
318
|
-
expect(model.name).to
|
319
|
-
expect(model.age).to
|
318
|
+
expect(model.name).to eq 'Idefix'
|
319
|
+
expect(model.age).to eq 12
|
320
320
|
end
|
321
321
|
|
322
322
|
it 'is persisted' do
|
@@ -333,7 +333,7 @@ describe Acfs::Resource::QueryMethods do
|
|
333
333
|
let(:model) { Single }
|
334
334
|
|
335
335
|
it '.find_by should not be defined' do
|
336
|
-
expect { model.find_by }.to raise_error
|
336
|
+
expect { model.find_by }.to raise_error Acfs::UnsupportedOperation
|
337
337
|
end
|
338
338
|
end
|
339
339
|
end
|
data/spec/acfs/runner_spec.rb
CHANGED
@@ -30,26 +30,26 @@ class NotificationCollector
|
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
33
|
-
describe
|
34
|
-
let(:adapter) {
|
35
|
-
let(:runner) {
|
33
|
+
describe Acfs::Runner do
|
34
|
+
let(:adapter) { NullAdapter.new }
|
35
|
+
let(:runner) { Acfs::Runner.new adapter }
|
36
36
|
let(:collector) { NotificationCollector.new }
|
37
37
|
let(:collector2) { NotificationCollector.new }
|
38
38
|
|
39
39
|
after do
|
40
|
-
|
41
|
-
|
40
|
+
ActiveSupport::Notifications.notifier =
|
41
|
+
ActiveSupport::Notifications::Fanout.new
|
42
42
|
end
|
43
43
|
|
44
44
|
describe '#instrumentation' do
|
45
45
|
before do
|
46
|
-
|
47
|
-
|
46
|
+
ActiveSupport::Notifications.subscribe(/^acfs\.runner/, collector)
|
47
|
+
ActiveSupport::Notifications.subscribe(/^acfs\.operation/, collector2)
|
48
48
|
end
|
49
49
|
|
50
50
|
describe '#process' do
|
51
51
|
it 'triggers event' do
|
52
|
-
runner.process
|
52
|
+
runner.process Acfs::Operation.new MyUser, :read, params: {id: 0}
|
53
53
|
expect(collector.events).to have(1).items
|
54
54
|
expect(collector2.events).to have(1).items
|
55
55
|
end
|
@@ -57,7 +57,7 @@ describe ::Acfs::Runner do
|
|
57
57
|
|
58
58
|
describe '#run' do
|
59
59
|
it 'triggers event' do
|
60
|
-
runner.run
|
60
|
+
runner.run Acfs::Operation.new MyUser, :read, params: {id: 0}
|
61
61
|
expect(collector.events).to have(1).items
|
62
62
|
expect(collector2.events).to have(0).items
|
63
63
|
end
|
@@ -65,7 +65,7 @@ describe ::Acfs::Runner do
|
|
65
65
|
|
66
66
|
describe '#enqueue' do
|
67
67
|
it 'triggers event' do
|
68
|
-
runner.enqueue
|
68
|
+
runner.enqueue Acfs::Operation.new MyUser, :read, params: {id: 0}
|
69
69
|
expect(collector.events).to have(1).items
|
70
70
|
expect(collector2.events).to have(0).items
|
71
71
|
end
|
@@ -79,7 +79,7 @@ describe ::Acfs::Runner do
|
|
79
79
|
|
80
80
|
it 'does not do requests when a middleware aborted' do
|
81
81
|
expect(adapter).not_to receive :run
|
82
|
-
runner.run
|
82
|
+
runner.run Acfs::Operation.new MyUser, :read, params: {id: 0}
|
83
83
|
end
|
84
84
|
end
|
85
85
|
|
@@ -90,7 +90,7 @@ describe ::Acfs::Runner do
|
|
90
90
|
|
91
91
|
it 'does not do requests when a middleware aborted' do
|
92
92
|
expect(adapter).not_to receive(:queue)
|
93
|
-
runner.enqueue
|
93
|
+
runner.enqueue Acfs::Operation.new MyUser, :read, params: {id: 0}
|
94
94
|
runner.start
|
95
95
|
end
|
96
96
|
end
|
data/spec/acfs/stub_spec.rb
CHANGED
@@ -126,7 +126,7 @@ describe Acfs::Stub do
|
|
126
126
|
it 'allows to raise error' do
|
127
127
|
expect do
|
128
128
|
Session.create! ident: 'john@exmaple.org', password: 'wrong'
|
129
|
-
end.to raise_error(
|
129
|
+
end.to raise_error(Acfs::InvalidResource)
|
130
130
|
end
|
131
131
|
end
|
132
132
|
|
@@ -204,7 +204,7 @@ describe Acfs::Stub do
|
|
204
204
|
let!(:update_stub) do
|
205
205
|
Acfs::Stub.resource MyUser, :update,
|
206
206
|
with: {id: 1, name: 'Jane Smith'},
|
207
|
-
return: ->(op) { op.data.
|
207
|
+
return: ->(op) { op.data.to_h {|k, v| [k, v.to_s.upcase] } }
|
208
208
|
end
|
209
209
|
|
210
210
|
it 'allows stub resource update' do
|
@@ -226,7 +226,7 @@ describe Acfs::Stub do
|
|
226
226
|
|
227
227
|
expect do
|
228
228
|
user.save!
|
229
|
-
end.to raise_error(
|
229
|
+
end.to raise_error(Acfs::InvalidResource)
|
230
230
|
end
|
231
231
|
|
232
232
|
it 'matches partial :with' do
|
@@ -283,9 +283,8 @@ describe Acfs::Stub do
|
|
283
283
|
|
284
284
|
context 'with a match in params' do
|
285
285
|
let(:op) do
|
286
|
-
instance_double(
|
287
|
-
allow(op).to
|
288
|
-
allow(op).to receive(:data).and_return({})
|
286
|
+
instance_double(Acfs::Operation).tap do |op|
|
287
|
+
allow(op).to receive_messages(full_params: {id: 1337, blub: 'abc'}, data: {})
|
289
288
|
end
|
290
289
|
end
|
291
290
|
|
@@ -296,9 +295,8 @@ describe Acfs::Stub do
|
|
296
295
|
|
297
296
|
context 'with a match in data' do
|
298
297
|
let(:op) do
|
299
|
-
instance_double(
|
300
|
-
allow(op).to
|
301
|
-
allow(op).to receive(:data).and_return(id: 1337, blub: 'abc')
|
298
|
+
instance_double(Acfs::Operation).tap do |op|
|
299
|
+
allow(op).to receive_messages(full_params: {}, data: {id: 1337, blub: 'abc'})
|
302
300
|
end
|
303
301
|
end
|
304
302
|
|
@@ -309,9 +307,8 @@ describe Acfs::Stub do
|
|
309
307
|
|
310
308
|
context 'with no match in params nor data' do
|
311
309
|
let(:op) do
|
312
|
-
instance_double(
|
313
|
-
allow(op).to
|
314
|
-
allow(op).to receive(:data).and_return({})
|
310
|
+
instance_double(Acfs::Operation).tap do |op|
|
311
|
+
allow(op).to receive_messages(full_params: {id: 1337}, data: {})
|
315
312
|
end
|
316
313
|
end
|
317
314
|
|
@@ -322,9 +319,8 @@ describe Acfs::Stub do
|
|
322
319
|
|
323
320
|
context 'with a wrong match' do
|
324
321
|
let(:op) do
|
325
|
-
instance_double(
|
326
|
-
allow(op).to
|
327
|
-
allow(op).to receive(:data).and_return({})
|
322
|
+
instance_double(Acfs::Operation).tap do |op|
|
323
|
+
allow(op).to receive_messages(full_params: {id: 1337, blub: 'abc'}, data: {})
|
328
324
|
end
|
329
325
|
end
|
330
326
|
|
@@ -335,9 +331,8 @@ describe Acfs::Stub do
|
|
335
331
|
|
336
332
|
context 'with a missing match' do
|
337
333
|
let(:op) do
|
338
|
-
instance_double(
|
339
|
-
allow(op).to
|
340
|
-
allow(op).to receive(:data).and_return({})
|
334
|
+
instance_double(Acfs::Operation).tap do |op|
|
335
|
+
allow(op).to receive_messages(full_params: {id: 1337, blub: 'abc'}, data: {})
|
341
336
|
end
|
342
337
|
end
|
343
338
|
|
data/spec/acfs_spec.rb
CHANGED
@@ -77,12 +77,12 @@ describe 'Acfs' do
|
|
77
77
|
stub = stub_request(:post, 'http://users.example.org/singles').to_return response(score: 250, user_id: 5)
|
78
78
|
|
79
79
|
single = Single.new user_id: 5, score: 250
|
80
|
-
expect(single.new?).to
|
80
|
+
expect(single.new?).to be true
|
81
81
|
|
82
82
|
single.save
|
83
83
|
expect(stub).to have_been_requested
|
84
84
|
|
85
|
-
expect(single.new?).to
|
85
|
+
expect(single.new?).to be false
|
86
86
|
expect(single.user_id).to eq 5
|
87
87
|
expect(single.score).to eq 250
|
88
88
|
end
|
@@ -126,7 +126,7 @@ describe 'Acfs' do
|
|
126
126
|
single = Single.find user_id: 5
|
127
127
|
Acfs.run
|
128
128
|
|
129
|
-
expect(single.new?).to
|
129
|
+
expect(single.new?).to be false
|
130
130
|
|
131
131
|
single.delete
|
132
132
|
|
@@ -134,7 +134,7 @@ describe 'Acfs' do
|
|
134
134
|
end
|
135
135
|
|
136
136
|
it 'raises error when calling .all' do
|
137
|
-
expect { Single.all }.to raise_error
|
137
|
+
expect { Single.all }.to raise_error Acfs::UnsupportedOperation
|
138
138
|
end
|
139
139
|
end
|
140
140
|
|
data/spec/spec_helper.rb
CHANGED
@@ -4,21 +4,23 @@ require 'rspec'
|
|
4
4
|
require 'webmock/rspec'
|
5
5
|
|
6
6
|
require 'simplecov'
|
7
|
+
require 'simplecov-cobertura'
|
8
|
+
|
7
9
|
SimpleCov.start do
|
8
10
|
add_filter 'spec'
|
9
11
|
end
|
10
12
|
|
11
|
-
|
12
|
-
|
13
|
-
SimpleCov
|
14
|
-
|
13
|
+
SimpleCov.formatters = [
|
14
|
+
SimpleCov::Formatter::HTMLFormatter,
|
15
|
+
SimpleCov::Formatter::CoberturaFormatter,
|
16
|
+
]
|
15
17
|
|
16
18
|
require 'bundler'
|
17
19
|
Bundler.require(:default, :test)
|
18
20
|
|
19
21
|
require 'acfs'
|
20
22
|
|
21
|
-
Dir[File.expand_path('spec/support/**/*.rb')].
|
23
|
+
Dir[File.expand_path('spec/support/**/*.rb')].each {|f| require f }
|
22
24
|
|
23
25
|
RSpec.configure do |config|
|
24
26
|
# ## Mock Framework
|
@@ -35,6 +37,8 @@ RSpec.configure do |config|
|
|
35
37
|
# --seed 1234
|
36
38
|
config.order = 'random'
|
37
39
|
|
40
|
+
config.raise_errors_for_deprecations!
|
41
|
+
|
38
42
|
config.before do
|
39
43
|
Acfs.runner.clear
|
40
44
|
Acfs::Stub.clear
|
data/spec/support/hash.rb
CHANGED
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2020 Jan Graichen
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
13
|
+
all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
THE SOFTWARE.
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# Shared Rubocop Configuration
|
2
|
+
|
3
|
+
Shared rubocop configuration and defaults for my libraries and projects.
|
4
|
+
|
5
|
+
## Usage
|
6
|
+
|
7
|
+
```ruby
|
8
|
+
# Gemfile
|
9
|
+
|
10
|
+
gem 'rubocop-config', github: 'jgraichen/rubocop-config', ref: 'v11', require: false
|
11
|
+
```
|
12
|
+
|
13
|
+
```yaml
|
14
|
+
# .rubocop.yml
|
15
|
+
|
16
|
+
inherit_gem:
|
17
|
+
rubocop-config: default.yml
|
18
|
+
|
19
|
+
AllCops:
|
20
|
+
TargetRubyVersion: 2.7
|
21
|
+
SuggestExtensions: False
|
22
|
+
NewCops: enable
|
23
|
+
```
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
# stub: rubocop-config 13.0.0 ruby lib
|
3
|
+
|
4
|
+
Gem::Specification.new do |s|
|
5
|
+
s.name = "rubocop-config".freeze
|
6
|
+
s.version = "13.0.0".freeze
|
7
|
+
|
8
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
9
|
+
s.metadata = { "allowed_push_host" => ".", "rubygems_mfa_required" => "true" } if s.respond_to? :metadata=
|
10
|
+
s.require_paths = ["lib".freeze]
|
11
|
+
s.authors = ["Jan Graichen".freeze]
|
12
|
+
s.date = "2025-01-17"
|
13
|
+
s.email = ["jgraichen@altimos.de".freeze]
|
14
|
+
s.files = ["LICENSE".freeze, "README.md".freeze, "default.yml".freeze]
|
15
|
+
s.homepage = "https://github.com/jgraichen/rubocop-config".freeze
|
16
|
+
s.licenses = ["MIT".freeze]
|
17
|
+
s.required_ruby_version = Gem::Requirement.new(">= 2.7.0".freeze)
|
18
|
+
s.rubygems_version = "3.6.2".freeze
|
19
|
+
s.summary = "Shared rubocop config".freeze
|
20
|
+
|
21
|
+
s.installed_by_version = "3.6.2".freeze
|
22
|
+
|
23
|
+
s.specification_version = 4
|
24
|
+
|
25
|
+
s.add_runtime_dependency(%q<rubocop>.freeze, ["~> 1.70.0".freeze])
|
26
|
+
s.add_runtime_dependency(%q<rubocop-capybara>.freeze, ["~> 2.21.0".freeze])
|
27
|
+
s.add_runtime_dependency(%q<rubocop-factory_bot>.freeze, ["~> 2.26.1".freeze])
|
28
|
+
s.add_runtime_dependency(%q<rubocop-performance>.freeze, ["~> 1.23.0".freeze])
|
29
|
+
s.add_runtime_dependency(%q<rubocop-rspec>.freeze, ["~> 3.3.0".freeze])
|
30
|
+
s.add_runtime_dependency(%q<rubocop-rspec_rails>.freeze, ["~> 2.30.0".freeze])
|
31
|
+
end
|