turbo_tests 2.1.0 → 2.2.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/.github/workflows/tests.yml +2 -2
- data/Gemfile.lock +2 -3
- data/README.md +2 -1
- data/lib/turbo_tests/cli.rb +6 -0
- data/lib/turbo_tests/reporter.rb +5 -0
- data/lib/turbo_tests/runner.rb +12 -2
- data/lib/turbo_tests/version.rb +1 -1
- data/turbo_tests.gemspec +0 -2
- metadata +2 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4333741571516dc714d516eac90fb9cf56236b7084935e9ebdfa313becf842d5
|
4
|
+
data.tar.gz: 56c3df79a128084822f5bb88de6500bc6e3e254041609a6329b7b587f180298b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f9e1d084a510a334be437dcc200d496118e05b65b7b61730dfe8b1de3b90014de73f7108754a8fc3caac216bbebdec858798d2a798db43a87bb2f2fdd108edb6
|
7
|
+
data.tar.gz: 8fc6250f94c926eacbebca503a90640ed30998430a54ed31bf97d8bfc090b92f35202a043dbe08f28c42432fd9f300c7ba357d3bd3ee17daa95ea0adc3e457cc
|
data/.github/workflows/tests.yml
CHANGED
@@ -13,7 +13,7 @@ jobs:
|
|
13
13
|
strategy:
|
14
14
|
fail-fast: true
|
15
15
|
matrix:
|
16
|
-
ruby: [ 2.7, 3.0, 3.1, 3.2 ]
|
16
|
+
ruby: [ 2.7, "3.0", 3.1, 3.2 ]
|
17
17
|
|
18
18
|
steps:
|
19
19
|
- uses: actions/checkout@v3
|
@@ -26,4 +26,4 @@ jobs:
|
|
26
26
|
- name: Run tests
|
27
27
|
timeout-minutes: 5
|
28
28
|
run: |
|
29
|
-
|
29
|
+
bundle exec turbo_tests -n4
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
<div align="center">
|
6
6
|
<img src="https://user-images.githubusercontent.com/78694043/233910064-87a6d557-1120-42d2-b965-2a9403c6f2f4.svg" width="500" alt="Turbo-Tests">
|
7
|
-
|
7
|
+
|
8
8
|
</div>
|
9
9
|
|
10
10
|
<div align="center">
|
@@ -96,6 +96,7 @@ Options:
|
|
96
96
|
--runtime-log FILE Location of previously recorded test runtimes
|
97
97
|
-v, --verbose More output
|
98
98
|
--fail-fast=[N]
|
99
|
+
--seed SEED Seed for rspec
|
99
100
|
```
|
100
101
|
|
101
102
|
## Development
|
data/lib/turbo_tests/cli.rb
CHANGED
@@ -16,6 +16,7 @@ module TurboTests
|
|
16
16
|
runtime_log = nil
|
17
17
|
verbose = false
|
18
18
|
fail_fast = nil
|
19
|
+
seed = nil
|
19
20
|
|
20
21
|
OptionParser.new { |opts|
|
21
22
|
opts.banner = <<~BANNER
|
@@ -76,6 +77,10 @@ module TurboTests
|
|
76
77
|
end
|
77
78
|
fail_fast = n.nil? || n < 1 ? 1 : n
|
78
79
|
end
|
80
|
+
|
81
|
+
opts.on("--seed SEED", "Seed for rspec") do |s|
|
82
|
+
seed = s
|
83
|
+
end
|
79
84
|
}.parse!(@argv)
|
80
85
|
|
81
86
|
requires.each { |f| require(f) }
|
@@ -101,6 +106,7 @@ module TurboTests
|
|
101
106
|
verbose: verbose,
|
102
107
|
fail_fast: fail_fast,
|
103
108
|
count: count,
|
109
|
+
seed: seed
|
104
110
|
)
|
105
111
|
|
106
112
|
if success
|
data/lib/turbo_tests/reporter.rb
CHANGED
@@ -114,6 +114,11 @@ module TurboTests
|
|
114
114
|
RSpec::Core::Notifications::NullNotification)
|
115
115
|
end
|
116
116
|
|
117
|
+
def seed_notification(seed, seed_used)
|
118
|
+
puts RSpec::Core::Notifications::SeedNotification.new(seed, seed_used).fully_formatted
|
119
|
+
puts
|
120
|
+
end
|
121
|
+
|
117
122
|
protected
|
118
123
|
|
119
124
|
def delegate_to_formatters(method, *args)
|
data/lib/turbo_tests/runner.rb
CHANGED
@@ -20,6 +20,8 @@ module TurboTests
|
|
20
20
|
verbose = opts.fetch(:verbose, false)
|
21
21
|
fail_fast = opts.fetch(:fail_fast, nil)
|
22
22
|
count = opts.fetch(:count, nil)
|
23
|
+
seed = opts.fetch(:seed) || rand(0xFFFF).to_s
|
24
|
+
seed_used = !opts[:seed].nil?
|
23
25
|
|
24
26
|
if verbose
|
25
27
|
STDERR.puts "VERBOSE"
|
@@ -34,7 +36,9 @@ module TurboTests
|
|
34
36
|
runtime_log: runtime_log,
|
35
37
|
verbose: verbose,
|
36
38
|
fail_fast: fail_fast,
|
37
|
-
count: count
|
39
|
+
count: count,
|
40
|
+
seed: seed,
|
41
|
+
seed_used: seed_used
|
38
42
|
).run
|
39
43
|
end
|
40
44
|
|
@@ -49,6 +53,8 @@ module TurboTests
|
|
49
53
|
@load_time = 0
|
50
54
|
@load_count = 0
|
51
55
|
@failure_count = 0
|
56
|
+
@seed = opts[:seed]
|
57
|
+
@seed_used = opts[:seed_used]
|
52
58
|
|
53
59
|
@messages = Thread::Queue.new
|
54
60
|
@threads = []
|
@@ -86,6 +92,8 @@ module TurboTests
|
|
86
92
|
|
87
93
|
report_number_of_tests(tests_in_groups)
|
88
94
|
|
95
|
+
@reporter.seed_notification(@seed, @seed_used)
|
96
|
+
|
89
97
|
wait_threads = tests_in_groups.map.with_index do |tests, process_id|
|
90
98
|
start_regular_subprocess(tests, process_id + 1, **subprocess_opts)
|
91
99
|
end
|
@@ -94,6 +102,8 @@ module TurboTests
|
|
94
102
|
|
95
103
|
@reporter.finish
|
96
104
|
|
105
|
+
@reporter.seed_notification(@seed, @seed_used)
|
106
|
+
|
97
107
|
@threads.each(&:join)
|
98
108
|
|
99
109
|
@reporter.failed_examples.empty? && wait_threads.map(&:value).all?(&:success?)
|
@@ -150,7 +160,7 @@ module TurboTests
|
|
150
160
|
command = [
|
151
161
|
"rspec",
|
152
162
|
*extra_args,
|
153
|
-
"--seed",
|
163
|
+
"--seed", @seed,
|
154
164
|
"--format", "TurboTests::JsonRowsFormatter",
|
155
165
|
"--out", tmp_filename,
|
156
166
|
*record_runtime_options,
|
data/lib/turbo_tests/version.rb
CHANGED
data/turbo_tests.gemspec
CHANGED
@@ -24,8 +24,6 @@ Gem::Specification.new do |spec|
|
|
24
24
|
|
25
25
|
spec.add_development_dependency "pry", "~> 0.14"
|
26
26
|
|
27
|
-
spec.add_runtime_dependency "bundler", ">= 2.1"
|
28
|
-
|
29
27
|
# Specify which files should be added to the gem when it is released.
|
30
28
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
31
29
|
spec.files = Dir.chdir(File.expand_path("..", __FILE__)) do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: turbo_tests
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Illia Zub
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-09-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -58,20 +58,6 @@ dependencies:
|
|
58
58
|
- - "~>"
|
59
59
|
- !ruby/object:Gem::Version
|
60
60
|
version: '0.14'
|
61
|
-
- !ruby/object:Gem::Dependency
|
62
|
-
name: bundler
|
63
|
-
requirement: !ruby/object:Gem::Requirement
|
64
|
-
requirements:
|
65
|
-
- - ">="
|
66
|
-
- !ruby/object:Gem::Version
|
67
|
-
version: '2.1'
|
68
|
-
type: :runtime
|
69
|
-
prerelease: false
|
70
|
-
version_requirements: !ruby/object:Gem::Requirement
|
71
|
-
requirements:
|
72
|
-
- - ">="
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
version: '2.1'
|
75
61
|
description:
|
76
62
|
email:
|
77
63
|
- ilya@serpapi.com
|