cmon 0.0.1.alpha2 → 0.0.1.alpha3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/lib/cmon.rb +37 -17
  2. data/lib/cmon/version.rb +1 -1
  3. metadata +22 -9
@@ -1,4 +1,5 @@
1
1
  require 'cmon/version'
2
+ require 'rspec/expectations'
2
3
 
3
4
  module CMon
4
5
  class Command
@@ -7,35 +8,54 @@ module CMon
7
8
  @output = `#{cmd}`
8
9
  end
9
10
  attr_reader :command, :output
10
-
11
- def should_not_include(text)
12
- if self.output.include?(text)
13
- puts "CMon assumptions failed"
14
- puts "Should Not Include #{text.inspect}"
15
- puts
16
- puts "Output:"
17
- puts self.output
18
- exit 1
19
- end
11
+
12
+ def include?(text)
13
+ self.output.include?(text)
14
+ end
15
+
16
+ def =~(regexp)
17
+ self.output =~ regexp
18
+ end
19
+
20
+ def ==(value)
21
+ self.output == value
22
+ end
23
+
24
+ def to_s
25
+ "command: `#{self.command}` \noutput: #{self.output}"
20
26
  end
21
27
  end
22
28
 
29
+ module Helpers
30
+
31
+ def output_from(cmd)
32
+ CMon::Command.new(cmd)
33
+ end
34
+
35
+ end
36
+
23
37
  class Runner
24
38
 
39
+ include RSpec::Matchers
40
+ include Helpers
41
+
25
42
  def self.run(path)
26
43
  runner = self.new
27
44
  runner.run(path)
28
45
  end
29
46
 
30
- def run(file)
31
- steps = File.read(file)
32
- self.instance_eval(steps)
33
- exit 0
47
+ def run(path)
48
+ steps = File.read(path)
49
+ begin
50
+ self.instance_eval(steps)
51
+ exit 0
52
+ rescue RSpec::Expectations::ExpectationNotMetError => e
53
+ puts "C'Mon assumptions failed"
54
+ puts e.message
55
+ exit 1
56
+ end
34
57
  end
35
58
 
36
- def output_from(cmd)
37
- CMon::Command.new(cmd)
38
- end
39
59
  end
40
60
 
41
61
  end
@@ -1,3 +1,3 @@
1
1
  module CMon
2
- VERSION = "0.0.1.alpha2"
2
+ VERSION = "0.0.1.alpha3"
3
3
  end
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cmon
3
3
  version: !ruby/object:Gem::Version
4
- hash: -3702664368
4
+ hash: -3702664366
5
5
  prerelease: 6
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
9
  - 1
10
10
  - alpha
11
- - 2
12
- version: 0.0.1.alpha2
11
+ - 3
12
+ version: 0.0.1.alpha3
13
13
  platform: ruby
14
14
  authors:
15
15
  - Matthew Rudy Jacobs
@@ -17,10 +17,24 @@ autorequire:
17
17
  bindir: bin
18
18
  cert_chain: []
19
19
 
20
- date: 2011-06-15 00:00:00 +08:00
21
- default_executable:
22
- dependencies: []
23
-
20
+ date: 2011-06-15 00:00:00 Z
21
+ dependencies:
22
+ - !ruby/object:Gem::Dependency
23
+ name: rspec
24
+ prerelease: false
25
+ requirement: &id001 !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ hash: 15
31
+ segments:
32
+ - 2
33
+ - 0
34
+ - 0
35
+ version: 2.0.0
36
+ type: :runtime
37
+ version_requirements: *id001
24
38
  description: Write a simple monitoring script to be executed by cron, using an rspec-like assertion syntax
25
39
  email:
26
40
  - matthewrudyjacobs+cmon@gmail.com
@@ -34,7 +48,6 @@ files:
34
48
  - lib/cmon/version.rb
35
49
  - lib/cmon.rb
36
50
  - bin/cmon
37
- has_rdoc: true
38
51
  homepage: https://github.com/matthewrudy/com
39
52
  licenses: []
40
53
 
@@ -66,7 +79,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
66
79
  requirements: []
67
80
 
68
81
  rubyforge_project:
69
- rubygems_version: 1.6.2
82
+ rubygems_version: 1.7.2
70
83
  signing_key:
71
84
  specification_version: 3
72
85
  summary: Cron Enabled Monitoring