auxesis-cucumber-nagios 0.4.1 → 0.4.3

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -13,15 +13,6 @@ rescue LoadError
13
13
  end
14
14
 
15
15
 
16
- desc "freeze deps"
17
- task :deps do
18
- deps = ['cucumber', 'webrat', 'mechanize']
19
- deps.each do |dep|
20
- puts "installing #{dep}"
21
- system("gem install #{dep} -i gems --no-rdoc --no-ri")
22
- end
23
- end
24
-
25
16
  desc "build gem"
26
17
  task :build do
27
18
  system("gem build cucumber-nagios.gemspec")
@@ -27,6 +27,9 @@ task :deps do
27
27
  puts "\ninstalling dependencies. this will take a few minutes."
28
28
 
29
29
  deps.each_pair do |dep, version|
30
+ if Dir.glob("gems/gems/#{dep}-#{version.split.last}").size > 0
31
+ next unless ENV["FORCE"]
32
+ end
30
33
  puts "\ninstalling #{dep} (#{version})"
31
34
  system("gem install #{dep} --version '#{version}' -i gems --no-rdoc --no-ri")
32
35
  end
@@ -7,5 +7,17 @@ rescue LoadError
7
7
  require 'bin/common'
8
8
  end
9
9
 
10
+ require 'cucumber/rspec_neuter'
10
11
  require 'cucumber/cli/main'
11
- Cucumber::Cli::Main.execute(ARGV)
12
+
13
+ begin
14
+ # The dup is to keep ARGV intact, so that tools like ruby-debug can respawn.
15
+ failure = Cucumber::Cli::Main.execute(ARGV.dup)
16
+ Kernel.exit(failure ? 1 : 0)
17
+ rescue SystemExit => e
18
+ Kernel.exit(e.status)
19
+ rescue Exception => e
20
+ STDERR.puts("#{e.message} (#{e.class})")
21
+ STDERR.puts(e.backtrace.join("\n"))
22
+ Kernel.exit 1
23
+ end
@@ -2,8 +2,9 @@ module Nagios
2
2
  class NagiosFormatter < Cucumber::Ast::Visitor
3
3
  def initialize(step_mother, io, options={})
4
4
  super(step_mother)
5
- @failed = []
6
- @passed = []
5
+ @failed = []
6
+ @passed = []
7
+ @warning = []
7
8
  end
8
9
 
9
10
  def visit_step_result(keyword, step_match, multiline_arg, status, exception, source_indent, background)
@@ -13,6 +14,8 @@ module Nagios
13
14
  @passed << step_match
14
15
  when :failed
15
16
  @failed << step_match
17
+ when :undefined
18
+ @warning << step_match
16
19
  end
17
20
  end
18
21
 
@@ -23,14 +26,16 @@ module Nagios
23
26
 
24
27
  private
25
28
  def print_summary
26
- @total = @failed.size + @passed.size
29
+ @total = @failed.size + @passed.size + @warning.size
27
30
  message = ""
28
31
  message += "Critical: #{@failed.size}, "
29
- message += "Warning: 0, "
32
+ message += "Warning: #{@warning.size}, "
30
33
  message += "#{@passed.size} okay"
31
34
  # nagios performance data
32
35
  message += " | passed=#{@passed.size}"
33
- message += ", failed=#{@failed.size}, total=#{@total}"
36
+ message += ", failed=#{@failed.size}"
37
+ message += ", nosteps=#{@warning.size}"
38
+ message += ", total=#{@total}"
34
39
  puts message
35
40
  end
36
41
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: auxesis-cucumber-nagios
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lindsay Holmwood