test_bench 1.2.0.0 → 1.2.0.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/test_bench.rb +3 -1
- data/lib/test_bench/cli.rb +1 -1
- data/lib/test_bench/cli/parse_arguments.rb +21 -21
- data/lib/test_bench/controls.rb +3 -1
- data/lib/test_bench/controls/error.rb +8 -8
- data/lib/test_bench/controls/output/newline_character.rb +6 -1
- data/lib/test_bench/controls/output/summary/error.rb +5 -5
- data/lib/test_bench/controls/output/summary/session.rb +5 -5
- data/lib/test_bench/controls/time.rb +12 -2
- data/lib/test_bench/fixtures.rb +3 -1
- data/lib/test_bench/output/buffer.rb +4 -2
- data/lib/test_bench/output/timer/substitute.rb +1 -1
- data/lib/test_bench/output/writer.rb +1 -1
- data/lib/test_bench/run.rb +4 -4
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 401590086df82ac9a8f1b1986ee18e2d16c50fc853906bdd048a0dfdb83e6f9f
|
4
|
+
data.tar.gz: 065c9f7af87e614ccc0377f7d3a3baf3f31081cadd6293435d53ea2f93fc1077
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d8cf556067bf2a71e11e1401b8dd476143b7d775cf2fb7315612b9e422fc113d135556f711f6c26a39c4a43794a3cf2455f50c15d74e02fbda22a67334db1390
|
7
|
+
data.tar.gz: a1abc311463834f6a037a0e870a65a74fcd2daa02775a6b8d432335f75c2ee113084b311d70d8fac56d23567ea5481c806b92823d4fe9d9666bb6b40a12f4c8b
|
data/lib/test_bench.rb
CHANGED
data/lib/test_bench/cli.rb
CHANGED
@@ -8,7 +8,7 @@ module TestBench
|
|
8
8
|
read_stdin = $stdin.stat.pipe?
|
9
9
|
|
10
10
|
if read_stdin && $stdin.eof?
|
11
|
-
|
11
|
+
STDERR.puts "$stdin is a pipe, but no data was written to it; no test files will be run"
|
12
12
|
end
|
13
13
|
|
14
14
|
Run.(exclude: exclude_file_pattern) do |run|
|
@@ -48,15 +48,15 @@ module TestBench
|
|
48
48
|
parser.on('-h', '--help', "Print this help message and exit successfully") do
|
49
49
|
output_device.puts(parser.help)
|
50
50
|
|
51
|
-
|
51
|
+
raise SystemExit.new(0)
|
52
52
|
end
|
53
53
|
|
54
54
|
parser.on('-V', '--version', "Print version and exit successfully") do
|
55
|
-
output_device.puts
|
56
|
-
|
57
|
-
|
55
|
+
output_device.puts <<TEXT
|
56
|
+
test-bench (#{self.class.program_name}) version #{self.class.version}
|
57
|
+
TEXT
|
58
58
|
|
59
|
-
|
59
|
+
raise SystemExit.new(0)
|
60
60
|
end
|
61
61
|
|
62
62
|
parser.separator('')
|
@@ -128,29 +128,29 @@ module TestBench
|
|
128
128
|
env['TEST_BENCH_VERBOSE'] = verbose ? 'on' : 'off'
|
129
129
|
end
|
130
130
|
|
131
|
-
parser.separator(
|
131
|
+
parser.separator(<<TEXT)
|
132
132
|
|
133
|
-
|
134
|
-
|
133
|
+
Paths to test files (and directories containing test files) can be given after any command line arguments or via STDIN (or both).
|
134
|
+
If no paths are given, a default path (#{Defaults.tests_directory}) is scanned for test files.
|
135
135
|
|
136
|
-
|
136
|
+
The following environment variables can also control execution:
|
137
137
|
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
138
|
+
#{parser.summary_indent}TEST_BENCH_ABORT_ON_ERROR Same as -a or --abort-on-error
|
139
|
+
#{parser.summary_indent}TEST_BENCH_DETAIL Same as -d or --detail
|
140
|
+
#{parser.summary_indent}TEST_BENCH_EXCLUDE_FILE_PATTERN Same as -x or --exclude-file-pattern
|
141
|
+
#{parser.summary_indent}TEST_BENCH_LOG_LEVEL Same as -l or --log-level
|
142
|
+
#{parser.summary_indent}TEST_BENCH_OMIT_BACKTRACE_PATTERN Same as -o or --omit-backtrace-pattern
|
143
|
+
#{parser.summary_indent}TEST_BENCH_OUTPUT_STYLING Same as -s or --output-styling
|
144
|
+
#{parser.summary_indent}TEST_BENCH_FAIL_DEACTIVATED_TESTS Opposite of -p or --permit-deactivated-tests
|
145
|
+
#{parser.summary_indent}TEST_BENCH_REVERSE_BACKTRACES Same as -r or --reverse-backtraces
|
146
|
+
#{parser.summary_indent}TEST_BENCH_VERBOSE Same as -v or --reverse-backtraces
|
147
147
|
|
148
|
-
|
148
|
+
TEXT
|
149
149
|
end
|
150
150
|
end
|
151
151
|
|
152
152
|
def assure_pattern(pattern_text)
|
153
|
-
Regexp.new(pattern_text)
|
153
|
+
Regexp.new(pattern_text.to_s)
|
154
154
|
rescue RegexpError
|
155
155
|
raise Error, "Invalid regular expression pattern (Pattern: #{pattern_text.inspect})"
|
156
156
|
end
|
@@ -164,7 +164,7 @@ module TestBench
|
|
164
164
|
end
|
165
165
|
|
166
166
|
def self.version
|
167
|
-
if
|
167
|
+
if Object.const_defined?(:Gem)
|
168
168
|
spec = Gem.loaded_specs['test_bench']
|
169
169
|
end
|
170
170
|
|
data/lib/test_bench/controls.rb
CHANGED
@@ -11,11 +11,11 @@ module TestBench
|
|
11
11
|
|
12
12
|
error = Error.example(message)
|
13
13
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
14
|
+
<<TEXT
|
15
|
+
#{indent}#{error.backtrace[0]}: #{error.message} (#{error.class.name})
|
16
|
+
\t#{indent}from #{error.backtrace[1]}
|
17
|
+
\t#{indent}from #{error.backtrace[2]}
|
18
|
+
TEXT
|
19
19
|
end
|
20
20
|
|
21
21
|
module Assertion
|
@@ -24,9 +24,9 @@ module TestBench
|
|
24
24
|
|
25
25
|
assertion_failure = TestBench::Fixture::AssertionFailure.build(caller_location)
|
26
26
|
|
27
|
-
|
28
|
-
|
29
|
-
|
27
|
+
<<TEXT
|
28
|
+
#{assertion_failure.backtrace[0]}: #{assertion_failure.message} (#{assertion_failure.class.name})
|
29
|
+
TEXT
|
30
30
|
end
|
31
31
|
end
|
32
32
|
end
|
@@ -5,12 +5,12 @@ module TestBench
|
|
5
5
|
module Error
|
6
6
|
module Text
|
7
7
|
def self.example
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
8
|
+
<<TEXT
|
9
|
+
Error Summary:
|
10
|
+
1: #{file}
|
11
|
+
#{error.backtrace[0]}: #{error} (#{error.class})
|
12
12
|
|
13
|
-
|
13
|
+
TEXT
|
14
14
|
end
|
15
15
|
|
16
16
|
def self.file
|
@@ -5,12 +5,12 @@ module TestBench
|
|
5
5
|
module Session
|
6
6
|
module Text
|
7
7
|
def self.example
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
8
|
+
<<TEXT
|
9
|
+
Finished running 0 files
|
10
|
+
Ran 0 tests in 0.000s (0.0 tests/second)
|
11
|
+
0 passed, 0 skipped, 0 failed, 0 total errors
|
12
12
|
|
13
|
-
|
13
|
+
TEXT
|
14
14
|
end
|
15
15
|
end
|
16
16
|
end
|
@@ -12,9 +12,19 @@ module TestBench
|
|
12
12
|
minutes = self.minutes
|
13
13
|
seconds = self.seconds + seconds_offset
|
14
14
|
|
15
|
-
|
15
|
+
if not RUBY_ENGINE == 'mruby'
|
16
|
+
tz_offset = self.tz_offset
|
16
17
|
|
17
|
-
|
18
|
+
final_argument = tz_offset
|
19
|
+
else
|
20
|
+
seconds, subseconds = seconds.divmod(1)
|
21
|
+
|
22
|
+
microseconds = subseconds * 1_000_000
|
23
|
+
|
24
|
+
final_argument = microseconds
|
25
|
+
end
|
26
|
+
|
27
|
+
::Time.new(year, month, day, hours, minutes, seconds, final_argument)
|
18
28
|
end
|
19
29
|
|
20
30
|
def self.year
|
data/lib/test_bench/fixtures.rb
CHANGED
@@ -41,7 +41,9 @@ module TestBench
|
|
41
41
|
end
|
42
42
|
|
43
43
|
def new_record(signal, data)
|
44
|
-
record =
|
44
|
+
record = super
|
45
|
+
|
46
|
+
record.extend(Record)
|
45
47
|
|
46
48
|
case signal
|
47
49
|
when :enter_context, :start_test, :start_fixture
|
@@ -87,7 +89,7 @@ module TestBench
|
|
87
89
|
stack.length
|
88
90
|
end
|
89
91
|
|
90
|
-
|
92
|
+
module Record
|
91
93
|
attr_accessor :batch_data
|
92
94
|
|
93
95
|
def forward(raw_output)
|
data/lib/test_bench/run.rb
CHANGED
@@ -79,15 +79,15 @@ module TestBench
|
|
79
79
|
def directory(path)
|
80
80
|
glob_pattern = File.join(path, '**/*.rb')
|
81
81
|
|
82
|
-
Dir
|
83
|
-
next if exclude_pattern.match?(path)
|
84
|
-
|
82
|
+
Dir.glob(glob_pattern).sort.each do |path|
|
85
83
|
file(path)
|
86
84
|
end
|
87
85
|
end
|
88
86
|
|
89
87
|
def file(path)
|
90
|
-
|
88
|
+
unless exclude_pattern.match?(path)
|
89
|
+
session.load(path)
|
90
|
+
end
|
91
91
|
end
|
92
92
|
|
93
93
|
module Defaults
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: test_bench
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.0.
|
4
|
+
version: 1.2.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nathan Ladd
|
8
8
|
autorequire:
|
9
9
|
bindir: script
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-04-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: test_bench-fixture
|
@@ -111,8 +111,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
111
111
|
- !ruby/object:Gem::Version
|
112
112
|
version: '0'
|
113
113
|
requirements: []
|
114
|
-
rubygems_version: 3.1.
|
114
|
+
rubygems_version: 3.1.4
|
115
115
|
signing_key:
|
116
116
|
specification_version: 4
|
117
|
-
summary: Principled Test Framework for Ruby
|
117
|
+
summary: Principled Test Framework for Ruby and MRuby
|
118
118
|
test_files: []
|