cuprum 1.2.0 → 1.3.0.rc.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/CHANGELOG.md +28 -0
- data/README.md +4 -2
- data/lib/cuprum/command.rb +40 -3
- data/lib/cuprum/command_factory.rb +5 -5
- data/lib/cuprum/currying/curried_command.rb +2 -0
- data/lib/cuprum/currying.rb +3 -3
- data/lib/cuprum/error.rb +1 -1
- data/lib/cuprum/errors/command_not_implemented.rb +1 -1
- data/lib/cuprum/errors/invalid_parameters.rb +44 -0
- data/lib/cuprum/errors/multiple_errors.rb +1 -1
- data/lib/cuprum/errors/operation_not_called.rb +1 -1
- data/lib/cuprum/errors/uncaught_exception.rb +1 -1
- data/lib/cuprum/errors.rb +1 -0
- data/lib/cuprum/exception_handling.rb +11 -2
- data/lib/cuprum/map_command.rb +4 -0
- data/lib/cuprum/matcher.rb +2 -2
- data/lib/cuprum/matcher_list.rb +4 -4
- data/lib/cuprum/matching.rb +7 -7
- data/lib/cuprum/operation.rb +2 -2
- data/lib/cuprum/parameter_validation/validation_rule.rb +51 -0
- data/lib/cuprum/parameter_validation/validator.rb +109 -0
- data/lib/cuprum/parameter_validation.rb +220 -0
- data/lib/cuprum/processing.rb +5 -5
- data/lib/cuprum/result.rb +3 -3
- data/lib/cuprum/result_helpers.rb +3 -3
- data/lib/cuprum/result_list.rb +2 -2
- data/lib/cuprum/rspec/be_a_result_matcher.rb +1 -1
- data/lib/cuprum/rspec/deferred/parameter_validation_examples.rb +81 -0
- data/lib/cuprum/rspec/deferred.rb +8 -0
- data/lib/cuprum/utils/instance_spy.rb +6 -6
- data/lib/cuprum/utils/parameters_mapping.rb +143 -0
- data/lib/cuprum/version.rb +3 -3
- data/lib/cuprum.rb +16 -10
- metadata +13 -9
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: cuprum
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.3.0.rc.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Rob "Merlin" Smith
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 2025-04-07 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: sleeping_king_studios-tools
|
|
@@ -16,14 +15,14 @@ dependencies:
|
|
|
16
15
|
requirements:
|
|
17
16
|
- - "~>"
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '1.
|
|
18
|
+
version: '1.2'
|
|
20
19
|
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
23
|
- - "~>"
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '1.
|
|
25
|
+
version: '1.2'
|
|
27
26
|
description: |-
|
|
28
27
|
An opinionated implementation of the Command pattern for Ruby applications.
|
|
29
28
|
Cuprum wraps your business logic in a consistent, object-oriented interface
|
|
@@ -53,6 +52,7 @@ files:
|
|
|
53
52
|
- lib/cuprum/error.rb
|
|
54
53
|
- lib/cuprum/errors.rb
|
|
55
54
|
- lib/cuprum/errors/command_not_implemented.rb
|
|
55
|
+
- lib/cuprum/errors/invalid_parameters.rb
|
|
56
56
|
- lib/cuprum/errors/multiple_errors.rb
|
|
57
57
|
- lib/cuprum/errors/operation_not_called.rb
|
|
58
58
|
- lib/cuprum/errors/uncaught_exception.rb
|
|
@@ -64,6 +64,9 @@ files:
|
|
|
64
64
|
- lib/cuprum/matching/match_clause.rb
|
|
65
65
|
- lib/cuprum/middleware.rb
|
|
66
66
|
- lib/cuprum/operation.rb
|
|
67
|
+
- lib/cuprum/parameter_validation.rb
|
|
68
|
+
- lib/cuprum/parameter_validation/validation_rule.rb
|
|
69
|
+
- lib/cuprum/parameter_validation/validator.rb
|
|
67
70
|
- lib/cuprum/processing.rb
|
|
68
71
|
- lib/cuprum/result.rb
|
|
69
72
|
- lib/cuprum/result_helpers.rb
|
|
@@ -72,9 +75,12 @@ files:
|
|
|
72
75
|
- lib/cuprum/rspec/be_a_result.rb
|
|
73
76
|
- lib/cuprum/rspec/be_a_result_matcher.rb
|
|
74
77
|
- lib/cuprum/rspec/be_callable.rb
|
|
78
|
+
- lib/cuprum/rspec/deferred.rb
|
|
79
|
+
- lib/cuprum/rspec/deferred/parameter_validation_examples.rb
|
|
75
80
|
- lib/cuprum/steps.rb
|
|
76
81
|
- lib/cuprum/utils.rb
|
|
77
82
|
- lib/cuprum/utils/instance_spy.rb
|
|
83
|
+
- lib/cuprum/utils/parameters_mapping.rb
|
|
78
84
|
- lib/cuprum/version.rb
|
|
79
85
|
homepage: http://sleepingkingstudios.com
|
|
80
86
|
licenses:
|
|
@@ -83,7 +89,6 @@ metadata:
|
|
|
83
89
|
bug_tracker_uri: https://github.com/sleepingkingstudios/cuprum/issues
|
|
84
90
|
source_code_uri: https://github.com/sleepingkingstudios/cuprum
|
|
85
91
|
rubygems_mfa_required: 'true'
|
|
86
|
-
post_install_message:
|
|
87
92
|
rdoc_options: []
|
|
88
93
|
require_paths:
|
|
89
94
|
- lib
|
|
@@ -91,15 +96,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
91
96
|
requirements:
|
|
92
97
|
- - "~>"
|
|
93
98
|
- !ruby/object:Gem::Version
|
|
94
|
-
version: '3.
|
|
99
|
+
version: '3.1'
|
|
95
100
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
96
101
|
requirements:
|
|
97
102
|
- - ">="
|
|
98
103
|
- !ruby/object:Gem::Version
|
|
99
104
|
version: '0'
|
|
100
105
|
requirements: []
|
|
101
|
-
rubygems_version: 3.
|
|
102
|
-
signing_key:
|
|
106
|
+
rubygems_version: 3.6.5
|
|
103
107
|
specification_version: 4
|
|
104
108
|
summary: An opinionated implementation of the Command pattern.
|
|
105
109
|
test_files: []
|