servactory 1.8.5 → 1.8.6
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/lib/servactory/context/workspace/inputs.rb +1 -1
- data/lib/servactory/inputs/input.rb +1 -1
- data/lib/servactory/methods/dsl.rb +8 -0
- data/lib/servactory/methods/stage.rb +2 -1
- data/lib/servactory/methods/tools/runner.rb +3 -4
- data/lib/servactory/outputs/dsl.rb +0 -1
- data/lib/servactory/test_kit/fake_type.rb +1 -1
- data/lib/servactory/version.rb +1 -1
- metadata +2 -4
- data/lib/servactory/outputs/tools/conflicts.rb +0 -38
- data/lib/servactory/outputs/workspace.rb +0 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 63d469613e34fcd13e27dc8fb62fa6c36fc25cf9b9e35f5b21af30013ac75993
|
4
|
+
data.tar.gz: e3edd5a0bfbd2b889e81be1aeeaa836f80c6e9925c65e5f4ed09ce2a35d44673
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 774bb94eb10a8695cde168e8cd7bc224ebc65804e2092c617dacf471612d1b3980dbc2f6d80b0418f9885a4697587c9d2d12c4172b176d79de4d6114f5198aed
|
7
|
+
data.tar.gz: 2987a6379e4404e1757e4cef6749ae3e5fd8b98712d23e630b1b0a5bde5cdac8232046089d59cc1e642b7a540a9def431dfc6708e3696a14b517ce22cd1025f7
|
@@ -24,7 +24,7 @@ module Servactory
|
|
24
24
|
|
25
25
|
private
|
26
26
|
|
27
|
-
def getter_with(name:, &block) # rubocop:disable Lint/UnusedMethodArgument
|
27
|
+
def getter_with(name:, &block) # rubocop:disable Metrics/MethodLength, Lint/UnusedMethodArgument, Metrics/AbcSize
|
28
28
|
input_name = name.to_s.chomp("?").to_sym
|
29
29
|
input = @collection_of_inputs.find_by(name: input_name)
|
30
30
|
|
@@ -42,6 +42,14 @@ module Servactory
|
|
42
42
|
def only_if(condition)
|
43
43
|
return if @current_stage.blank?
|
44
44
|
|
45
|
+
@current_stage.is_condition_opposite = false
|
46
|
+
@current_stage.condition = condition
|
47
|
+
end
|
48
|
+
|
49
|
+
def only_unless(condition)
|
50
|
+
return if @current_stage.blank?
|
51
|
+
|
52
|
+
@current_stage.is_condition_opposite = true
|
45
53
|
@current_stage.condition = condition
|
46
54
|
end
|
47
55
|
|
@@ -57,12 +57,11 @@ module Servactory
|
|
57
57
|
|
58
58
|
def unnecessary_for_stage?(stage)
|
59
59
|
condition = stage.condition
|
60
|
-
|
60
|
+
is_condition_opposite = stage.is_condition_opposite
|
61
61
|
|
62
|
-
result = prepare_condition_for(condition)
|
62
|
+
result = prepare_condition_for(condition)
|
63
63
|
|
64
|
-
|
65
|
-
result
|
64
|
+
is_condition_opposite ? !result : result
|
66
65
|
end
|
67
66
|
|
68
67
|
def unnecessary_for_make?(make_method)
|
data/lib/servactory/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: servactory
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.8.
|
4
|
+
version: 1.8.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Anton Sokolov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-07-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -244,10 +244,8 @@ files:
|
|
244
244
|
- lib/servactory/outputs/collection.rb
|
245
245
|
- lib/servactory/outputs/dsl.rb
|
246
246
|
- lib/servactory/outputs/output.rb
|
247
|
-
- lib/servactory/outputs/tools/conflicts.rb
|
248
247
|
- lib/servactory/outputs/validations/base.rb
|
249
248
|
- lib/servactory/outputs/validations/type.rb
|
250
|
-
- lib/servactory/outputs/workspace.rb
|
251
249
|
- lib/servactory/result.rb
|
252
250
|
- lib/servactory/test_kit/fake_type.rb
|
253
251
|
- lib/servactory/test_kit/result.rb
|
@@ -1,38 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Servactory
|
4
|
-
module Outputs
|
5
|
-
module Tools
|
6
|
-
class Conflicts
|
7
|
-
def self.validate!(...)
|
8
|
-
new(...).validate!
|
9
|
-
end
|
10
|
-
|
11
|
-
def initialize(context, collection_of_outputs, collection_of_internals)
|
12
|
-
@context = context
|
13
|
-
@collection_of_outputs = collection_of_outputs
|
14
|
-
@collection_of_internals = collection_of_internals
|
15
|
-
end
|
16
|
-
|
17
|
-
def validate!
|
18
|
-
return if overlapping_attributes.empty?
|
19
|
-
|
20
|
-
message_text = I18n.t(
|
21
|
-
"servactory.outputs.tools.conflicts.error",
|
22
|
-
service_class_name: @context.class.name,
|
23
|
-
overlapping_attributes: overlapping_attributes.join(", ")
|
24
|
-
)
|
25
|
-
|
26
|
-
raise Servactory.configuration.output_error_class.new(message: message_text)
|
27
|
-
end
|
28
|
-
|
29
|
-
private
|
30
|
-
|
31
|
-
def overlapping_attributes
|
32
|
-
@overlapping_attributes ||=
|
33
|
-
@collection_of_outputs.names.intersection(@collection_of_internals.names)
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
@@ -1,13 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Servactory
|
4
|
-
module Outputs
|
5
|
-
module Workspace
|
6
|
-
def call!(collection_of_internals:, collection_of_outputs:, **)
|
7
|
-
super
|
8
|
-
|
9
|
-
Tools::Conflicts.validate!(self, collection_of_outputs, collection_of_internals)
|
10
|
-
end
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|