functional-light-service 0.4.4 → 0.5.4
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/.github/workflows/project-build.yml +10 -2
- data/Appraisals +4 -0
- data/CHANGELOG.md +80 -0
- data/Gemfile +0 -2
- data/README.md +1492 -1426
- data/Rakefile +1 -1
- data/VERSION +1 -1
- data/functional-light-service.gemspec +5 -0
- data/lib/functional-light-service/context.rb +1 -1
- data/lib/functional-light-service/organizer/with_reducer.rb +6 -0
- data/lib/functional-light-service/organizer/with_reducer_factory.rb +1 -1
- data/lib/functional-light-service/organizer/with_reducer_log_decorator.rb +3 -0
- data/lib/functional-light-service/organizer.rb +10 -0
- data/lib/functional-light-service/version.rb +1 -1
- data/spec/acceptance/organizer/add_aliases_spec.rb +28 -0
- data/spec/acceptance/organizer/add_to_context_spec.rb +30 -0
- data/spec/acceptance/organizer/iterate_spec.rb +7 -0
- data/spec/acceptance/organizer/reduce_if_spec.rb +6 -0
- data/spec/acceptance/organizer/reduce_until_spec.rb +6 -0
- data/spec/action_spec.rb +8 -0
- data/spec/lib/deterministic/option_spec.rb +18 -14
- data/spec/organizer_spec.rb +21 -0
- data/spec/sample/provides_free_shipping_action_spec.rb +1 -1
- data/spec/spec_helper.rb +15 -13
- data/spec/test_doubles.rb +35 -0
- metadata +55 -7
- data/.travis.yml +0 -24
data/Rakefile
CHANGED
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.
|
|
1
|
+
0.5.4
|
|
@@ -21,11 +21,16 @@ Gem::Specification.new do |gem|
|
|
|
21
21
|
gem.add_runtime_dependency("i18n", "~> 1.8", ">= 1.8.11")
|
|
22
22
|
|
|
23
23
|
|
|
24
|
+
gem.add_development_dependency("rake", "~> 13.0.6", ">= 13.0.6")
|
|
24
25
|
gem.add_development_dependency("i18n", "~> 1.8", ">= 1.8.11")
|
|
25
26
|
gem.add_development_dependency("dry-inflector", "~> 0.2", ">= 0.2.1")
|
|
26
27
|
gem.add_development_dependency("rspec", "~> 3.10.0")
|
|
28
|
+
gem.add_development_dependency("rspec-mocks", "= 3.10.2")
|
|
27
29
|
gem.add_development_dependency("simplecov", "~> 0.21.2")
|
|
28
30
|
gem.add_development_dependency("simplecov-cobertura", "~> 2.1.0")
|
|
31
|
+
# rexml >= 3.3 ha un parser XML piu severo che rompe simplecov-cobertura 2.1.0
|
|
32
|
+
# (Malformed XML: No root element). Blocco alla 3.2.x compatibile.
|
|
33
|
+
gem.add_development_dependency("rexml", "< 3.3")
|
|
29
34
|
gem.add_development_dependency("rubocop", "~> 1.25.0")
|
|
30
35
|
gem.add_development_dependency("rubocop-performance", "~> 1.13.2")
|
|
31
36
|
gem.add_development_dependency("pry", "~> 0.14.1")
|
|
@@ -3,7 +3,7 @@ module FunctionalLightService
|
|
|
3
3
|
class Context < Hash
|
|
4
4
|
include FunctionalLightService::Prelude::Option
|
|
5
5
|
include FunctionalLightService::Prelude::Result
|
|
6
|
-
attr_accessor :outcome, :current_action
|
|
6
|
+
attr_accessor :outcome, :current_action, :organized_by
|
|
7
7
|
|
|
8
8
|
# rubocop:disable Lint/MissingSuper
|
|
9
9
|
def initialize(context = {},
|
|
@@ -2,9 +2,15 @@ module FunctionalLightService
|
|
|
2
2
|
module Organizer
|
|
3
3
|
class WithReducer
|
|
4
4
|
attr_reader :context
|
|
5
|
+
attr_accessor :organizer
|
|
6
|
+
|
|
7
|
+
def initialize(monitored_organizer = nil)
|
|
8
|
+
@organizer = monitored_organizer
|
|
9
|
+
end
|
|
5
10
|
|
|
6
11
|
def with(data = {})
|
|
7
12
|
@context = FunctionalLightService::Context.make(data)
|
|
13
|
+
@context.organized_by = organizer
|
|
8
14
|
self
|
|
9
15
|
end
|
|
10
16
|
|
|
@@ -3,7 +3,7 @@ module FunctionalLightService
|
|
|
3
3
|
class WithReducerFactory
|
|
4
4
|
def self.make(monitored_organizer)
|
|
5
5
|
logger = monitored_organizer.logger || FunctionalLightService::Configuration.logger
|
|
6
|
-
decorated = WithReducer.new
|
|
6
|
+
decorated = WithReducer.new(monitored_organizer)
|
|
7
7
|
|
|
8
8
|
return decorated if logger.nil?
|
|
9
9
|
|
|
@@ -63,6 +63,16 @@ module FunctionalLightService
|
|
|
63
63
|
def logger
|
|
64
64
|
@logger
|
|
65
65
|
end
|
|
66
|
+
|
|
67
|
+
def add_to_context(**args)
|
|
68
|
+
args.map do |key, value|
|
|
69
|
+
execute(->(ctx) { ctx[key.to_sym] = value })
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def add_aliases(args)
|
|
74
|
+
execute(->(ctx) { ctx.assign_aliases(ctx.aliases.merge(args)) })
|
|
75
|
+
end
|
|
66
76
|
end
|
|
67
77
|
|
|
68
78
|
module Macros
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
RSpec.describe FunctionalLightService::Organizer do
|
|
4
|
+
class TestAddAliases
|
|
5
|
+
extend FunctionalLightService::Organizer
|
|
6
|
+
|
|
7
|
+
def self.call(context = FunctionalLightService::Context.make)
|
|
8
|
+
with(context).reduce(steps)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def self.steps
|
|
12
|
+
[
|
|
13
|
+
add_to_context(:my_message => "Hello There"),
|
|
14
|
+
# This will add the alias `:a_message` which points
|
|
15
|
+
# to the :my_message key's value
|
|
16
|
+
add_aliases(:my_message => :a_message),
|
|
17
|
+
TestDoubles::CapitalizeMessage
|
|
18
|
+
]
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
it "adds aliases to the context embedded in the series of actions" do
|
|
23
|
+
result = TestAddAliases.call
|
|
24
|
+
|
|
25
|
+
expect(result).to be_success
|
|
26
|
+
expect(result.final_message).to eq("HELLO THERE")
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
RSpec.describe FunctionalLightService::Organizer do
|
|
4
|
+
class TestAddToContext
|
|
5
|
+
extend FunctionalLightService::Organizer
|
|
6
|
+
|
|
7
|
+
def self.call(context = FunctionalLightService::Context.make)
|
|
8
|
+
with(context).reduce(steps)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def self.steps
|
|
12
|
+
[
|
|
13
|
+
# This will add the `:number` key to the context
|
|
14
|
+
# with the value of 0, so it's available for
|
|
15
|
+
# AddsOneAction
|
|
16
|
+
add_to_context(:number => 0),
|
|
17
|
+
TestDoubles::AddsOneAction,
|
|
18
|
+
add_to_context(:something => "hello")
|
|
19
|
+
]
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
it "adds items to the context on the fly" do
|
|
24
|
+
result = TestAddToContext.call
|
|
25
|
+
|
|
26
|
+
expect(result).to be_success
|
|
27
|
+
expect(result.number).to eq(1)
|
|
28
|
+
expect(result[:something]).to eq("hello")
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -20,6 +20,13 @@ RSpec.describe FunctionalLightService::Organizer do
|
|
|
20
20
|
expect(result.number).to eq(5)
|
|
21
21
|
end
|
|
22
22
|
|
|
23
|
+
it "knows that it's being iterated from within an organizer" do
|
|
24
|
+
result = TestDoubles::TestIterate.call(:number => 1,
|
|
25
|
+
:counters => [1, 2, 3, 4])
|
|
26
|
+
|
|
27
|
+
expect(result.organized_by).to eq TestDoubles::TestIterate
|
|
28
|
+
end
|
|
29
|
+
|
|
23
30
|
it 'will not iterate over a failed context' do
|
|
24
31
|
empty_context.fail!('Something bad happened')
|
|
25
32
|
|
|
@@ -49,6 +49,12 @@ RSpec.describe FunctionalLightService::Organizer do
|
|
|
49
49
|
expect(result).to be_success
|
|
50
50
|
end
|
|
51
51
|
|
|
52
|
+
it "knows that it's being conditionally reduced from within an organizer" do
|
|
53
|
+
result = TestReduceIf.call(:number => 2)
|
|
54
|
+
|
|
55
|
+
expect(result.organized_by).to eq TestReduceIf
|
|
56
|
+
end
|
|
57
|
+
|
|
52
58
|
it 'skips actions within in its own scope' do
|
|
53
59
|
org = Class.new do
|
|
54
60
|
extend FunctionalLightService::Organizer
|
|
@@ -40,4 +40,10 @@ RSpec.describe FunctionalLightService::Organizer do
|
|
|
40
40
|
result = TestReduceUntil.call(empty_context)
|
|
41
41
|
expect(result).to be_success
|
|
42
42
|
end
|
|
43
|
+
|
|
44
|
+
it "is expected to know its organizer when reducing until a condition" do
|
|
45
|
+
result = TestReduceUntil.call(:number => 1)
|
|
46
|
+
|
|
47
|
+
expect(result.organized_by).to eq TestReduceUntil
|
|
48
|
+
end
|
|
43
49
|
end
|
data/spec/action_spec.rb
CHANGED
|
@@ -68,6 +68,14 @@ describe FunctionalLightService::Action do
|
|
|
68
68
|
expect(result.to_hash).to eq(:number => 2)
|
|
69
69
|
end
|
|
70
70
|
|
|
71
|
+
context "when called directly" do
|
|
72
|
+
it "is expected to not be organized" do
|
|
73
|
+
result = TestDoubles::AddsTwoActionWithFetch.execute(context)
|
|
74
|
+
|
|
75
|
+
expect(result.organized_by).to be_nil
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
|
|
71
79
|
context "when invoked with hash" do
|
|
72
80
|
it "creates FunctionalLightService::Context implicitly" do
|
|
73
81
|
ctx = { :some_key => "some value" }
|
|
@@ -72,27 +72,31 @@ describe FunctionalLightService::Option do
|
|
|
72
72
|
end
|
|
73
73
|
|
|
74
74
|
it "match" do
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
75
|
+
expect(
|
|
76
|
+
# rubocop:disable Lint/UnusedBlockArgument
|
|
77
|
+
# rubocop:disable Lint/EmptyBlock
|
|
78
|
+
Some(0).match do
|
|
79
|
+
Some(where { s == 1 }) { |s| 99 }
|
|
80
|
+
Some(where { s == 0 }) { |s| s + 1 }
|
|
81
|
+
None() {}
|
|
82
|
+
end
|
|
83
|
+
).to eq 1
|
|
82
84
|
|
|
83
85
|
expect(
|
|
84
86
|
Some(1).match do
|
|
85
87
|
None() { 0 }
|
|
86
|
-
Some() { |
|
|
88
|
+
Some() { |s| 1 }
|
|
87
89
|
end
|
|
88
90
|
).to eq 1
|
|
89
91
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
92
|
+
expect(
|
|
93
|
+
Some(1).match do
|
|
94
|
+
None() { 0 }
|
|
95
|
+
Some(where { s.is_a? Integer }) { |s| 1 }
|
|
96
|
+
end
|
|
97
|
+
# rubocop:enable Lint/UnusedBlockArgument
|
|
98
|
+
# rubocop:enable Lint/EmptyBlock
|
|
99
|
+
).to eq 1
|
|
96
100
|
|
|
97
101
|
expect(
|
|
98
102
|
None.match do
|
data/spec/organizer_spec.rb
CHANGED
|
@@ -19,6 +19,11 @@ describe FunctionalLightService::Organizer do
|
|
|
19
19
|
result = TestDoubles::AnOrganizer.call(:user => user)
|
|
20
20
|
expect(result).to eq(ctx)
|
|
21
21
|
end
|
|
22
|
+
|
|
23
|
+
it "sets itself as the organizer" do
|
|
24
|
+
result = TestDoubles::AnOrganizer.call(:user => user)
|
|
25
|
+
expect(result.organized_by).to eq TestDoubles::AnOrganizer
|
|
26
|
+
end
|
|
22
27
|
end
|
|
23
28
|
|
|
24
29
|
context "when #with is called with Context" do
|
|
@@ -90,4 +95,20 @@ describe FunctionalLightService::Organizer do
|
|
|
90
95
|
expect(reduced).to eq(ctx)
|
|
91
96
|
end
|
|
92
97
|
end
|
|
98
|
+
|
|
99
|
+
context "can add items to the context" do
|
|
100
|
+
specify 'with #add_to_context' do
|
|
101
|
+
result = TestDoubles::AnOrganizerThatAddsToContext.call
|
|
102
|
+
expect(result[:strongest_avenger]).to eq :thor
|
|
103
|
+
expect(result[:last_jedi]).to eq "Rey"
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
context "can assign key aliaeses" do
|
|
108
|
+
it 'with #add_aliases' do
|
|
109
|
+
result = TestDoubles::AnOrganizerThatAddsAliases.call
|
|
110
|
+
expect(result[:foo]).to eq :bar
|
|
111
|
+
expect(result[:baz]).to eq :bar
|
|
112
|
+
end
|
|
113
|
+
end
|
|
93
114
|
end
|
|
@@ -15,7 +15,7 @@ describe ProvidesFreeShippingAction do
|
|
|
15
15
|
end
|
|
16
16
|
|
|
17
17
|
context "when the order total with tax is <= 200" do
|
|
18
|
-
specify "order
|
|
18
|
+
specify "order does not get free shipping" do
|
|
19
19
|
allow(order).to receive_messages(:total_with_tax => 200)
|
|
20
20
|
expect(order).not_to receive(:provide_free_shipping!)
|
|
21
21
|
|
data/spec/spec_helper.rb
CHANGED
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
$LOAD_PATH << File.join(File.dirname(__FILE__), '..', 'lib')
|
|
2
2
|
$LOAD_PATH << File.join(File.dirname(__FILE__))
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
if ENV['RUN_COVERAGE_REPORT']
|
|
5
|
+
require 'simplecov'
|
|
5
6
|
|
|
6
|
-
SimpleCov.start do
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
end
|
|
7
|
+
SimpleCov.start do
|
|
8
|
+
add_filter 'vendor/'
|
|
9
|
+
add_filter %r{^/spec/}
|
|
10
|
+
end
|
|
10
11
|
|
|
11
|
-
SimpleCov.minimum_coverage_by_file 90
|
|
12
|
+
SimpleCov.minimum_coverage_by_file 90
|
|
12
13
|
|
|
13
|
-
require
|
|
14
|
-
SimpleCov.formatter = SimpleCov::Formatter::CoberturaFormatter
|
|
14
|
+
require "simplecov-cobertura"
|
|
15
|
+
SimpleCov.formatter = SimpleCov::Formatter::CoberturaFormatter
|
|
16
|
+
end
|
|
15
17
|
|
|
16
|
-
require
|
|
17
|
-
require
|
|
18
|
+
require "functional-light-service"
|
|
19
|
+
require "functional-light-service/testing"
|
|
18
20
|
require "functional-light-service/functional/null"
|
|
19
|
-
require
|
|
20
|
-
require
|
|
21
|
-
require
|
|
21
|
+
require "support"
|
|
22
|
+
require "test_doubles"
|
|
23
|
+
require "stringio"
|
data/spec/test_doubles.rb
CHANGED
|
@@ -561,4 +561,39 @@ module TestDoubles
|
|
|
561
561
|
ctx.total += ctx.number
|
|
562
562
|
end
|
|
563
563
|
end
|
|
564
|
+
|
|
565
|
+
class CapitalizeMessage
|
|
566
|
+
extend FunctionalLightService::Action
|
|
567
|
+
expects :a_message
|
|
568
|
+
promises :final_message
|
|
569
|
+
|
|
570
|
+
executed do |ctx|
|
|
571
|
+
ctx.final_message = ctx.a_message.upcase
|
|
572
|
+
end
|
|
573
|
+
end
|
|
574
|
+
|
|
575
|
+
class AnOrganizerThatAddsToContext
|
|
576
|
+
extend FunctionalLightService::Organizer
|
|
577
|
+
def self.call
|
|
578
|
+
with.reduce(actions)
|
|
579
|
+
end
|
|
580
|
+
|
|
581
|
+
def self.actions
|
|
582
|
+
[add_to_context(
|
|
583
|
+
:strongest_avenger => :thor,
|
|
584
|
+
:last_jedi => "Rey"
|
|
585
|
+
)]
|
|
586
|
+
end
|
|
587
|
+
end
|
|
588
|
+
|
|
589
|
+
class AnOrganizerThatAddsAliases
|
|
590
|
+
extend FunctionalLightService::Organizer
|
|
591
|
+
def self.call
|
|
592
|
+
with(:foo => :bar).reduce(actions)
|
|
593
|
+
end
|
|
594
|
+
|
|
595
|
+
def self.actions
|
|
596
|
+
[add_aliases(:foo => :baz)]
|
|
597
|
+
end
|
|
598
|
+
end
|
|
564
599
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: functional-light-service
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.5.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Boscolo Michele
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: dry-inflector
|
|
@@ -50,6 +49,26 @@ dependencies:
|
|
|
50
49
|
- - ">="
|
|
51
50
|
- !ruby/object:Gem::Version
|
|
52
51
|
version: 1.8.11
|
|
52
|
+
- !ruby/object:Gem::Dependency
|
|
53
|
+
name: rake
|
|
54
|
+
requirement: !ruby/object:Gem::Requirement
|
|
55
|
+
requirements:
|
|
56
|
+
- - "~>"
|
|
57
|
+
- !ruby/object:Gem::Version
|
|
58
|
+
version: 13.0.6
|
|
59
|
+
- - ">="
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: 13.0.6
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: 13.0.6
|
|
69
|
+
- - ">="
|
|
70
|
+
- !ruby/object:Gem::Version
|
|
71
|
+
version: 13.0.6
|
|
53
72
|
- !ruby/object:Gem::Dependency
|
|
54
73
|
name: i18n
|
|
55
74
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -104,6 +123,20 @@ dependencies:
|
|
|
104
123
|
- - "~>"
|
|
105
124
|
- !ruby/object:Gem::Version
|
|
106
125
|
version: 3.10.0
|
|
126
|
+
- !ruby/object:Gem::Dependency
|
|
127
|
+
name: rspec-mocks
|
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
|
129
|
+
requirements:
|
|
130
|
+
- - '='
|
|
131
|
+
- !ruby/object:Gem::Version
|
|
132
|
+
version: 3.10.2
|
|
133
|
+
type: :development
|
|
134
|
+
prerelease: false
|
|
135
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
136
|
+
requirements:
|
|
137
|
+
- - '='
|
|
138
|
+
- !ruby/object:Gem::Version
|
|
139
|
+
version: 3.10.2
|
|
107
140
|
- !ruby/object:Gem::Dependency
|
|
108
141
|
name: simplecov
|
|
109
142
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -132,6 +165,20 @@ dependencies:
|
|
|
132
165
|
- - "~>"
|
|
133
166
|
- !ruby/object:Gem::Version
|
|
134
167
|
version: 2.1.0
|
|
168
|
+
- !ruby/object:Gem::Dependency
|
|
169
|
+
name: rexml
|
|
170
|
+
requirement: !ruby/object:Gem::Requirement
|
|
171
|
+
requirements:
|
|
172
|
+
- - "<"
|
|
173
|
+
- !ruby/object:Gem::Version
|
|
174
|
+
version: '3.3'
|
|
175
|
+
type: :development
|
|
176
|
+
prerelease: false
|
|
177
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
178
|
+
requirements:
|
|
179
|
+
- - "<"
|
|
180
|
+
- !ruby/object:Gem::Version
|
|
181
|
+
version: '3.3'
|
|
135
182
|
- !ruby/object:Gem::Dependency
|
|
136
183
|
name: rubocop
|
|
137
184
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -215,7 +262,6 @@ files:
|
|
|
215
262
|
- ".rspec"
|
|
216
263
|
- ".rubocop.yml"
|
|
217
264
|
- ".solargraph.yml"
|
|
218
|
-
- ".travis.yml"
|
|
219
265
|
- Appraisals
|
|
220
266
|
- CHANGELOG.md
|
|
221
267
|
- CODE_OF_CONDUCT.md
|
|
@@ -268,6 +314,8 @@ files:
|
|
|
268
314
|
- spec/acceptance/log_from_organizer_spec.rb
|
|
269
315
|
- spec/acceptance/message_localization_spec.rb
|
|
270
316
|
- spec/acceptance/not_having_call_method_warning_spec.rb
|
|
317
|
+
- spec/acceptance/organizer/add_aliases_spec.rb
|
|
318
|
+
- spec/acceptance/organizer/add_to_context_spec.rb
|
|
271
319
|
- spec/acceptance/organizer/around_each_with_reduce_if_spec.rb
|
|
272
320
|
- spec/acceptance/organizer/context_failure_and_skipping_spec.rb
|
|
273
321
|
- spec/acceptance/organizer/execute_spec.rb
|
|
@@ -323,7 +371,6 @@ homepage: https://github.com/sphynx79/functional-light-service
|
|
|
323
371
|
licenses:
|
|
324
372
|
- MIT
|
|
325
373
|
metadata: {}
|
|
326
|
-
post_install_message:
|
|
327
374
|
rdoc_options: []
|
|
328
375
|
require_paths:
|
|
329
376
|
- lib
|
|
@@ -338,8 +385,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
338
385
|
- !ruby/object:Gem::Version
|
|
339
386
|
version: '0'
|
|
340
387
|
requirements: []
|
|
341
|
-
rubygems_version: 3.
|
|
342
|
-
signing_key:
|
|
388
|
+
rubygems_version: 3.6.9
|
|
343
389
|
specification_version: 4
|
|
344
390
|
summary: A service skeleton with an emphasis on simplicity with a pinch a functional
|
|
345
391
|
programming
|
|
@@ -354,6 +400,8 @@ test_files:
|
|
|
354
400
|
- spec/acceptance/log_from_organizer_spec.rb
|
|
355
401
|
- spec/acceptance/message_localization_spec.rb
|
|
356
402
|
- spec/acceptance/not_having_call_method_warning_spec.rb
|
|
403
|
+
- spec/acceptance/organizer/add_aliases_spec.rb
|
|
404
|
+
- spec/acceptance/organizer/add_to_context_spec.rb
|
|
357
405
|
- spec/acceptance/organizer/around_each_with_reduce_if_spec.rb
|
|
358
406
|
- spec/acceptance/organizer/context_failure_and_skipping_spec.rb
|
|
359
407
|
- spec/acceptance/organizer/execute_spec.rb
|
data/.travis.yml
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
language: ruby
|
|
2
|
-
|
|
3
|
-
env:
|
|
4
|
-
- RUN_COVERAGE_REPORT=true
|
|
5
|
-
|
|
6
|
-
rvm:
|
|
7
|
-
- 2.6.6
|
|
8
|
-
- 2.7.2
|
|
9
|
-
- 3.0.0
|
|
10
|
-
|
|
11
|
-
before_install:
|
|
12
|
-
- 'echo ''gem: --no-ri --no-rdoc'' > ~/.gemrc'
|
|
13
|
-
- yes | gem update --system --force
|
|
14
|
-
- gem install bundler
|
|
15
|
-
- bundle install --gemfile=Gemfile --clean --path vendor/bundle
|
|
16
|
-
|
|
17
|
-
# uncomment this line if your project needs to run something other than `rake`:
|
|
18
|
-
script:
|
|
19
|
-
- bundle exec rspec spec
|
|
20
|
-
- bundle exec rubocop
|
|
21
|
-
|
|
22
|
-
gemfile:
|
|
23
|
-
- gemfiles/dry_inflector_0_2_1.gemfile
|
|
24
|
-
- gemfiles/i18n_1_8_11.gemfile
|