functional-light-service 6.0.0 → 6.2.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.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/CHANGELOG.md +26 -0
  4. data/README.md +130 -11
  5. data/functional-light-service.gemspec +3 -1
  6. data/lib/functional-light-service/action.rb +48 -0
  7. data/lib/functional-light-service/configuration.rb +12 -2
  8. data/lib/functional-light-service/context/key_verifier.rb +1 -1
  9. data/lib/functional-light-service/context.rb +15 -2
  10. data/lib/functional-light-service/errors.rb +1 -0
  11. data/lib/functional-light-service/functional/sequencer.rb +144 -0
  12. data/lib/functional-light-service/i18n/localization_adapter.rb +50 -0
  13. data/lib/functional-light-service/localization_adapter.rb +19 -28
  14. data/lib/functional-light-service/localization_map.rb +9 -0
  15. data/lib/functional-light-service/organizer/reduce_case.rb +50 -0
  16. data/lib/functional-light-service/organizer/reduce_if_else.rb +23 -0
  17. data/lib/functional-light-service/organizer/reduce_until.rb +1 -1
  18. data/lib/functional-light-service/organizer/reduce_while.rb +31 -0
  19. data/lib/functional-light-service/organizer/scoped_reducable.rb +2 -2
  20. data/lib/functional-light-service/organizer/with_reducer_log_decorator.rb +2 -1
  21. data/lib/functional-light-service/organizer.rb +18 -3
  22. data/lib/functional-light-service/version.rb +1 -1
  23. data/lib/functional-light-service.rb +6 -0
  24. data/spec/acceptance/organizer/add_to_context_spec.rb +24 -0
  25. data/spec/acceptance/organizer/context_failure_and_skipping_spec.rb +22 -0
  26. data/spec/acceptance/organizer/execute_spec.rb +21 -0
  27. data/spec/acceptance/organizer/reduce_case_spec.rb +65 -0
  28. data/spec/acceptance/organizer/reduce_if_else_spec.rb +60 -0
  29. data/spec/acceptance/organizer/reduce_while_spec.rb +96 -0
  30. data/spec/acceptance/skip_all_remaining_spec.rb +139 -0
  31. data/spec/action_optional_expected_keys_spec.rb +107 -0
  32. data/spec/context/inspect_spec.rb +13 -3
  33. data/spec/context_spec.rb +12 -0
  34. data/spec/i18n_localization_adapter_spec.rb +83 -0
  35. data/spec/lib/deterministic/sequencer_spec.rb +506 -0
  36. data/spec/localization_adapter_spec.rb +66 -83
  37. data/spec/spec_helper.rb +3 -0
  38. data/spec/test_doubles.rb +28 -0
  39. metadata +27 -14
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: functional-light-service
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.0
4
+ version: 6.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Boscolo Michele
@@ -30,39 +30,39 @@ dependencies:
30
30
  - !ruby/object:Gem::Version
31
31
  version: '2'
32
32
  - !ruby/object:Gem::Dependency
33
- name: i18n
33
+ name: logger
34
34
  requirement: !ruby/object:Gem::Requirement
35
35
  requirements:
36
36
  - - "~>"
37
37
  - !ruby/object:Gem::Version
38
- version: '1.8'
39
- - - ">="
40
- - !ruby/object:Gem::Version
41
- version: 1.8.11
38
+ version: '1.5'
42
39
  type: :runtime
43
40
  prerelease: false
44
41
  version_requirements: !ruby/object:Gem::Requirement
45
42
  requirements:
46
43
  - - "~>"
47
44
  - !ruby/object:Gem::Version
48
- version: '1.8'
49
- - - ">="
50
- - !ruby/object:Gem::Version
51
- version: 1.8.11
45
+ version: '1.5'
52
46
  - !ruby/object:Gem::Dependency
53
- name: logger
47
+ name: i18n
54
48
  requirement: !ruby/object:Gem::Requirement
55
49
  requirements:
56
50
  - - "~>"
57
51
  - !ruby/object:Gem::Version
58
- version: '1.5'
59
- type: :runtime
52
+ version: '1.8'
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 1.8.11
56
+ type: :development
60
57
  prerelease: false
61
58
  version_requirements: !ruby/object:Gem::Requirement
62
59
  requirements:
63
60
  - - "~>"
64
61
  - !ruby/object:Gem::Version
65
- version: '1.5'
62
+ version: '1.8'
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: 1.8.11
66
66
  - !ruby/object:Gem::Dependency
67
67
  name: rake
68
68
  requirement: !ruby/object:Gem::Requirement
@@ -231,12 +231,18 @@ files:
231
231
  - lib/functional-light-service/functional/null.rb
232
232
  - lib/functional-light-service/functional/option.rb
233
233
  - lib/functional-light-service/functional/result.rb
234
+ - lib/functional-light-service/functional/sequencer.rb
235
+ - lib/functional-light-service/i18n/localization_adapter.rb
234
236
  - lib/functional-light-service/localization_adapter.rb
237
+ - lib/functional-light-service/localization_map.rb
235
238
  - lib/functional-light-service/organizer.rb
236
239
  - lib/functional-light-service/organizer/execute.rb
237
240
  - lib/functional-light-service/organizer/iterate.rb
241
+ - lib/functional-light-service/organizer/reduce_case.rb
238
242
  - lib/functional-light-service/organizer/reduce_if.rb
243
+ - lib/functional-light-service/organizer/reduce_if_else.rb
239
244
  - lib/functional-light-service/organizer/reduce_until.rb
245
+ - lib/functional-light-service/organizer/reduce_while.rb
240
246
  - lib/functional-light-service/organizer/scoped_reducable.rb
241
247
  - lib/functional-light-service/organizer/with_callback.rb
242
248
  - lib/functional-light-service/organizer/with_reducer.rb
@@ -264,14 +270,19 @@ files:
264
270
  - spec/acceptance/organizer/context_failure_and_skipping_spec.rb
265
271
  - spec/acceptance/organizer/execute_spec.rb
266
272
  - spec/acceptance/organizer/iterate_spec.rb
273
+ - spec/acceptance/organizer/reduce_case_spec.rb
274
+ - spec/acceptance/organizer/reduce_if_else_spec.rb
267
275
  - spec/acceptance/organizer/reduce_if_spec.rb
268
276
  - spec/acceptance/organizer/reduce_until_spec.rb
277
+ - spec/acceptance/organizer/reduce_while_spec.rb
269
278
  - spec/acceptance/organizer/with_callback_spec.rb
270
279
  - spec/acceptance/organizer_entry_point_spec.rb
271
280
  - spec/acceptance/rollback_spec.rb
281
+ - spec/acceptance/skip_all_remaining_spec.rb
272
282
  - spec/acceptance/testing/context_factory_spec.rb
273
283
  - spec/action_expected_keys_spec.rb
274
284
  - spec/action_expects_and_promises_spec.rb
285
+ - spec/action_optional_expected_keys_spec.rb
275
286
  - spec/action_promised_keys_spec.rb
276
287
  - spec/action_spec.rb
277
288
  - spec/context/inspect_spec.rb
@@ -279,6 +290,7 @@ files:
279
290
  - spec/examples/amount_spec.rb
280
291
  - spec/examples/controller_spec.rb
281
292
  - spec/examples/validate_address_spec.rb
293
+ - spec/i18n_localization_adapter_spec.rb
282
294
  - spec/lib/deterministic/class_mixin_spec.rb
283
295
  - spec/lib/deterministic/currify_spec.rb
284
296
  - spec/lib/deterministic/monad_axioms.rb
@@ -290,6 +302,7 @@ files:
290
302
  - spec/lib/deterministic/result/result_shared.rb
291
303
  - spec/lib/deterministic/result/success_spec.rb
292
304
  - spec/lib/deterministic/result_spec.rb
305
+ - spec/lib/deterministic/sequencer_spec.rb
293
306
  - spec/lib/edge_cases_spec.rb
294
307
  - spec/lib/enum_spec.rb
295
308
  - spec/lib/native_pattern_matching_spec.rb