grntest 1.6.1 → 1.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ca196b4236185746df0d683e0b9632c4fd1dbaeffa5ed63c4331f73784ccd010
4
- data.tar.gz: 3fe5db66385b146d1ea2fa1470141b8e0c884fc9481ac469d4111464e1d340d5
3
+ metadata.gz: 738937a2c9b0aaaaca52666b1e473316e8061d723089088a354ba5866b74f09f
4
+ data.tar.gz: 130ba969e61ea492878c06fbce47b8d1dbf9eaefcbc1af8d8c34bec99c26b46f
5
5
  SHA512:
6
- metadata.gz: 207e53bfebdb3366977a9f56546b8d7e83568ce4e459e09c877d377f3b874e219bf0c987db42fb113d0f03ea2501d91376cce1fa0566d157ca1bdbd42570724b
7
- data.tar.gz: e46deb249c95770f16782918482c391a475e926936a12670c98fb86e7b5941c7b7596fda39b427ae69541e56dd0b4eef0a178482b28a2f3148687282a58f951f
6
+ metadata.gz: 65b744a5acd3abcce3904eb9ce012815659f02938987af6e90d449df161725630864c299f47e7ccc0fc8779bd095293459c7a446a55aa50775b96ade2337de01
7
+ data.tar.gz: 9af7a26b36f338e4da106dedc330d14a80e30043bd5ef0a8b2c247f8403957d30ad2dde25113a4a61488d2d4ce26f654b4e17de4323373006091d4640a65828c
data/doc/text/news.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # News
2
2
 
3
+ ## 1.6.2: 2023-08-24
4
+
5
+ ### Improvements
6
+
7
+ * reporter: stream: Changed to show "start" message in multi-workers
8
+ mode.
9
+
3
10
  ## 1.6.1: 2023-08-11
4
11
 
5
12
  ### Improvements
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2012-2019 Kouhei Sutou <kou@clear-code.com>
1
+ # Copyright (C) 2012-2023 Sutou Kouhei <kou@clear-code.com>
2
2
  #
3
3
  # This program is free software: you can redistribute it and/or modify
4
4
  # it under the terms of the GNU General Public License as published by
@@ -28,11 +28,19 @@ module Grntest
28
28
 
29
29
  private
30
30
  def synchronize
31
- @mutex.synchronize do
31
+ if single_worker?
32
32
  yield
33
+ else
34
+ @mutex.synchronize do
35
+ yield
36
+ end
33
37
  end
34
38
  end
35
39
 
40
+ def single_worker?
41
+ @tester.n_workers == 1
42
+ end
43
+
36
44
  def report_summary(result)
37
45
  puts(statistics_header)
38
46
  puts(colorize(statistics(result), result))
@@ -120,16 +128,19 @@ module Grntest
120
128
  reporter.report
121
129
  end
122
130
 
131
+ def report_full_test_name(worker)
132
+ print("#{worker.suite_name}/#{worker.test_name}")
133
+ end
134
+
123
135
  def report_test(worker, result)
124
136
  report_marker(result)
125
- print("[#{worker.id}] ") if @tester.n_workers > 1
137
+ print("[#{worker.id}] ") if single_worker?
126
138
  puts(worker.suite_name)
127
139
  print(" #{worker.test_name}")
128
140
  report_test_result(result, worker.status)
129
141
  end
130
142
 
131
- def report_test_result(result, label)
132
- message = test_result_message(result, label)
143
+ def report_right_message(message)
133
144
  message_width = string_width(message)
134
145
  rest_width = @term_width - @current_column
135
146
  if rest_width > message_width
@@ -138,6 +149,10 @@ module Grntest
138
149
  puts(message)
139
150
  end
140
151
 
152
+ def report_test_result(result, label)
153
+ report_right_message(test_result_message(result, label))
154
+ end
155
+
141
156
  def test_result_message(result, label)
142
157
  elapsed_time = result.elapsed_time
143
158
  formatted_elapsed_time = "%.4fs" % elapsed_time
@@ -1,6 +1,4 @@
1
- # -*- coding: utf-8 -*-
2
- #
3
- # Copyright (C) 2012-2013 Kouhei Sutou <kou@clear-code.com>
1
+ # Copyright (C) 2012-2023 Sutou Kouhei <kou@clear-code.com>
4
2
  #
5
3
  # This program is free software: you can redistribute it and/or modify
6
4
  # it under the terms of the GNU General Public License as published by
@@ -31,6 +29,7 @@ module Grntest
31
29
  end
32
30
 
33
31
  def on_suite_start(worker)
32
+ return unless single_worker?
34
33
  if worker.suite_name.bytesize <= @term_width
35
34
  puts(worker.suite_name)
36
35
  else
@@ -40,36 +39,61 @@ module Grntest
40
39
  end
41
40
 
42
41
  def on_test_start(worker)
43
- print(" #{worker.test_name}")
44
- @output.flush
42
+ synchronize do
43
+ if single_worker?
44
+ print(" #{worker.test_name}")
45
+ else
46
+ report_full_test_name(worker)
47
+ report_right_message("[start]")
48
+ end
49
+ @output.flush
50
+ end
45
51
  end
46
52
 
47
53
  def on_test_success(worker, result)
48
- report_test_result(result, worker.status)
54
+ synchronize do
55
+ report_full_test_name(worker) unless single_worker?
56
+ report_test_result(result, worker.status)
57
+ end
49
58
  end
50
59
 
51
60
  def on_test_failure(worker, result)
52
- report_test_result(result, worker.status)
53
- report_failure(result)
61
+ synchronize do
62
+ report_full_test_name(worker) unless single_worker?
63
+ report_test_result(result, worker.status)
64
+ report_failure(result)
65
+ end
54
66
  end
55
67
 
56
68
  def on_test_leak(worker, result)
57
- report_test_result(result, worker.status)
58
- report_actual(result) unless result.checked?
69
+ synchronize do
70
+ report_full_test_name(worker) unless single_worker?
71
+ report_test_result(result, worker.status)
72
+ report_actual(result) unless result.checked?
73
+ end
59
74
  end
60
75
 
61
76
  def on_test_omission(worker, result)
62
- report_test_result(result, worker.status)
63
- report_actual(result)
77
+ synchronize do
78
+ report_full_test_name(worker) unless single_worker?
79
+ report_test_result(result, worker.status)
80
+ report_actual(result)
81
+ end
64
82
  end
65
83
 
66
84
  def on_test_omission_suppressed(worker, result)
67
- report_test_result(result, worker.status)
85
+ synchronize do
86
+ report_full_test_name(worker) unless single_worker?
87
+ report_test_result(result, worker.status)
88
+ end
68
89
  end
69
90
 
70
91
  def on_test_no_check(worker, result)
71
- report_test_result(result, worker.status)
72
- report_actual(result)
92
+ synchronize do
93
+ report_full_test_name(worker) unless single_worker?
94
+ report_test_result(result, worker.status)
95
+ report_actual(result)
96
+ end
73
97
  end
74
98
 
75
99
  def on_test_finish(worker, result)
@@ -14,5 +14,5 @@
14
14
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
15
15
 
16
16
  module Grntest
17
- VERSION = "1.6.1"
17
+ VERSION = "1.6.2"
18
18
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grntest
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.1
4
+ version: 1.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kouhei Sutou
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2023-08-11 00:00:00.000000000 Z
12
+ date: 2023-08-24 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: diff-lcs