rspeed 0.5.1 → 0.5.2
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 +2 -1
- data/README.md +0 -1
- data/lib/rspeed.rb +0 -2
- data/lib/rspeed/env.rb +0 -4
- data/lib/rspeed/observer.rb +11 -10
- data/lib/rspeed/redis.rb +11 -2
- data/lib/rspeed/runner.rb +3 -1
- data/lib/rspeed/splitter.rb +11 -6
- data/lib/rspeed/variable.rb +5 -5
- data/lib/rspeed/version.rb +1 -1
- data/spec/models/rspeed/observer/after_spec.rb +5 -3
- data/spec/models/rspeed/observer/after_suite_spec.rb +2 -15
- data/spec/models/rspeed/observer/before_suite_spec.rb +13 -24
- data/spec/models/rspeed/redis/clean_spec.rb +8 -0
- data/spec/models/rspeed/runner/run_spec.rb +47 -17
- data/spec/models/rspeed/splitter/append_spec.rb +9 -25
- data/spec/models/rspeed/splitter/get_spec.rb +0 -14
- data/spec/models/rspeed/splitter/rename_spec.rb +13 -4
- data/spec/models/rspeed/variable/{tmp_spec.rb → pipe_profile_spec.rb} +3 -3
- data/spec/models/rspeed/variable/profile_pattern_spec.rb +5 -0
- data/spec/spec_helper.rb +13 -13
- metadata +6 -8
- data/spec/models/rspeed/env/tmp_spec.rb +0 -19
- data/spec/models/rspeed/variable/csv_spec.rb +0 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4a58e610b2982e8a8f81783f5704f0a136c971aa6df1a446cf32ce7a53485120
|
4
|
+
data.tar.gz: 41c88139eff91637c52cda59b1239ca1833aa0db886677d0a33c51564d500a19
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 67b9c9d9334b315b9392bf7a52965bc1884ab67c96345abf3f037b185010b4de24f9b895cc306567f9cf07737786d7f58edc4ab14f0e45a26acef8acd525ed2f
|
7
|
+
data.tar.gz: e2771f90d265bbfc5ea3273c82aa467dee40b3f5cbfc40ac0c7501da4577664c28bd11b491a1568907775584490a36e3c4d5c1935cc375aca27ff8713e9b0b00
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -30,7 +30,6 @@ rake rspeed:install
|
|
30
30
|
- `RSPEED_PIPE`: Current pipe
|
31
31
|
- `RSPEED_PIPES`: Quantity of pipes
|
32
32
|
- `RSPEED_RESULT_KEY`: The key that keeps the final result of all pipes
|
33
|
-
- `RSPEED_TMP_KEY`: The temporary key that keeps the partial result of the pipes
|
34
33
|
- `RSPEED`: Enables RSpeed
|
35
34
|
|
36
35
|
```sh
|
data/lib/rspeed.rb
CHANGED
data/lib/rspeed/env.rb
CHANGED
data/lib/rspeed/observer.rb
CHANGED
@@ -9,21 +9,21 @@ module RSpeed
|
|
9
9
|
line_number = example.metadata[:line_number]
|
10
10
|
spent_time = example.clock.now - example.metadata[:start_at]
|
11
11
|
|
12
|
-
|
13
|
-
|
14
|
-
|
12
|
+
json = { file: "#{file_path}:#{line_number}", time: spent_time }.to_json
|
13
|
+
|
14
|
+
RSpeed::Redis.client.lpush(RSpeed::Variable.profile, json)
|
15
15
|
end
|
16
16
|
|
17
17
|
def after_suite(splitter = ::RSpeed::Splitter.new)
|
18
18
|
RSpeed::Redis.set(RSpeed::Variable.pipe_name, true)
|
19
19
|
|
20
|
-
splitter.append if splitter.append?
|
21
|
-
|
22
20
|
return unless RSpeed::Redis.specs_finished?
|
23
21
|
|
24
22
|
splitter.rename
|
25
23
|
|
26
24
|
RSpeed::Redis.clean
|
25
|
+
|
26
|
+
RSpeed::Logger.log('RSpeed finished.')
|
27
27
|
end
|
28
28
|
|
29
29
|
def before(example)
|
@@ -31,13 +31,14 @@ module RSpeed
|
|
31
31
|
end
|
32
32
|
|
33
33
|
def before_suite
|
34
|
-
|
35
|
-
|
36
|
-
RSpeed::Redis.destroy(RSpeed::Variable.tmp) unless RSpeed::Redis.specs_initiated?
|
34
|
+
clean_profile
|
37
35
|
end
|
38
36
|
|
39
|
-
def
|
40
|
-
|
37
|
+
def clean_profile
|
38
|
+
RSpeed::Logger.log('[RSpeed::Observer#clean_profile] Cleanning current flag and profile.')
|
39
|
+
|
40
|
+
RSpeed::Redis.destroy(RSpeed::Variable.pipe_name)
|
41
|
+
RSpeed::Redis.destroy(RSpeed::Variable.profile)
|
41
42
|
end
|
42
43
|
end
|
43
44
|
end
|
data/lib/rspeed/redis.rb
CHANGED
@@ -7,7 +7,10 @@ module RSpeed
|
|
7
7
|
module_function
|
8
8
|
|
9
9
|
def clean
|
10
|
+
RSpeed::Logger.log('[RSpeed::Redis#clean] Cleaning pipes and profiles.')
|
11
|
+
|
10
12
|
destroy(RSpeed::Variable::PIPES_PATTERN)
|
13
|
+
destroy(RSpeed::Variable::PROFILE_PATTERN)
|
11
14
|
end
|
12
15
|
|
13
16
|
def client
|
@@ -15,6 +18,8 @@ module RSpeed
|
|
15
18
|
end
|
16
19
|
|
17
20
|
def destroy(pattern = RSpeed::Variable::DEFAULT_PATTERN)
|
21
|
+
RSpeed::Logger.log(%([RSpeed::Redis#destroy] Destroying pattern "#{pattern}".))
|
22
|
+
|
18
23
|
keys(pattern).each { |key| client.del(key) }
|
19
24
|
end
|
20
25
|
|
@@ -45,11 +50,15 @@ module RSpeed
|
|
45
50
|
end
|
46
51
|
|
47
52
|
def specs_finished?
|
48
|
-
RSpeed::Redis.keys(RSpeed::Variable::PIPES_PATTERN).size == RSpeed::Env.pipes
|
53
|
+
(RSpeed::Redis.keys(RSpeed::Variable::PIPES_PATTERN).size == RSpeed::Env.pipes).tap do |boo|
|
54
|
+
RSpeed::Logger.log("[RSpeed::Redis#specs_finished?] Specs #{boo ? 'finished.' : 'not fineshed yet.'}")
|
55
|
+
end
|
49
56
|
end
|
50
57
|
|
51
58
|
def specs_initiated?
|
52
|
-
RSpeed::Redis.keys(RSpeed::Variable::PIPES_PATTERN).any
|
59
|
+
RSpeed::Redis.keys(RSpeed::Variable::PIPES_PATTERN).any?.tap do |boo|
|
60
|
+
RSpeed::Logger.log("[RSpeed::Redis#specs_initiated?] Specs #{boo ? 'initialized.' : 'not initialized yet.'}")
|
61
|
+
end
|
53
62
|
end
|
54
63
|
end
|
55
64
|
end
|
data/lib/rspeed/runner.rb
CHANGED
@@ -5,7 +5,9 @@ module RSpeed
|
|
5
5
|
module_function
|
6
6
|
|
7
7
|
def run(shell, splitter: ::RSpeed::Splitter.new)
|
8
|
-
|
8
|
+
if RSpeed::Redis.result? || splitter.first_pipe?
|
9
|
+
return shell.call(['bundle exec rspec', splitter.pipe_files].compact.join(' '))
|
10
|
+
end
|
9
11
|
|
10
12
|
RSpeed::Logger.log("Pipe #{RSpeed::Env.pipe} skipped. Only Pipe 1 can warm.")
|
11
13
|
|
data/lib/rspeed/splitter.rb
CHANGED
@@ -29,10 +29,8 @@ module RSpeed
|
|
29
29
|
RSpeed::Redis.result? || first_pipe?
|
30
30
|
end
|
31
31
|
|
32
|
-
def append(
|
33
|
-
|
34
|
-
redis.lpush(RSpeed::Env.tmp_key, { file: file, time: time.to_f }.to_json)
|
35
|
-
end
|
32
|
+
def append(items:, key:)
|
33
|
+
items.each { |item| redis.rpush(key, item) }
|
36
34
|
end
|
37
35
|
|
38
36
|
def diff
|
@@ -50,7 +48,7 @@ module RSpeed
|
|
50
48
|
|
51
49
|
def get(pattern)
|
52
50
|
@get ||= begin
|
53
|
-
return redis.lrange(pattern, 0, -1) if [RSpeed::Variable.result
|
51
|
+
return redis.lrange(pattern, 0, -1) if [RSpeed::Variable.result].include?(pattern)
|
54
52
|
|
55
53
|
RSpeed::Redis.keys(pattern).map { |key| ::JSON.parse(redis.get(key)) }
|
56
54
|
end
|
@@ -67,7 +65,14 @@ module RSpeed
|
|
67
65
|
end
|
68
66
|
|
69
67
|
def rename
|
70
|
-
|
68
|
+
RSpeed::Logger.log('[RSpeed::Splitter#consolidate] Consolidating profiles.')
|
69
|
+
|
70
|
+
RSpeed::Redis.destroy(RSpeed::Env.result_key)
|
71
|
+
|
72
|
+
append(
|
73
|
+
items: RSpeed::Redis.client.keys('rspeed_profile_*').map { |key| redis.lrange(key, 0, -1) },
|
74
|
+
key: RSpeed::Env.result_key
|
75
|
+
)
|
71
76
|
end
|
72
77
|
|
73
78
|
def split(data = diff)
|
data/lib/rspeed/variable.rb
CHANGED
@@ -4,9 +4,9 @@ module RSpeed
|
|
4
4
|
module Variable
|
5
5
|
module_function
|
6
6
|
|
7
|
-
CSV = 'rspeed.csv'
|
8
7
|
DEFAULT_PATTERN = 'rspeed_*'
|
9
8
|
PIPES_PATTERN = 'rspeed_pipe_*'
|
9
|
+
PROFILE_PATTERN = 'rspeed_profile_*'
|
10
10
|
|
11
11
|
def append_name(value, suffix = nil)
|
12
12
|
[value, RSpeed::Env.name, suffix].compact.join('_')
|
@@ -20,12 +20,12 @@ module RSpeed
|
|
20
20
|
append_name('rspeed')
|
21
21
|
end
|
22
22
|
|
23
|
-
def tmp
|
24
|
-
append_name('rspeed_tmp')
|
25
|
-
end
|
26
|
-
|
27
23
|
def pipe_name
|
28
24
|
append_name('rspeed_pipe', RSpeed::Env.pipe)
|
29
25
|
end
|
26
|
+
|
27
|
+
def profile
|
28
|
+
append_name('rspeed_profile', RSpeed::Env.pipe)
|
29
|
+
end
|
30
30
|
end
|
31
31
|
end
|
data/lib/rspeed/version.rb
CHANGED
@@ -6,11 +6,13 @@ RSpec.describe RSpeed::Observer, '.after' do
|
|
6
6
|
let!(:metadata) { { file_path: 'file_path', line_number: 7, start_at: now - 1 } }
|
7
7
|
let!(:example) { instance_double(RSpec::Core::Example, clock: clock, metadata: metadata) }
|
8
8
|
|
9
|
-
before {
|
9
|
+
before { truncate_profiles }
|
10
10
|
|
11
|
-
it 'appends the
|
11
|
+
it 'appends the file and time on pipe profile key' do
|
12
12
|
described_class.after(example)
|
13
13
|
|
14
|
-
expect(
|
14
|
+
expect(RSpeed::Redis.client.lrange(RSpeed::Variable.profile, 0, -1)).to eq [
|
15
|
+
{ file: 'file_path:7', time: 1.0 }.to_json,
|
16
|
+
]
|
15
17
|
end
|
16
18
|
end
|
@@ -8,26 +8,13 @@ RSpec.describe RSpeed::Observer, '.after_suite' do
|
|
8
8
|
allow(splitter).to receive(:append)
|
9
9
|
end
|
10
10
|
|
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
|
16
|
-
|
17
|
-
it 'appends the time result on tmp key' do
|
18
|
-
described_class.after_suite
|
19
|
-
|
20
|
-
expect(splitter).to have_received(:append)
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
11
|
context 'when append? returns false' do
|
25
12
|
before do
|
26
13
|
allow(splitter).to receive(:append?).and_return(false)
|
27
14
|
allow(splitter).to receive(:rename)
|
28
15
|
end
|
29
16
|
|
30
|
-
it 'does not append the time result
|
17
|
+
it 'does not append the time result' do
|
31
18
|
described_class.after_suite
|
32
19
|
|
33
20
|
expect(splitter).not_to have_received(:append)
|
@@ -55,7 +42,7 @@ RSpec.describe RSpeed::Observer, '.after_suite' do
|
|
55
42
|
allow(RSpeed::Redis).to receive(:clean)
|
56
43
|
end
|
57
44
|
|
58
|
-
it '
|
45
|
+
it 'consolidates profiles' do
|
59
46
|
described_class.after_suite
|
60
47
|
|
61
48
|
expect(splitter).to have_received(:rename)
|
@@ -1,37 +1,26 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
RSpec.describe RSpeed::Observer, '.before_suite' do
|
4
|
-
|
4
|
+
let!(:redis) { redis_object }
|
5
5
|
|
6
|
-
|
7
|
-
|
6
|
+
before { truncate_profiles }
|
7
|
+
after { truncate_profiles }
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
end
|
13
|
-
|
14
|
-
context 'when specs are not initiated yet' do
|
15
|
-
before { allow(RSpeed::Redis).to receive(:specs_initiated?).and_return(false) }
|
9
|
+
it 'cleans only the current pipe profile' do
|
10
|
+
redis.lpush('rspeed_profile_1', { file: '1_spec.rb', time: 1 }.to_json)
|
11
|
+
redis.lpush('rspeed_profile_2', { file: '2_spec.rb', time: 2 }.to_json)
|
16
12
|
|
17
|
-
|
18
|
-
RSpeed::Redis.client.lpush(RSpeed::Env.tmp_key, { file: 'file', time: 1.0 }.to_json)
|
19
|
-
|
20
|
-
described_class.before_suite
|
13
|
+
described_class.before_suite
|
21
14
|
|
22
|
-
|
23
|
-
end
|
15
|
+
expect(redis.keys).to eq ['rspeed_profile_2']
|
24
16
|
end
|
25
17
|
|
26
|
-
|
27
|
-
|
18
|
+
it 'cleans the pipe flag' do
|
19
|
+
redis.set('rspeed_pipe_1', true)
|
20
|
+
redis.set('rspeed_pipe_2', true)
|
28
21
|
|
29
|
-
|
30
|
-
RSpeed::Redis.client.lpush(RSpeed::Env.tmp_key, { file: 'file', time: 1.0 }.to_json)
|
31
|
-
|
32
|
-
described_class.before_suite
|
22
|
+
described_class.before_suite
|
33
23
|
|
34
|
-
|
35
|
-
end
|
24
|
+
expect(redis.keys).to eq ['rspeed_pipe_2']
|
36
25
|
end
|
37
26
|
end
|
@@ -9,4 +9,12 @@ RSpec.describe RSpeed::Redis, '.clean' do
|
|
9
9
|
|
10
10
|
expect(described_class.keys('*')).to eq([])
|
11
11
|
end
|
12
|
+
|
13
|
+
it 'destroys the pipe profiles' do
|
14
|
+
described_class.set('rspeed_profile_1', true)
|
15
|
+
|
16
|
+
described_class.clean
|
17
|
+
|
18
|
+
expect(described_class.keys('*')).to eq([])
|
19
|
+
end
|
12
20
|
end
|
@@ -7,41 +7,71 @@ RSpec.describe RSpeed::Runner, '#run' do
|
|
7
7
|
before do
|
8
8
|
allow(shell).to receive(:call)
|
9
9
|
allow(RSpeed::Splitter).to receive(:new).and_return(splitter)
|
10
|
-
allow(RSpeed::Observer).to receive(:after_suite)
|
11
10
|
end
|
12
11
|
|
13
|
-
context 'when
|
14
|
-
before { allow(
|
12
|
+
context 'when has result' do
|
13
|
+
before { allow(RSpeed::Redis).to receive(:result?).and_return(true) }
|
15
14
|
|
16
|
-
|
17
|
-
|
15
|
+
context 'when is the first pipe' do
|
16
|
+
before do
|
17
|
+
allow(splitter).to receive(:first_pipe?).and_return(true)
|
18
|
+
allow(splitter).to receive(:pipe_files).and_return('spec_1.rb spec_2.rb')
|
19
|
+
end
|
18
20
|
|
19
|
-
|
21
|
+
it 'runs the pipe specs' do
|
22
|
+
described_class.run(shell)
|
23
|
+
|
24
|
+
expect(shell).to have_received(:call).with('bundle exec rspec spec_1.rb spec_2.rb')
|
25
|
+
end
|
20
26
|
end
|
21
27
|
|
22
|
-
|
23
|
-
|
28
|
+
context 'when is not the first pipe' do
|
29
|
+
before do
|
30
|
+
allow(splitter).to receive(:first_pipe?).and_return(false)
|
31
|
+
allow(splitter).to receive(:pipe_files).and_return('spec_1.rb spec_2.rb')
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'runs the pipe specs' do
|
35
|
+
described_class.run(shell)
|
24
36
|
|
25
|
-
|
37
|
+
expect(shell).to have_received(:call).with('bundle exec rspec spec_1.rb spec_2.rb')
|
38
|
+
end
|
26
39
|
end
|
27
40
|
end
|
28
41
|
|
29
|
-
context 'when
|
42
|
+
context 'when has no result' do
|
30
43
|
before do
|
31
|
-
allow(splitter).to receive(:
|
44
|
+
allow(splitter).to receive(:first_pipe?).and_return(false)
|
32
45
|
allow(splitter).to receive(:pipe_files).and_return('spec_1.rb spec_2.rb')
|
33
46
|
end
|
34
47
|
|
35
|
-
|
36
|
-
|
48
|
+
context 'when is the first pipe' do
|
49
|
+
before { allow(splitter).to receive(:first_pipe?).and_return(true) }
|
50
|
+
|
51
|
+
it 'runs the pipe specs' do
|
52
|
+
described_class.run(shell)
|
37
53
|
|
38
|
-
|
54
|
+
expect(shell).to have_received(:call).with('bundle exec rspec spec_1.rb spec_2.rb')
|
55
|
+
end
|
39
56
|
end
|
40
57
|
|
41
|
-
|
42
|
-
|
58
|
+
context 'when is not the first pipe' do
|
59
|
+
before do
|
60
|
+
allow(splitter).to receive(:first_pipe?).and_return(false)
|
61
|
+
allow(RSpeed::Observer).to receive(:after_suite)
|
62
|
+
end
|
63
|
+
|
64
|
+
it 'does not run the pipe specs' do
|
65
|
+
described_class.run(shell)
|
66
|
+
|
67
|
+
expect(shell).not_to have_received(:call)
|
68
|
+
end
|
69
|
+
|
70
|
+
it 'executes the after suite callback' do
|
71
|
+
described_class.run(shell)
|
43
72
|
|
44
|
-
|
73
|
+
expect(RSpeed::Observer).to have_received(:after_suite)
|
74
|
+
end
|
45
75
|
end
|
46
76
|
end
|
47
77
|
end
|
@@ -3,33 +3,17 @@
|
|
3
3
|
RSpec.describe RSpeed::Splitter, '#append' do
|
4
4
|
subject(:splitter) { described_class.new }
|
5
5
|
|
6
|
+
let!(:redis) { redis_object }
|
7
|
+
|
6
8
|
it 'appends file and time on rspeed key' do
|
7
|
-
splitter.append
|
9
|
+
splitter.append(
|
10
|
+
items: [{ file: '1_spec.rb', time: 1 }.to_json, { file: '2_spec.rb', time: 2 }.to_json],
|
11
|
+
key: 'rspeed'
|
12
|
+
)
|
8
13
|
|
9
|
-
expect(
|
10
|
-
'{"file":"
|
11
|
-
'{"file":"
|
14
|
+
expect(redis.lrange('rspeed', 0, -1)).to eq [
|
15
|
+
'{"file":"1_spec.rb","time":1}',
|
16
|
+
'{"file":"2_spec.rb","time":2}',
|
12
17
|
]
|
13
18
|
end
|
14
|
-
|
15
|
-
context 'when files is not given' do
|
16
|
-
before do
|
17
|
-
truncate_file
|
18
|
-
populate_csv_file
|
19
|
-
end
|
20
|
-
|
21
|
-
it 'read csv and append file and time on rspeed key' do
|
22
|
-
splitter.append
|
23
|
-
|
24
|
-
expect(splitter.get('rspeed_tmp')).to eq [
|
25
|
-
'{"file":"./spec/0_2_spec.rb","time":0.2}',
|
26
|
-
'{"file":"./spec/0_3_spec.rb","time":0.3}',
|
27
|
-
'{"file":"./spec/0_4_spec.rb","time":0.4}',
|
28
|
-
'{"file":"./spec/0_7_spec.rb","time":0.7}',
|
29
|
-
'{"file":"./spec/1_1_spec.rb","time":1.1}',
|
30
|
-
'{"file":"./spec/1_5_spec.rb","time":1.5}',
|
31
|
-
'{"file":"./spec/2_0_spec.rb","time":2.0}',
|
32
|
-
]
|
33
|
-
end
|
34
|
-
end
|
35
19
|
end
|
@@ -57,18 +57,4 @@ RSpec.describe RSpeed::Splitter, '#get' do
|
|
57
57
|
]
|
58
58
|
end
|
59
59
|
end
|
60
|
-
|
61
|
-
context 'when pattern is rspeed_tmp' do
|
62
|
-
before do
|
63
|
-
redis.lpush 'rspeed_tmp', { file: '1_spec.rb', time: 1 }.to_json
|
64
|
-
redis.lpush 'rspeed_tmp', { file: '2_spec.rb', time: 2 }.to_json
|
65
|
-
end
|
66
|
-
|
67
|
-
it 'executes the right fetch method' do
|
68
|
-
expect(splitter.get('rspeed_tmp')).to eq [
|
69
|
-
'{"file":"2_spec.rb","time":2}',
|
70
|
-
'{"file":"1_spec.rb","time":1}',
|
71
|
-
]
|
72
|
-
end
|
73
|
-
end
|
74
60
|
end
|
@@ -5,12 +5,21 @@ RSpec.describe RSpeed::Splitter, '#rename' do
|
|
5
5
|
|
6
6
|
let!(:redis) { redis_object }
|
7
7
|
|
8
|
-
before
|
8
|
+
before do
|
9
|
+
redis.lpush('rspeed', 'rspeed_content')
|
9
10
|
|
10
|
-
|
11
|
+
redis.lpush('rspeed_profile_1', { file: '1_spec.rb', time: 1.0 }.to_json)
|
12
|
+
redis.lpush('rspeed_profile_2', { file: '2_spec.rb', time: 2.0 }.to_json)
|
13
|
+
redis.lpush('rspeed_profile_3', { file: '3_spec.rb', time: 3.0 }.to_json)
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'copies profiles to the result key cleanning the previous result' do
|
11
17
|
splitter.rename
|
12
18
|
|
13
|
-
expect(redis.lrange('
|
14
|
-
|
19
|
+
expect(redis.lrange('rspeed', 0, -1)).to eq [
|
20
|
+
'{"file":"1_spec.rb","time":1.0}',
|
21
|
+
'{"file":"2_spec.rb","time":2.0}',
|
22
|
+
'{"file":"3_spec.rb","time":3.0}',
|
23
|
+
]
|
15
24
|
end
|
16
25
|
end
|
@@ -2,13 +2,13 @@
|
|
2
2
|
|
3
3
|
require 'support/env_mock'
|
4
4
|
|
5
|
-
RSpec.describe RSpeed::Variable, '.
|
6
|
-
it { expect(described_class.
|
5
|
+
RSpec.describe RSpeed::Variable, '.profile' do
|
6
|
+
it { expect(described_class.profile).to eq('rspeed_profile_1') }
|
7
7
|
|
8
8
|
context 'when env name is given' do
|
9
9
|
it 'includes the name' do
|
10
10
|
EnvMock.mock(rspeed_name: 'name') do
|
11
|
-
expect(described_class.
|
11
|
+
expect(described_class.profile).to eq('rspeed_profile_name_1')
|
12
12
|
end
|
13
13
|
end
|
14
14
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,25 +1,25 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
def delete_file(file_path
|
3
|
+
def delete_file(file_path)
|
4
4
|
File.delete(file_path) if File.exist?(file_path)
|
5
5
|
end
|
6
6
|
|
7
|
-
def
|
8
|
-
|
7
|
+
def truncate_profiles
|
8
|
+
RSpeed::Redis.destroy(RSpeed::Variable::PROFILE_PATTERN)
|
9
9
|
end
|
10
10
|
|
11
|
-
def
|
11
|
+
def populate_profiles
|
12
12
|
data = [
|
13
|
-
'
|
14
|
-
'
|
15
|
-
'
|
16
|
-
'
|
17
|
-
'
|
18
|
-
'
|
19
|
-
'
|
20
|
-
]
|
13
|
+
{ file: './spec/2_0_spec.rb', time: 2.0 }.to_json,
|
14
|
+
{ file: './spec/1_5_spec.rb', time: 1.5 }.to_json,
|
15
|
+
{ file: './spec/1_1_spec.rb', time: 1.1 }.to_json,
|
16
|
+
{ file: './spec/0_7_spec.rb', time: 0.7 }.to_json,
|
17
|
+
{ file: './spec/0_4_spec.rb', time: 0.4 }.to_json,
|
18
|
+
{ file: './spec/0_3_spec.rb', time: 0.3 }.to_json,
|
19
|
+
{ file: './spec/0_2_spec.rb', time: 0.2 }.to_json,
|
20
|
+
]
|
21
21
|
|
22
|
-
|
22
|
+
RSpeed::Splitter.new.append(items: data, key: RSpeed::Variable.profile)
|
23
23
|
end
|
24
24
|
|
25
25
|
def redis_object
|
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.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Washington Botelho
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-02-
|
11
|
+
date: 2021-02-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: redis
|
@@ -187,7 +187,6 @@ files:
|
|
187
187
|
- spec/models/rspeed/env/port_spec.rb
|
188
188
|
- spec/models/rspeed/env/result_key_spec.rb
|
189
189
|
- spec/models/rspeed/env/rspeed_spec.rb
|
190
|
-
- spec/models/rspeed/env/tmp_spec.rb
|
191
190
|
- spec/models/rspeed/observer/after_spec.rb
|
192
191
|
- spec/models/rspeed/observer/after_suite_spec.rb
|
193
192
|
- spec/models/rspeed/observer/before_spec.rb
|
@@ -213,13 +212,13 @@ files:
|
|
213
212
|
- spec/models/rspeed/splitter/rename_spec.rb
|
214
213
|
- spec/models/rspeed/splitter/split_spec.rb
|
215
214
|
- spec/models/rspeed/variable/append_name_spec.rb
|
216
|
-
- spec/models/rspeed/variable/csv_spec.rb
|
217
215
|
- spec/models/rspeed/variable/default_partner_spec.rb
|
218
216
|
- spec/models/rspeed/variable/key_spec.rb
|
219
217
|
- spec/models/rspeed/variable/pipe_name_spec.rb
|
218
|
+
- spec/models/rspeed/variable/pipe_profile_spec.rb
|
220
219
|
- spec/models/rspeed/variable/pipes_pattern_spec.rb
|
220
|
+
- spec/models/rspeed/variable/profile_pattern_spec.rb
|
221
221
|
- spec/models/rspeed/variable/result_spec.rb
|
222
|
-
- spec/models/rspeed/variable/tmp_spec.rb
|
223
222
|
- spec/spec_helper.rb
|
224
223
|
- spec/support/common.rb
|
225
224
|
- spec/support/coverage.rb
|
@@ -251,13 +250,13 @@ summary: Split and speed up your RSpec tests.
|
|
251
250
|
test_files:
|
252
251
|
- spec/spec_helper.rb
|
253
252
|
- spec/models/rspeed/variable/pipes_pattern_spec.rb
|
254
|
-
- spec/models/rspeed/variable/
|
253
|
+
- spec/models/rspeed/variable/pipe_profile_spec.rb
|
255
254
|
- spec/models/rspeed/variable/default_partner_spec.rb
|
256
|
-
- spec/models/rspeed/variable/csv_spec.rb
|
257
255
|
- spec/models/rspeed/variable/append_name_spec.rb
|
258
256
|
- spec/models/rspeed/variable/result_spec.rb
|
259
257
|
- spec/models/rspeed/variable/key_spec.rb
|
260
258
|
- spec/models/rspeed/variable/pipe_name_spec.rb
|
259
|
+
- spec/models/rspeed/variable/profile_pattern_spec.rb
|
261
260
|
- spec/models/rspeed/redis/destroy_spec.rb
|
262
261
|
- spec/models/rspeed/redis/get_spec.rb
|
263
262
|
- spec/models/rspeed/redis/clean_spec.rb
|
@@ -284,7 +283,6 @@ test_files:
|
|
284
283
|
- spec/models/rspeed/observer/after_spec.rb
|
285
284
|
- spec/models/rspeed/env/pipe_spec.rb
|
286
285
|
- spec/models/rspeed/env/rspeed_spec.rb
|
287
|
-
- spec/models/rspeed/env/tmp_spec.rb
|
288
286
|
- spec/models/rspeed/env/port_spec.rb
|
289
287
|
- spec/models/rspeed/env/name_spec.rb
|
290
288
|
- spec/models/rspeed/env/host_spec.rb
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'support/env_mock'
|
4
|
-
|
5
|
-
RSpec.describe RSpeed::Env, '.tmp_key' do
|
6
|
-
context 'when key is not setted on env' do
|
7
|
-
it 'returns default value' do
|
8
|
-
expect(described_class.tmp_key).to eq 'rspeed_tmp'
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
context 'when key is setted on env' do
|
13
|
-
it 'returns env value' do
|
14
|
-
EnvMock.mock(respeed_tmp_key: 'result_customer') do
|
15
|
-
expect(described_class.tmp_key).to eq 'result_customer'
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|