moto 0.8.3 → 0.8.4

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
  SHA1:
3
- metadata.gz: 2ba797b82d95217eeee0ffd6e9f08cdf8f75b5de
4
- data.tar.gz: 7f12124132318e7566953a2a9dfd12ed52cf4a39
3
+ metadata.gz: 128985359cd630b7058bb7bba1d96ea7517c74b9
4
+ data.tar.gz: ecd946cb9026ec99ae1190e61b188fe988640a72
5
5
  SHA512:
6
- metadata.gz: 6e020d6ec1a6c96d798f598784678b4a531d981a0b477acd9248ec9073d19bc5ae63ce0e2d01c5b7c6ab5b5975d18108df13a93b774a663d1c5329c05931e024
7
- data.tar.gz: 339ac7bfebc0a3a2b872f88fde2e8010e3c7ff6f9b62d3cd9f5c381691dd6b7eae778ab6819e34e964811a0329f980d8525ef19d93879eb1188e52b26c75e168
6
+ metadata.gz: cd9e3d39235d08eec0a9cd073597c4e403040f7eb916731d99dad86bf076001bbab960b281fd1bebb986fe1bcc062b3add724cadface33734a397b1683219b9b
7
+ data.tar.gz: ebd6ae97dbcddcb200cc773555d170e652ce68136024a1c24c4fce02b54d002335b2a3becb743e7bd5a5e420590418ba009f5d11168c56bb831ef4005c404e2c
data/lib/cli.rb CHANGED
@@ -61,7 +61,7 @@ module Moto
61
61
  #TODO Display criteria used
62
62
  if test_paths_absolute.empty?
63
63
  puts 'No tests found for given arguments.'
64
- exit 1
64
+ Kernel.exit!(-1)
65
65
  end
66
66
 
67
67
  # Requires custom initializer if provided by application that uses Moto
@@ -0,0 +1,33 @@
1
+ module Moto
2
+ module Reporting
3
+ module Listeners
4
+ class KernelCode < Base
5
+
6
+ def self.code
7
+ @@code
8
+ end
9
+
10
+ # Invoked when whole batch of tests ends
11
+ def end_run(run_status)
12
+
13
+ code = 0
14
+
15
+ if run_status.tests_error.length > 0
16
+ code += 0b100
17
+ end
18
+
19
+ if run_status.tests_failed.length > 0
20
+ code += 0b010
21
+ end
22
+
23
+ if run_status.tests_skipped.length > 0
24
+ code += 0b001
25
+ end
26
+
27
+ @@code = code
28
+ end
29
+
30
+ end
31
+ end
32
+ end
33
+ end
@@ -1,4 +1,6 @@
1
1
  require_relative 'run_status'
2
+ require_relative 'listeners/base'
3
+ require_relative 'listeners/kernel_code'
2
4
 
3
5
  module Moto
4
6
  module Reporting
@@ -23,6 +25,9 @@ module Moto
23
25
  @listeners = []
24
26
  @custom_run_name = custom_run_name
25
27
  listeners.each { |l| add_listener(l) }
28
+
29
+ # Special listener used to generate code for Kernel.exit(code)
30
+ add_listener(Moto::Reporting::Listeners::KernelCode)
26
31
  end
27
32
 
28
33
  # Adds a listener to the list.
@@ -1,4 +1,5 @@
1
1
  require_relative '../reporting/test_reporter'
2
+ require_relative '../reporting/listeners/kernel_code'
2
3
  require_relative './test_provider'
3
4
 
4
5
  module Moto
@@ -49,6 +50,9 @@ module Moto
49
50
  end
50
51
 
51
52
  @test_reporter.report_end_run
53
+
54
+ # Exit application with appropriate code generated by KernelCode listener
55
+ Kernel.exit!(Moto::Reporting::Listeners::KernelCode.code)
52
56
  end
53
57
 
54
58
  end
data/lib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Moto
2
- VERSION = '0.8.3'
2
+ VERSION = '0.8.4'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: moto
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.3
4
+ version: 0.8.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bartek Wilczek
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2016-09-07 00:00:00.000000000 Z
14
+ date: 2016-09-08 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: activesupport
@@ -98,6 +98,7 @@ files:
98
98
  - lib/reporting/listeners/console.rb
99
99
  - lib/reporting/listeners/console_dots.rb
100
100
  - lib/reporting/listeners/junit_xml.rb
101
+ - lib/reporting/listeners/kernel_code.rb
101
102
  - lib/reporting/listeners/webui.rb
102
103
  - lib/reporting/run_status.rb
103
104
  - lib/reporting/test_reporter.rb