prspec 0.2.2 → 0.2.3
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 +8 -8
- data/lib/prspec.rb +17 -7
- metadata +13 -1
checksums.yaml
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
!binary "U0hBMQ==":
|
|
3
3
|
metadata.gz: !binary |-
|
|
4
|
-
|
|
4
|
+
ZDczNzkyZDA0ZTBjZjRlYjNmNjg2YTRjYTlhMWVkYTc0ZDk2N2QwNw==
|
|
5
5
|
data.tar.gz: !binary |-
|
|
6
|
-
|
|
6
|
+
OTE0MDExMGIzZGNmNzg3NDZmZDI3OTdiNDg1MzMwMzkxYTcwNDNiOA==
|
|
7
7
|
SHA512:
|
|
8
8
|
metadata.gz: !binary |-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
ZTcwNmJiN2UyY2FkNjBlODcxNTk2MTdhODk2MjhlZjIyZDc0MmE2MTlhYjMy
|
|
10
|
+
OWIwYmZmYTNjZTBkZjI5NjdhYWM1ZDc1YmM2ZmQ4ZWY2YjQzNDE2YTgzMDgy
|
|
11
|
+
ODJlZDQ3ZmY3ZTI5MmU1Nzg5NzQwMjM0Yjk3ZGY0OTFmY2MyZjI=
|
|
12
12
|
data.tar.gz: !binary |-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
YmIxOWNjNDNiMjc2MTM0M2QzNGE4ODE5NmVjYTc0N2FlMGQyMTIyN2YxYTE0
|
|
14
|
+
ZDAwNTUzMzNlZGVkNmFmMWVjNDdmZDQxMmU2NTYwMmVhZjgxNmIwMTVmMzkw
|
|
15
|
+
NTk5ZGViM2RhOTYxNGQ1NWIxNzI1YTQ5MTU3YzI2MTQwYzBkODc=
|
data/lib/prspec.rb
CHANGED
|
@@ -43,7 +43,7 @@ class PRSpec
|
|
|
43
43
|
process_tests = divide_spec_tests(tests)
|
|
44
44
|
$log.debug "#{tests.length} Spec tests divided among #{@num_threads} arrays."
|
|
45
45
|
else
|
|
46
|
-
$log.
|
|
46
|
+
$log.warn "No spec tests found. Exiting."
|
|
47
47
|
exit 1
|
|
48
48
|
end
|
|
49
49
|
|
|
@@ -69,7 +69,8 @@ class PRSpec
|
|
|
69
69
|
:rspec_args=>[],
|
|
70
70
|
:tag_name=>'',
|
|
71
71
|
:tag_value=>'',
|
|
72
|
-
:ignore_pending=>false
|
|
72
|
+
:ignore_pending=>false,
|
|
73
|
+
:serialize=>false
|
|
73
74
|
}
|
|
74
75
|
o = OptionParser.new do |opts|
|
|
75
76
|
opts.banner = "Usage: prspec [options]"
|
|
@@ -122,6 +123,10 @@ class PRSpec
|
|
|
122
123
|
$log.debug "ignore pending specified... all pending tests will be excluded"
|
|
123
124
|
options[:ignore_pending] = true
|
|
124
125
|
end
|
|
126
|
+
opts.on("-s", "--serialize-output", "Wait for each thread to complete and then output to STDOUT serially") do
|
|
127
|
+
$log.debug "serialize output specified... all threads will output to STDOUT as they complete"
|
|
128
|
+
options[:serialize] = true
|
|
129
|
+
end
|
|
125
130
|
end
|
|
126
131
|
|
|
127
132
|
# handle invalid options
|
|
@@ -260,6 +265,9 @@ class PRSpec
|
|
|
260
265
|
$log.debug "Thread#{proc.id}: alive..."
|
|
261
266
|
else
|
|
262
267
|
$log.debug "Thread#{proc.id}: done."
|
|
268
|
+
if (options[:serialize])
|
|
269
|
+
puts proc.output unless options[:quiet_mode]
|
|
270
|
+
end
|
|
263
271
|
# collect thread output if in quiet mode
|
|
264
272
|
if (options[:quiet_mode])
|
|
265
273
|
@output << proc.output
|
|
@@ -332,16 +340,18 @@ class PRSpecThread
|
|
|
332
340
|
Dir::chdir @args[:dir] do # change directory for process execution
|
|
333
341
|
begin
|
|
334
342
|
pid = nil
|
|
335
|
-
if (@args[:quiet_mode])
|
|
336
|
-
pid = Process.spawn(cmd, :out=>@out, :err=>@err) # capture both sdtout and stderr
|
|
343
|
+
if (@args[:quiet_mode] || @args[:serialize])
|
|
344
|
+
pid = Process.spawn(cmd, :out=>@out, :err=>@err) # capture both sdtout and stderr
|
|
337
345
|
else
|
|
338
346
|
pid = Process.spawn(cmd)
|
|
339
347
|
end
|
|
340
348
|
Process.wait(pid)
|
|
341
|
-
@output = File.readlines(@out).join("\n") if @args[:quiet_mode]
|
|
349
|
+
@output = File.readlines(@out).join("\n") if (@args[:quiet_mode] || @args[:serialize])
|
|
342
350
|
rescue
|
|
343
|
-
|
|
344
|
-
|
|
351
|
+
if (@args[:quiet_mode] || @args[:serialize])
|
|
352
|
+
error = "ErrorCode: #{$?.errorcode}; ErrorOutput: "+File.readlines(@err).join("\n")
|
|
353
|
+
$log.error "Something bad happened while executing thread#{@id}: #{error}"
|
|
354
|
+
end
|
|
345
355
|
end
|
|
346
356
|
close
|
|
347
357
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: prspec
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jason Holt Smith
|
|
@@ -14,6 +14,9 @@ dependencies:
|
|
|
14
14
|
name: log4r
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
+
- - ~>
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '1.1'
|
|
17
20
|
- - ! '>='
|
|
18
21
|
- !ruby/object:Gem::Version
|
|
19
22
|
version: 1.1.10
|
|
@@ -21,6 +24,9 @@ dependencies:
|
|
|
21
24
|
prerelease: false
|
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
26
|
requirements:
|
|
27
|
+
- - ~>
|
|
28
|
+
- !ruby/object:Gem::Version
|
|
29
|
+
version: '1.1'
|
|
24
30
|
- - ! '>='
|
|
25
31
|
- !ruby/object:Gem::Version
|
|
26
32
|
version: 1.1.10
|
|
@@ -28,6 +34,9 @@ dependencies:
|
|
|
28
34
|
name: parallel
|
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
|
30
36
|
requirements:
|
|
37
|
+
- - ~>
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
version: '1.0'
|
|
31
40
|
- - ! '>='
|
|
32
41
|
- !ruby/object:Gem::Version
|
|
33
42
|
version: 1.0.0
|
|
@@ -35,6 +44,9 @@ dependencies:
|
|
|
35
44
|
prerelease: false
|
|
36
45
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
46
|
requirements:
|
|
47
|
+
- - ~>
|
|
48
|
+
- !ruby/object:Gem::Version
|
|
49
|
+
version: '1.0'
|
|
38
50
|
- - ! '>='
|
|
39
51
|
- !ruby/object:Gem::Version
|
|
40
52
|
version: 1.0.0
|