inform 0.0.2 → 0.0.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.
- data/examples/frozbot +11 -3
- data/inform.gemspec +3 -1
- data/lib/inform/version.rb +1 -1
- data/lib/inform.rb +4 -3
- data/spec/inform_spec.rb +35 -32
- metadata +32 -4
data/examples/frozbot
CHANGED
@@ -10,9 +10,17 @@ class Frozbot
|
|
10
10
|
end
|
11
11
|
end
|
12
12
|
|
13
|
-
Inform.level = :
|
14
|
-
|
13
|
+
Inform.level = :debug
|
14
|
+
|
15
|
+
Inform.info("About to start")
|
16
|
+
|
17
|
+
frozbot = Inform.info("Initializing the %{thing}...", :thing => 'frozbot') do
|
18
|
+
Inform.debug "Preparing to make a new frozbot called %{name}", :name => 'puddy'
|
15
19
|
Frozbot.new 'puddy'
|
16
20
|
end
|
17
21
|
|
18
|
-
Inform.info("Frozbot
|
22
|
+
Inform.info("Frozbot called %{name} has been initialized. Go %{name}, go!", :name => frozbot.name)
|
23
|
+
|
24
|
+
Inform.warning 'Hey wait on'
|
25
|
+
Inform.error 'There is an error in the %{thing} thing.', :thing => 'frozbot'
|
26
|
+
|
data/inform.gemspec
CHANGED
@@ -12,7 +12,9 @@ Gem::Specification.new do |s|
|
|
12
12
|
s.description = s.summary
|
13
13
|
|
14
14
|
s.add_development_dependency("rspec", "~> 2.6.0")
|
15
|
-
|
15
|
+
s.add_development_dependency("rake")
|
16
|
+
s.add_development_dependency("gem-release")
|
17
|
+
|
16
18
|
s.files = `git ls-files`.split("\n")
|
17
19
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
18
20
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
data/lib/inform/version.rb
CHANGED
data/lib/inform.rb
CHANGED
@@ -18,7 +18,7 @@ class Inform
|
|
18
18
|
|
19
19
|
DEFAULT_LOG_LEVEL = :info
|
20
20
|
LOG_LEVELS = [:debug, :info, :warning, :error]
|
21
|
-
|
21
|
+
|
22
22
|
class << self
|
23
23
|
|
24
24
|
def level
|
@@ -71,7 +71,8 @@ class Inform
|
|
71
71
|
@need_newline = false
|
72
72
|
end
|
73
73
|
message += "\n" if end_with_newline
|
74
|
-
print message
|
74
|
+
$stdout.print message
|
75
|
+
$stdout.flush
|
75
76
|
end
|
76
77
|
end
|
77
78
|
|
@@ -86,7 +87,7 @@ class Inform
|
|
86
87
|
end
|
87
88
|
message + CLEAR
|
88
89
|
end
|
89
|
-
|
90
|
+
|
90
91
|
def color(message, *colours)
|
91
92
|
colours.join("") + message + CLEAR
|
92
93
|
end
|
data/spec/inform_spec.rb
CHANGED
@@ -3,26 +3,50 @@ require File.expand_path(File.join(File.dirname(__FILE__), 'spec_helper'))
|
|
3
3
|
def should_print method
|
4
4
|
describe method do
|
5
5
|
it "should print a message" do
|
6
|
-
|
6
|
+
$stdout.should_receive(:print).with(/a special message/)
|
7
7
|
Inform.send(method, "a special message")
|
8
8
|
end
|
9
|
+
it "should interpolate keyword arguments" do
|
10
|
+
$stdout.should_receive(:print).with(/hello.+hey.+you.+goodbye/)
|
11
|
+
Inform.send(method, "hello %{a} %{b} goodbye", :a => 'hey', :b => 'you')
|
12
|
+
end
|
9
13
|
end
|
10
14
|
end
|
11
15
|
|
12
16
|
def should_not_print method
|
13
17
|
describe method do
|
14
18
|
it "should not print a message" do
|
15
|
-
|
16
|
-
Inform.should_not_receive(:print)
|
19
|
+
$stdout.should_not_receive(:print)
|
17
20
|
Inform.send(method, "a special message")
|
18
21
|
end
|
19
22
|
end
|
20
23
|
end
|
21
|
-
|
22
|
-
|
24
|
+
|
25
|
+
def should_accept_block method
|
26
|
+
describe ":#{method.to_s} with a block" do
|
27
|
+
it "should print out the task being executed" do
|
28
|
+
$stdout.should_receive(:print).with(/message/)
|
29
|
+
Inform.send(method, "message") { true }
|
30
|
+
end
|
31
|
+
it "should print Done once the task is complete" do
|
32
|
+
$stdout.should_receive(:print).with(/Done/)
|
33
|
+
Inform.send(method, "") { true }
|
34
|
+
end
|
35
|
+
it "should evaluate the passed block and return the result" do
|
36
|
+
Inform.send(method, "") { 'hello' }.should == 'hello'
|
37
|
+
end
|
38
|
+
it "should allow us to print messages from within a block" do
|
39
|
+
$stdout.should_receive(:print).with(/open/)
|
40
|
+
$stdout.should_receive(:print).with(/inner/)
|
41
|
+
Inform.send(method, "open") { Inform.send(method, "inner") }
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
23
46
|
describe Inform do
|
24
47
|
before :each do
|
25
48
|
@oldlevel = Inform.level
|
49
|
+
$stdout.stub(:print => nil) # SSSSSH.
|
26
50
|
end
|
27
51
|
after :each do
|
28
52
|
Inform.level = @oldlevel
|
@@ -40,36 +64,12 @@ describe Inform do
|
|
40
64
|
end
|
41
65
|
|
42
66
|
context "with log level debug" do
|
43
|
-
before :
|
44
|
-
Inform.level = :debug
|
45
|
-
Inform.stub(:print => nil) # SSSSSH.
|
46
|
-
end
|
67
|
+
before { Inform.level = :debug }
|
47
68
|
|
48
69
|
should_print :debug
|
49
70
|
should_print :info
|
50
|
-
|
51
|
-
|
52
|
-
it "should print out the task being executed" do
|
53
|
-
Inform.should_receive(:print).with(/message/)
|
54
|
-
Inform.info("message") { true }
|
55
|
-
end
|
56
|
-
it "should print Done once the task is complete" do
|
57
|
-
Inform.should_receive(:print).with(/Done/)
|
58
|
-
Inform.info("") { true }
|
59
|
-
end
|
60
|
-
it "should evaluate the passed block and return the result" do
|
61
|
-
Inform.info("") { 'hello' }.should == 'hello'
|
62
|
-
end
|
63
|
-
it "should interpolate keyword arguments" do
|
64
|
-
Inform.should_receive(:print).with(/hello.+hey.+you.+goodbye/)
|
65
|
-
Inform.info("hello %{a} %{b} goodbye", :a => 'hey', :b => 'you')
|
66
|
-
end
|
67
|
-
it "should allow us to print messages from within a block" do
|
68
|
-
Inform.should_receive(:print).with(/open/)
|
69
|
-
Inform.should_receive(:print).with(/inner/)
|
70
|
-
Inform.info("open") { Inform.debug("inner") }
|
71
|
-
end
|
72
|
-
end
|
71
|
+
should_accept_block :info
|
72
|
+
# should_accept_block :debug
|
73
73
|
|
74
74
|
should_print :warning
|
75
75
|
should_print :error
|
@@ -79,6 +79,9 @@ describe Inform do
|
|
79
79
|
before { Inform.level = :info }
|
80
80
|
should_not_print :debug
|
81
81
|
should_print :info
|
82
|
+
should_accept_block :info
|
83
|
+
# should_accept_block :debug
|
84
|
+
|
82
85
|
should_print :warning
|
83
86
|
should_print :error
|
84
87
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: inform
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Michael Pearson
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2011-06-
|
19
|
+
date: 2011-06-29 00:00:00 Z
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
22
|
name: rspec
|
@@ -34,6 +34,34 @@ dependencies:
|
|
34
34
|
version: 2.6.0
|
35
35
|
type: :development
|
36
36
|
version_requirements: *id001
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: rake
|
39
|
+
prerelease: false
|
40
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ">="
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
hash: 3
|
46
|
+
segments:
|
47
|
+
- 0
|
48
|
+
version: "0"
|
49
|
+
type: :development
|
50
|
+
version_requirements: *id002
|
51
|
+
- !ruby/object:Gem::Dependency
|
52
|
+
name: gem-release
|
53
|
+
prerelease: false
|
54
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
55
|
+
none: false
|
56
|
+
requirements:
|
57
|
+
- - ">="
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
hash: 3
|
60
|
+
segments:
|
61
|
+
- 0
|
62
|
+
version: "0"
|
63
|
+
type: :development
|
64
|
+
version_requirements: *id003
|
37
65
|
description: Interactive, colourised logging
|
38
66
|
email:
|
39
67
|
- mipearson@gmail.com
|