acfs 1.4.0 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +22 -39
  4. data/acfs.gemspec +8 -14
  5. data/lib/acfs/adapter/base.rb +2 -0
  6. data/lib/acfs/adapter/typhoeus.rb +16 -11
  7. data/lib/acfs/collections/paginatable.rb +1 -1
  8. data/lib/acfs/configuration.rb +13 -3
  9. data/lib/acfs/errors.rb +41 -21
  10. data/lib/acfs/global.rb +2 -2
  11. data/lib/acfs/location.rb +26 -32
  12. data/lib/acfs/middleware/base.rb +2 -2
  13. data/lib/acfs/middleware/json.rb +4 -2
  14. data/lib/acfs/middleware/logger.rb +4 -6
  15. data/lib/acfs/middleware/serializer.rb +1 -1
  16. data/lib/acfs/operation.rb +21 -8
  17. data/lib/acfs/request/callbacks.rb +4 -4
  18. data/lib/acfs/request.rb +4 -11
  19. data/lib/acfs/resource/attributes/date_time.rb +1 -1
  20. data/lib/acfs/resource/attributes/uuid.rb +1 -1
  21. data/lib/acfs/resource/attributes.rb +16 -15
  22. data/lib/acfs/resource/dirty.rb +2 -2
  23. data/lib/acfs/resource/initialization.rb +5 -5
  24. data/lib/acfs/resource/locatable.rb +11 -8
  25. data/lib/acfs/resource/operational.rb +6 -3
  26. data/lib/acfs/resource/persistence.rb +13 -15
  27. data/lib/acfs/resource/query_methods.rb +10 -10
  28. data/lib/acfs/resource/service.rb +2 -2
  29. data/lib/acfs/resource/validation.rb +17 -7
  30. data/lib/acfs/response.rb +5 -5
  31. data/lib/acfs/runner.rb +15 -15
  32. data/lib/acfs/service.rb +16 -19
  33. data/lib/acfs/singleton_resource.rb +2 -2
  34. data/lib/acfs/stub.rb +41 -31
  35. data/lib/acfs/version.rb +2 -2
  36. data/spec/acfs/adapter/typhoeus_spec.rb +2 -2
  37. data/spec/acfs/collection_spec.rb +66 -41
  38. data/spec/acfs/configuration_spec.rb +22 -12
  39. data/spec/acfs/global_spec.rb +11 -9
  40. data/spec/acfs/location_spec.rb +2 -2
  41. data/spec/acfs/middleware/json_spec.rb +22 -8
  42. data/spec/acfs/middleware/{msgpack_spec.rb → message_pack_spec.rb} +6 -6
  43. data/spec/acfs/operation_spec.rb +3 -2
  44. data/spec/acfs/request/callbacks_spec.rb +19 -10
  45. data/spec/acfs/request_spec.rb +16 -20
  46. data/spec/acfs/resource/attributes/boolean_spec.rb +32 -32
  47. data/spec/acfs/resource/attributes/date_time_spec.rb +16 -8
  48. data/spec/acfs/resource/attributes/dict_spec.rb +15 -9
  49. data/spec/acfs/resource/attributes/float_spec.rb +20 -10
  50. data/spec/acfs/resource/attributes/integer_spec.rb +10 -5
  51. data/spec/acfs/resource/attributes/list_spec.rb +13 -8
  52. data/spec/acfs/resource/attributes/uuid_spec.rb +12 -6
  53. data/spec/acfs/resource/attributes_spec.rb +37 -38
  54. data/spec/acfs/resource/dirty_spec.rb +6 -3
  55. data/spec/acfs/resource/initialization_spec.rb +4 -5
  56. data/spec/acfs/resource/loadable_spec.rb +3 -1
  57. data/spec/acfs/resource/locatable_spec.rb +24 -18
  58. data/spec/acfs/resource/{persistance_spec.rb → persistence_spec.rb} +122 -90
  59. data/spec/acfs/resource/query_methods_spec.rb +143 -110
  60. data/spec/acfs/resource/validation_spec.rb +34 -27
  61. data/spec/acfs/response/formats_spec.rb +8 -8
  62. data/spec/acfs/response/status_spec.rb +16 -9
  63. data/spec/acfs/runner_spec.rb +10 -8
  64. data/spec/acfs/service/middleware_spec.rb +3 -3
  65. data/spec/acfs/service_spec.rb +6 -5
  66. data/spec/acfs/singleton_resource_spec.rb +2 -1
  67. data/spec/acfs/stub_spec.rb +57 -53
  68. data/spec/acfs_spec.rb +111 -93
  69. data/spec/spec_helper.rb +1 -2
  70. data/spec/support/response.rb +2 -2
  71. data/spec/support/service.rb +1 -1
  72. data/spec/support/shared/find_callbacks.rb +14 -10
  73. metadata +30 -29
@@ -3,14 +3,14 @@
3
3
  shared_examples 'a query method with multi-callback support' do
4
4
  let(:cb) { Proc.new }
5
5
 
6
- it 'should invoke callback' do
6
+ it 'invokes callback' do
7
7
  expect do |cb|
8
8
  action.call cb
9
9
  Acfs.run
10
10
  end.to yield_with_args
11
11
  end
12
12
 
13
- it 'should invoke multiple callbacks' do
13
+ it 'invokes multiple callbacks' do
14
14
  expect do |cb|
15
15
  object = action.call cb
16
16
  Acfs.add_callback object, &cb
@@ -19,31 +19,35 @@ shared_examples 'a query method with multi-callback support' do
19
19
  end
20
20
 
21
21
  describe 'callback' do
22
- it 'should be invoked with resource' do
22
+ it 'is invoked with resource' do
23
23
  proc = proc {}
24
+ object = nil
25
+
24
26
  expect(proc).to receive(:call) do |res|
25
- expect(res).to equal @object
27
+ expect(res).to equal object
26
28
  expect(res).to be_loaded
27
29
  end
28
30
 
29
- @object = action.call proc
31
+ object = action.call proc
30
32
  Acfs.run
31
33
  end
32
34
 
33
- it 'should invoke multiple callback with loaded resource' do
35
+ it 'invokes multiple callback with loaded resource' do
34
36
  proc1 = proc {}
35
37
  proc2 = proc {}
38
+ object = nil
39
+
36
40
  expect(proc1).to receive(:call) do |user|
37
- expect(user).to equal @object
41
+ expect(user).to equal object
38
42
  expect(user).to be_loaded
39
43
  end
40
44
  expect(proc2).to receive(:call) do |user|
41
- expect(user).to equal @object
45
+ expect(user).to equal object
42
46
  expect(user).to be_loaded
43
47
  end
44
48
 
45
- @object = action.call proc1
46
- Acfs.add_callback(@object, &proc2)
49
+ object = action.call proc1
50
+ Acfs.add_callback(object, &proc2)
47
51
  Acfs.run
48
52
  end
49
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acfs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Graichen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-12 00:00:00.000000000 Z
11
+ date: 2022-01-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionpack
@@ -16,58 +16,44 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '4.2'
19
+ version: '5.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '4.2'
26
+ version: '5.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activemodel
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '4.2'
33
+ version: '5.2'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '4.2'
40
+ version: '5.2'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: activesupport
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '4.2'
47
+ version: '5.2'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '4.2'
54
+ version: '5.2'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: multi_json
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: typhoeus
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
59
  - - "~>"
@@ -94,6 +80,20 @@ dependencies:
94
80
  - - ">="
95
81
  - !ruby/object:Gem::Version
96
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: typhoeus
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '1.0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '1.0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: bundler
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -176,7 +176,7 @@ files:
176
176
  - spec/acfs/global_spec.rb
177
177
  - spec/acfs/location_spec.rb
178
178
  - spec/acfs/middleware/json_spec.rb
179
- - spec/acfs/middleware/msgpack_spec.rb
179
+ - spec/acfs/middleware/message_pack_spec.rb
180
180
  - spec/acfs/operation_spec.rb
181
181
  - spec/acfs/request/callbacks_spec.rb
182
182
  - spec/acfs/request_spec.rb
@@ -192,7 +192,7 @@ files:
192
192
  - spec/acfs/resource/initialization_spec.rb
193
193
  - spec/acfs/resource/loadable_spec.rb
194
194
  - spec/acfs/resource/locatable_spec.rb
195
- - spec/acfs/resource/persistance_spec.rb
195
+ - spec/acfs/resource/persistence_spec.rb
196
196
  - spec/acfs/resource/query_methods_spec.rb
197
197
  - spec/acfs/resource/validation_spec.rb
198
198
  - spec/acfs/response/formats_spec.rb
@@ -212,7 +212,8 @@ files:
212
212
  homepage: https://github.com/jgraichen/acfs
213
213
  licenses:
214
214
  - MIT
215
- metadata: {}
215
+ metadata:
216
+ rubygems_mfa_required: 'true'
216
217
  post_install_message:
217
218
  rdoc_options: []
218
219
  require_paths:
@@ -221,14 +222,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
221
222
  requirements:
222
223
  - - ">="
223
224
  - !ruby/object:Gem::Version
224
- version: '0'
225
+ version: 2.5.0
225
226
  required_rubygems_version: !ruby/object:Gem::Requirement
226
227
  requirements:
227
228
  - - ">="
228
229
  - !ruby/object:Gem::Version
229
230
  version: '0'
230
231
  requirements: []
231
- rubygems_version: 3.1.2
232
+ rubygems_version: 3.3.3
232
233
  signing_key:
233
234
  specification_version: 4
234
235
  summary: An abstract API base client for service oriented application.
@@ -239,7 +240,7 @@ test_files:
239
240
  - spec/acfs/global_spec.rb
240
241
  - spec/acfs/location_spec.rb
241
242
  - spec/acfs/middleware/json_spec.rb
242
- - spec/acfs/middleware/msgpack_spec.rb
243
+ - spec/acfs/middleware/message_pack_spec.rb
243
244
  - spec/acfs/operation_spec.rb
244
245
  - spec/acfs/request/callbacks_spec.rb
245
246
  - spec/acfs/request_spec.rb
@@ -255,7 +256,7 @@ test_files:
255
256
  - spec/acfs/resource/initialization_spec.rb
256
257
  - spec/acfs/resource/loadable_spec.rb
257
258
  - spec/acfs/resource/locatable_spec.rb
258
- - spec/acfs/resource/persistance_spec.rb
259
+ - spec/acfs/resource/persistence_spec.rb
259
260
  - spec/acfs/resource/query_methods_spec.rb
260
261
  - spec/acfs/resource/validation_spec.rb
261
262
  - spec/acfs/response/formats_spec.rb