rspeed 0.5.0 → 0.5.1
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 +6 -0
- data/lib/rspeed.rb +1 -0
- data/lib/rspeed/env.rb +1 -1
- data/lib/rspeed/logger.rb +11 -0
- data/lib/rspeed/observer.rb +2 -2
- data/lib/rspeed/redis.rb +1 -1
- data/lib/rspeed/runner.rb +4 -2
- data/lib/rspeed/splitter.rb +9 -10
- data/lib/rspeed/version.rb +1 -1
- data/spec/models/rspeed/env/pipes_spec.rb +7 -29
- data/spec/models/rspeed/observer/after_suite_spec.rb +33 -9
- data/spec/models/rspeed/redis/{clean_pipes_flag_spec.rb → clean_spec.rb} +3 -5
- data/spec/models/rspeed/runner/run_spec.rb +25 -8
- data/spec/models/rspeed/splitter/append_question_spec.rb +37 -0
- data/spec/models/rspeed/splitter/need_warm_question_spec.rb +37 -0
- metadata +9 -6
- data/spec/models/rspeed/splitter/redundant_run_spec.rb +0 -45
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: de6e5d6c3ca630b15b835939ec2b01adbeec526480efde16052c294f297457af
|
4
|
+
data.tar.gz: 4c4d1efdf65c9f4c01106f1fe109d8ffb2160e40b6f90813b4bdc813061613dc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5ab45f421853bee217c88cfad0efd5d2bd16b9968b17b7676593b4ae0a2e708ac6b646f40845b8f186adfc000c505cef4e95f77c7c8273e6964203b0de22420a
|
7
|
+
data.tar.gz: 7e32c34c76fcdaff18e2aa2726c232d42c32fb4e3fc55b452f0d9b62f2dff0e5f458acd4c3dbacae75b5ca0c330e4b2792618179675c11adcf8aa566d13106c9
|
data/CHANGELOG.md
CHANGED
data/lib/rspeed.rb
CHANGED
data/lib/rspeed/env.rb
CHANGED
data/lib/rspeed/observer.rb
CHANGED
@@ -17,13 +17,13 @@ module RSpeed
|
|
17
17
|
def after_suite(splitter = ::RSpeed::Splitter.new)
|
18
18
|
RSpeed::Redis.set(RSpeed::Variable.pipe_name, true)
|
19
19
|
|
20
|
-
splitter.append
|
20
|
+
splitter.append if splitter.append?
|
21
21
|
|
22
22
|
return unless RSpeed::Redis.specs_finished?
|
23
23
|
|
24
24
|
splitter.rename
|
25
25
|
|
26
|
-
RSpeed::Redis.
|
26
|
+
RSpeed::Redis.clean
|
27
27
|
end
|
28
28
|
|
29
29
|
def before(example)
|
data/lib/rspeed/redis.rb
CHANGED
data/lib/rspeed/runner.rb
CHANGED
@@ -5,9 +5,11 @@ module RSpeed
|
|
5
5
|
module_function
|
6
6
|
|
7
7
|
def run(shell, splitter: ::RSpeed::Splitter.new)
|
8
|
-
return if splitter.
|
8
|
+
return shell.call(['bundle exec rspec', splitter.pipe_files].compact.join(' ')) if splitter.need_warm?
|
9
9
|
|
10
|
-
|
10
|
+
RSpeed::Logger.log("Pipe #{RSpeed::Env.pipe} skipped. Only Pipe 1 can warm.")
|
11
|
+
|
12
|
+
RSpeed::Observer.after_suite
|
11
13
|
end
|
12
14
|
end
|
13
15
|
end
|
data/lib/rspeed/splitter.rb
CHANGED
@@ -25,6 +25,10 @@ module RSpeed
|
|
25
25
|
end
|
26
26
|
end
|
27
27
|
|
28
|
+
def append?
|
29
|
+
RSpeed::Redis.result? || first_pipe?
|
30
|
+
end
|
31
|
+
|
28
32
|
def append(files = CSV.read(RSpeed::Variable::CSV))
|
29
33
|
files.each do |time, file|
|
30
34
|
redis.lpush(RSpeed::Env.tmp_key, { file: file, time: time.to_f }.to_json)
|
@@ -52,16 +56,16 @@ module RSpeed
|
|
52
56
|
end
|
53
57
|
end
|
54
58
|
|
59
|
+
def need_warm?
|
60
|
+
first_pipe? && !RSpeed::Redis.result?
|
61
|
+
end
|
62
|
+
|
55
63
|
def pipe_files
|
56
64
|
return unless RSpeed::Redis.result?
|
57
65
|
|
58
66
|
split[RSpeed::Variable.key(RSpeed::Env.pipe)][:files].map { |item| item[:file] }.join(' ')
|
59
67
|
end
|
60
68
|
|
61
|
-
def redundant_run?
|
62
|
-
!first_pipe? && !exists?(RSpeed::Env.result_key)
|
63
|
-
end
|
64
|
-
|
65
69
|
def rename
|
66
70
|
redis.rename(RSpeed::Env.tmp_key, RSpeed::Env.result_key)
|
67
71
|
end
|
@@ -96,11 +100,6 @@ module RSpeed
|
|
96
100
|
end
|
97
101
|
end
|
98
102
|
|
99
|
-
# TODO: exists? does not work: undefined method `>' for false:FalseClass
|
100
|
-
def exists?(key)
|
101
|
-
redis.keys.include?(key)
|
102
|
-
end
|
103
|
-
|
104
103
|
def redis
|
105
104
|
@redis ||= ::RSpeed::Redis.client
|
106
105
|
end
|
@@ -124,7 +123,7 @@ module RSpeed
|
|
124
123
|
end
|
125
124
|
|
126
125
|
def stream(type, data)
|
127
|
-
|
126
|
+
RSpeed::Logger.log("PIPE: #{RSpeed::Env.pipe} with #{type}: #{data}")
|
128
127
|
end
|
129
128
|
end
|
130
129
|
end
|
data/lib/rspeed/version.rb
CHANGED
@@ -3,39 +3,17 @@
|
|
3
3
|
require 'support/env_mock'
|
4
4
|
|
5
5
|
RSpec.describe RSpeed::Env, '.pipes' do
|
6
|
-
context 'when
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
it 'returns number 1' do
|
11
|
-
EnvMock.mock(rspeed_pipes: '2') do
|
12
|
-
expect(described_class.pipes).to be(1)
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
context 'when env is not setted' do
|
18
|
-
it 'returns number 1' do
|
19
|
-
expect(described_class.pipes).to be(1)
|
6
|
+
context 'when env is setted' do
|
7
|
+
it 'returns the env value' do
|
8
|
+
EnvMock.mock(rspeed_pipes: '2') do
|
9
|
+
expect(described_class.pipes).to be(2)
|
20
10
|
end
|
21
11
|
end
|
22
12
|
end
|
23
13
|
|
24
|
-
context 'when
|
25
|
-
|
26
|
-
|
27
|
-
context 'when env is setted' do
|
28
|
-
it 'returns the env value as integer' do
|
29
|
-
EnvMock.mock(rspeed_pipes: '2') do
|
30
|
-
expect(described_class.pipes).to be(2)
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
context 'when env is not setted' do
|
36
|
-
it 'returns number 1' do
|
37
|
-
expect(described_class.pipes).to be(1)
|
38
|
-
end
|
14
|
+
context 'when env is not setted' do
|
15
|
+
it 'returns number 1' do
|
16
|
+
expect(described_class.pipes).to be(1)
|
39
17
|
end
|
40
18
|
end
|
41
19
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
RSpec.describe RSpeed::Observer, '.
|
3
|
+
RSpec.describe RSpeed::Observer, '.after_suite' do
|
4
4
|
let!(:splitter) { instance_double('RSpeed::Splitter') }
|
5
5
|
|
6
6
|
before do
|
@@ -8,27 +8,51 @@ RSpec.describe RSpeed::Observer, '.after' do
|
|
8
8
|
allow(splitter).to receive(:append)
|
9
9
|
end
|
10
10
|
|
11
|
-
context 'when
|
12
|
-
before
|
11
|
+
context 'when append? returns true' do
|
12
|
+
before do
|
13
|
+
allow(splitter).to receive(:append?).and_return(true)
|
14
|
+
allow(splitter).to receive(:rename)
|
15
|
+
end
|
13
16
|
|
14
|
-
it '
|
17
|
+
it 'appends the time result on tmp key' do
|
15
18
|
described_class.after_suite
|
16
19
|
|
17
|
-
expect(
|
20
|
+
expect(splitter).to have_received(:append)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
context 'when append? returns false' do
|
25
|
+
before do
|
26
|
+
allow(splitter).to receive(:append?).and_return(false)
|
27
|
+
allow(splitter).to receive(:rename)
|
18
28
|
end
|
19
29
|
|
20
|
-
it '
|
30
|
+
it 'does not append the time result on tmp key' do
|
21
31
|
described_class.after_suite
|
22
32
|
|
23
|
-
expect(splitter).
|
33
|
+
expect(splitter).not_to have_received(:append)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
context 'when all specs is not finished' do
|
38
|
+
before do
|
39
|
+
allow(splitter).to receive(:append?)
|
40
|
+
allow(RSpeed::Redis).to receive(:specs_finished?).and_return(false)
|
41
|
+
end
|
42
|
+
|
43
|
+
it 'sets true on pipe key to indicates that its finished' do
|
44
|
+
described_class.after_suite
|
45
|
+
|
46
|
+
expect(RSpeed::Redis.get('rspeed_pipe_1')).to eq('true')
|
24
47
|
end
|
25
48
|
end
|
26
49
|
|
27
50
|
context 'when all specs finished' do
|
28
51
|
before do
|
52
|
+
allow(splitter).to receive(:append?)
|
29
53
|
allow(RSpeed::Redis).to receive(:specs_finished?).and_return(true)
|
30
54
|
allow(splitter).to receive(:rename)
|
31
|
-
allow(RSpeed::Redis).to receive(:
|
55
|
+
allow(RSpeed::Redis).to receive(:clean)
|
32
56
|
end
|
33
57
|
|
34
58
|
it 'renames the tmp data to the permanent key result' do
|
@@ -40,7 +64,7 @@ RSpec.describe RSpeed::Observer, '.after' do
|
|
40
64
|
it 'destroyes pipe finished flag keys' do
|
41
65
|
described_class.after_suite
|
42
66
|
|
43
|
-
expect(RSpeed::Redis).to have_received(:
|
67
|
+
expect(RSpeed::Redis).to have_received(:clean)
|
44
68
|
end
|
45
69
|
end
|
46
70
|
end
|
@@ -1,13 +1,11 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
RSpec.describe RSpeed::Redis, '.
|
4
|
-
|
3
|
+
RSpec.describe RSpeed::Redis, '.clean' do
|
4
|
+
it 'destroys all keys that keeps the pipe finished info' do
|
5
5
|
described_class.set('rspeed_pipe_1', true)
|
6
6
|
described_class.set('rspeed_pipe_2', true)
|
7
|
-
end
|
8
7
|
|
9
|
-
|
10
|
-
described_class.clean_pipes_flag
|
8
|
+
described_class.clean
|
11
9
|
|
12
10
|
expect(described_class.keys('*')).to eq([])
|
13
11
|
end
|
@@ -4,20 +4,31 @@ RSpec.describe RSpeed::Runner, '#run' do
|
|
4
4
|
let!(:shell) { double('shell') }
|
5
5
|
let!(:splitter) { instance_double('RSpeed::Splitter') }
|
6
6
|
|
7
|
-
before
|
7
|
+
before do
|
8
|
+
allow(shell).to receive(:call)
|
9
|
+
allow(RSpeed::Splitter).to receive(:new).and_return(splitter)
|
10
|
+
allow(RSpeed::Observer).to receive(:after_suite)
|
11
|
+
end
|
12
|
+
|
13
|
+
context 'when does not need warm' do
|
14
|
+
before { allow(splitter).to receive(:need_warm?).and_return(false) }
|
8
15
|
|
9
|
-
|
10
|
-
|
16
|
+
it 'does not run the specs' do
|
17
|
+
described_class.run(shell)
|
11
18
|
|
12
|
-
|
13
|
-
|
19
|
+
expect(shell).not_to have_received(:call)
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'executes the after suite to complete the current pipe' do
|
23
|
+
described_class.run(shell)
|
24
|
+
|
25
|
+
expect(RSpeed::Observer).to have_received(:after_suite)
|
14
26
|
end
|
15
27
|
end
|
16
28
|
|
17
|
-
context 'when
|
29
|
+
context 'when need warm' do
|
18
30
|
before do
|
19
|
-
allow(splitter).to receive(:
|
20
|
-
allow(shell).to receive(:call)
|
31
|
+
allow(splitter).to receive(:need_warm?).and_return(true)
|
21
32
|
allow(splitter).to receive(:pipe_files).and_return('spec_1.rb spec_2.rb')
|
22
33
|
end
|
23
34
|
|
@@ -26,5 +37,11 @@ RSpec.describe RSpeed::Runner, '#run' do
|
|
26
37
|
|
27
38
|
expect(shell).to have_received(:call).with('bundle exec rspec spec_1.rb spec_2.rb')
|
28
39
|
end
|
40
|
+
|
41
|
+
it 'does not execute the after suite to complete the current pipe' do
|
42
|
+
described_class.run(shell)
|
43
|
+
|
44
|
+
expect(RSpeed::Observer).not_to have_received(:after_suite)
|
45
|
+
end
|
29
46
|
end
|
30
47
|
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
RSpec.describe RSpeed::Splitter, '#append?' do
|
4
|
+
subject(:splitter) { described_class.new }
|
5
|
+
|
6
|
+
context 'when has no result' do
|
7
|
+
before { allow(RSpeed::Redis).to receive(:result?).and_return(false) }
|
8
|
+
|
9
|
+
context 'when is not the first pipe' do
|
10
|
+
before { allow(splitter).to receive(:first_pipe?).and_return(false) }
|
11
|
+
|
12
|
+
it { expect(splitter.append?).to be(false) }
|
13
|
+
end
|
14
|
+
|
15
|
+
context 'when is the first pipe' do
|
16
|
+
before { allow(splitter).to receive(:first_pipe?).and_return(true) }
|
17
|
+
|
18
|
+
it { expect(splitter.append?).to be(true) }
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
context 'when has result' do
|
23
|
+
before { allow(RSpeed::Redis).to receive(:result?).and_return(true) }
|
24
|
+
|
25
|
+
context 'when is not the first pipe' do
|
26
|
+
before { allow(splitter).to receive(:first_pipe?).and_return(false) }
|
27
|
+
|
28
|
+
it { expect(splitter.append?).to be(true) }
|
29
|
+
end
|
30
|
+
|
31
|
+
context 'when is the first pipe' do
|
32
|
+
before { allow(splitter).to receive(:first_pipe?).and_return(true) }
|
33
|
+
|
34
|
+
it { expect(splitter.append?).to be(true) }
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
RSpec.describe RSpeed::Splitter, '#need_warm?' do
|
4
|
+
subject(:splitter) { described_class.new }
|
5
|
+
|
6
|
+
context 'when has no result' do
|
7
|
+
before { allow(RSpeed::Redis).to receive(:result?).and_return(false) }
|
8
|
+
|
9
|
+
context 'when is not the first pipe' do
|
10
|
+
before { allow(splitter).to receive(:first_pipe?).and_return(false) }
|
11
|
+
|
12
|
+
it { expect(splitter.need_warm?).to be(false) }
|
13
|
+
end
|
14
|
+
|
15
|
+
context 'when is the first pipe' do
|
16
|
+
before { allow(splitter).to receive(:first_pipe?).and_return(true) }
|
17
|
+
|
18
|
+
it { expect(splitter.need_warm?).to be(true) }
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
context 'when has result' do
|
23
|
+
before { allow(RSpeed::Redis).to receive(:result?).and_return(true) }
|
24
|
+
|
25
|
+
context 'when is not the first pipe' do
|
26
|
+
before { allow(splitter).to receive(:first_pipe?).and_return(false) }
|
27
|
+
|
28
|
+
it { expect(splitter.need_warm?).to be(false) }
|
29
|
+
end
|
30
|
+
|
31
|
+
context 'when is the first pipe' do
|
32
|
+
before { allow(splitter).to receive(:first_pipe?).and_return(true) }
|
33
|
+
|
34
|
+
it { expect(splitter.need_warm?).to be(false) }
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspeed
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Washington Botelho
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: redis
|
@@ -167,6 +167,7 @@ files:
|
|
167
167
|
- lib/rspeed.rb
|
168
168
|
- lib/rspeed/env.rb
|
169
169
|
- lib/rspeed/extension.rb
|
170
|
+
- lib/rspeed/logger.rb
|
170
171
|
- lib/rspeed/observer.rb
|
171
172
|
- lib/rspeed/redis.rb
|
172
173
|
- lib/rspeed/runner.rb
|
@@ -191,7 +192,7 @@ files:
|
|
191
192
|
- spec/models/rspeed/observer/after_suite_spec.rb
|
192
193
|
- spec/models/rspeed/observer/before_spec.rb
|
193
194
|
- spec/models/rspeed/observer/before_suite_spec.rb
|
194
|
-
- spec/models/rspeed/redis/
|
195
|
+
- spec/models/rspeed/redis/clean_spec.rb
|
195
196
|
- spec/models/rspeed/redis/client_spec.rb
|
196
197
|
- spec/models/rspeed/redis/destroy_spec.rb
|
197
198
|
- spec/models/rspeed/redis/get_spec.rb
|
@@ -202,12 +203,13 @@ files:
|
|
202
203
|
- spec/models/rspeed/redis/specs_initiated_spec.rb
|
203
204
|
- spec/models/rspeed/runner/run_spec.rb
|
204
205
|
- spec/models/rspeed/splitter/actual_examples_spec.rb
|
206
|
+
- spec/models/rspeed/splitter/append_question_spec.rb
|
205
207
|
- spec/models/rspeed/splitter/append_spec.rb
|
206
208
|
- spec/models/rspeed/splitter/diff_spec.rb
|
207
209
|
- spec/models/rspeed/splitter/first_pipe_spec.rb
|
208
210
|
- spec/models/rspeed/splitter/get_spec.rb
|
211
|
+
- spec/models/rspeed/splitter/need_warm_question_spec.rb
|
209
212
|
- spec/models/rspeed/splitter/pipe_files_spec.rb
|
210
|
-
- spec/models/rspeed/splitter/redundant_run_spec.rb
|
211
213
|
- spec/models/rspeed/splitter/rename_spec.rb
|
212
214
|
- spec/models/rspeed/splitter/split_spec.rb
|
213
215
|
- spec/models/rspeed/variable/append_name_spec.rb
|
@@ -258,10 +260,10 @@ test_files:
|
|
258
260
|
- spec/models/rspeed/variable/pipe_name_spec.rb
|
259
261
|
- spec/models/rspeed/redis/destroy_spec.rb
|
260
262
|
- spec/models/rspeed/redis/get_spec.rb
|
263
|
+
- spec/models/rspeed/redis/clean_spec.rb
|
261
264
|
- spec/models/rspeed/redis/client_spec.rb
|
262
265
|
- spec/models/rspeed/redis/specs_finished_spec.rb
|
263
266
|
- spec/models/rspeed/redis/set_spec.rb
|
264
|
-
- spec/models/rspeed/redis/clean_pipes_flag_spec.rb
|
265
267
|
- spec/models/rspeed/redis/specs_initiated_spec.rb
|
266
268
|
- spec/models/rspeed/redis/result_spec.rb
|
267
269
|
- spec/models/rspeed/redis/keys_spec.rb
|
@@ -270,11 +272,12 @@ test_files:
|
|
270
272
|
- spec/models/rspeed/splitter/actual_examples_spec.rb
|
271
273
|
- spec/models/rspeed/splitter/get_spec.rb
|
272
274
|
- spec/models/rspeed/splitter/rename_spec.rb
|
273
|
-
- spec/models/rspeed/splitter/
|
275
|
+
- spec/models/rspeed/splitter/need_warm_question_spec.rb
|
274
276
|
- spec/models/rspeed/splitter/pipe_files_spec.rb
|
275
277
|
- spec/models/rspeed/splitter/first_pipe_spec.rb
|
276
278
|
- spec/models/rspeed/splitter/diff_spec.rb
|
277
279
|
- spec/models/rspeed/splitter/split_spec.rb
|
280
|
+
- spec/models/rspeed/splitter/append_question_spec.rb
|
278
281
|
- spec/models/rspeed/observer/before_suite_spec.rb
|
279
282
|
- spec/models/rspeed/observer/before_spec.rb
|
280
283
|
- spec/models/rspeed/observer/after_suite_spec.rb
|
@@ -1,45 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
RSpec.describe RSpeed::Splitter, '.redundant_run?' do
|
4
|
-
subject(:splitter) { described_class.new }
|
5
|
-
|
6
|
-
context 'when is not pipe 1' do
|
7
|
-
before { allow(RSpeed::Env).to receive(:pipe).and_return(2) }
|
8
|
-
|
9
|
-
context 'when result key exists' do
|
10
|
-
let!(:redis) { redis_object }
|
11
|
-
|
12
|
-
before do
|
13
|
-
redis.set('rspeed', '{}')
|
14
|
-
|
15
|
-
allow(RSpeed::Env).to receive(:pipe).and_return(2)
|
16
|
-
end
|
17
|
-
|
18
|
-
it { expect(splitter.redundant_run?).to be(false) }
|
19
|
-
end
|
20
|
-
|
21
|
-
context 'when result key does not exist' do
|
22
|
-
it { expect(splitter.redundant_run?).to be(true) }
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
context 'when is the first pipe' do
|
27
|
-
before { allow(RSpeed::Env).to receive(:pipe).and_return(1) }
|
28
|
-
|
29
|
-
context 'when result key exists' do
|
30
|
-
let!(:redis) { redis_object }
|
31
|
-
|
32
|
-
before do
|
33
|
-
redis.set('rspeed', '{}')
|
34
|
-
|
35
|
-
allow(RSpeed::Env).to receive(:pipe).and_return(2)
|
36
|
-
end
|
37
|
-
|
38
|
-
it { expect(splitter.redundant_run?).to be(false) }
|
39
|
-
end
|
40
|
-
|
41
|
-
context 'when result key does not exist' do
|
42
|
-
it { expect(splitter.redundant_run?).to be(false) }
|
43
|
-
end
|
44
|
-
end
|
45
|
-
end
|