Class: QED::Reporter::Abstract
Overview
Reporter Absract Base Class
Serves as the base class for all other output formats.
Constant Summary
collapse
- INFO_SIGNAL =
Does the system support INFO signal?
Signal.list['INFO']
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
-
#after_demo(demo) ⇒ Object
-
#after_eval(step) ⇒ Object
-
#after_import(file) ⇒ Object
-
#after_proc(step) ⇒ Object
-
#after_session(session) ⇒ Object
After running all demonstrations.
-
#after_step(step) ⇒ Object
-
#before_demo(demo) ⇒ Object
Beginning of a demonstration.
-
#before_eval(step) ⇒ Object
-
#before_import(file) ⇒ Object
-
#before_proc(step) ⇒ Object
-
#before_session(session) ⇒ Object
At the start of a session, before running any demonstrations.
-
#before_step(step) ⇒ Object
-
#call(type, *args) ⇒ Object
-
#count_demo(demo) ⇒ Object
def After(type, target, *args) type = :demonstration if type.to_s == 'demo' send("after_#type", target, *args) end.
-
#count_error(step, exception) ⇒ Object
-
#count_fail(step, exception) ⇒ Object
-
#count_pass(step) ⇒ Object
def count_eval(step) @record << step end.
-
#count_step(step) ⇒ Object
-
#demo(demo) ⇒ Object
-
#demos ⇒ Object
-
#error(step, exception) ⇒ Object
After running a step that raised an error.
-
#errors ⇒ Object
-
#eval(step) ⇒ Object
-
#fail(step, assertion) ⇒ Object
After running a step that failed.
-
#fails ⇒ Object
-
#import(file) ⇒ Object
-
#initialize(options = {}) ⇒ Abstract
constructor
TODO: pass session into initialize.
-
#omits ⇒ Object
-
#pass(step) ⇒ Object
After running a step that passed.
-
#passes ⇒ Object
-
#proc(step) ⇒ Object
-
#rule(step) ⇒ Object
Right before rule section.
-
#step(step) ⇒ Object
Right before text section.
-
#steps ⇒ Object
-
#success? ⇒ Boolean
-
#trace? ⇒ Boolean
Constructor Details
#initialize(options = {}) ⇒ Abstract
TODO: pass session into initialize
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# File 'lib/qed/reporter/abstract.rb', line 31
def initialize(options={})
@io = options[:io] || STDOUT
@trace = options[:trace]
@record = {
:demo => [],
:step => [],
:omit => [],
:pass => [],
:fail => [],
:error => []
}
@source = {}
end
|
Instance Attribute Details
Returns the value of attribute io.
25
26
27
|
# File 'lib/qed/reporter/abstract.rb', line 25
def io
@io
end
|
Returns the value of attribute record.
28
29
30
|
# File 'lib/qed/reporter/abstract.rb', line 28
def record
@record
end
|
Returns the value of attribute session.
22
23
24
|
# File 'lib/qed/reporter/abstract.rb', line 22
def session
@session
end
|
Class Method Details
.After(type, &block) ⇒ Object
89
90
91
92
93
|
# File 'lib/qed/reporter/abstract.rb', line 89
def self.After(type, &block)
define_method("after_#{type}", &block)
end
|
.Before(type, &block) ⇒ Object
83
84
85
86
87
|
# File 'lib/qed/reporter/abstract.rb', line 83
def self.Before(type, &block)
define_method("before_#{type}", &block)
end
|
.When(type, &block) ⇒ Object
77
78
79
80
81
|
# File 'lib/qed/reporter/abstract.rb', line 77
def self.When(type, &block)
define_method(type, &block)
end
|
Instance Method Details
#after_demo(demo) ⇒ Object
225
226
|
# File 'lib/qed/reporter/abstract.rb', line 225
def after_demo(demo) end
|
#after_eval(step) ⇒ Object
213
214
|
# File 'lib/qed/reporter/abstract.rb', line 213
def after_eval(step)
end
|
#after_import(file) ⇒ Object
209
210
|
# File 'lib/qed/reporter/abstract.rb', line 209
def after_import(file)
end
|
#after_proc(step) ⇒ Object
217
218
|
# File 'lib/qed/reporter/abstract.rb', line 217
def after_proc(step)
end
|
#after_session(session) ⇒ Object
After running all demonstrations. This is the place
to output a summary of the session, if applicable.
230
231
|
# File 'lib/qed/reporter/abstract.rb', line 230
def after_session(session)
end
|
#after_step(step) ⇒ Object
221
222
|
# File 'lib/qed/reporter/abstract.rb', line 221
def after_step(step)
end
|
#before_demo(demo) ⇒ Object
Beginning of a demonstration.
139
140
141
|
# File 'lib/qed/reporter/abstract.rb', line 139
def before_demo(demo) end
|
#before_eval(step) ⇒ Object
156
157
|
# File 'lib/qed/reporter/abstract.rb', line 156
def before_eval(step)
end
|
#before_import(file) ⇒ Object
144
145
|
# File 'lib/qed/reporter/abstract.rb', line 144
def before_import(file)
end
|
#before_proc(step) ⇒ Object
152
153
|
# File 'lib/qed/reporter/abstract.rb', line 152
def before_proc(step)
end
|
#before_session(session) ⇒ Object
At the start of a session, before running any demonstrations.
133
134
135
136
|
# File 'lib/qed/reporter/abstract.rb', line 133
def before_session(session)
@session = session
@start_time = Time.now
end
|
#before_step(step) ⇒ Object
148
149
|
# File 'lib/qed/reporter/abstract.rb', line 148
def before_step(step)
end
|
#call(type, *args) ⇒ Object
72
73
74
75
|
# File 'lib/qed/reporter/abstract.rb', line 72
def call(type, *args)
__send__("count_#{type}", *args) if respond_to?("count_#{type}")
__send__(type, *args) if respond_to?(type)
end
|
#count_demo(demo) ⇒ Object
def After(type, target, *args)
type = :demonstration if type.to_s == 'demo'
send("after_#type", target, *args)
end
107
108
109
|
# File 'lib/qed/reporter/abstract.rb', line 107
def count_demo(demo)
@record[:demo] << demo
end
|
#count_error(step, exception) ⇒ Object
127
128
129
|
# File 'lib/qed/reporter/abstract.rb', line 127
def count_error(step, exception)
@record[:error] << [step, exception]
end
|
#count_fail(step, exception) ⇒ Object
123
124
125
|
# File 'lib/qed/reporter/abstract.rb', line 123
def count_fail(step, exception)
@record[:fail] << [step, exception]
end
|
#count_pass(step) ⇒ Object
def count_eval(step)
@record << step
end
119
120
121
|
# File 'lib/qed/reporter/abstract.rb', line 119
def count_pass(step)
@record[:pass] << step
end
|
#count_step(step) ⇒ Object
111
112
113
|
# File 'lib/qed/reporter/abstract.rb', line 111
def count_step(step)
@record[:step] << step
end
|
#demo(demo) ⇒ Object
165
166
|
# File 'lib/qed/reporter/abstract.rb', line 165
def demo(demo)
end
|
54
|
# File 'lib/qed/reporter/abstract.rb', line 54
def demos ; @record[:demo] ; end
|
#error(step, exception) ⇒ Object
After running a step that raised an error.
203
204
205
206
|
# File 'lib/qed/reporter/abstract.rb', line 203
def error(step, exception)
raise exception if $DEBUG end
|
58
|
# File 'lib/qed/reporter/abstract.rb', line 58
def errors ; @record[:error] ; end
|
#eval(step) ⇒ Object
185
186
|
# File 'lib/qed/reporter/abstract.rb', line 185
def eval(step)
end
|
#fail(step, assertion) ⇒ Object
After running a step that failed.
198
199
200
|
# File 'lib/qed/reporter/abstract.rb', line 198
def fail(step, assertion)
end
|
59
|
# File 'lib/qed/reporter/abstract.rb', line 59
def fails ; @record[:fail] ; end
|
#import(file) ⇒ Object
169
170
|
# File 'lib/qed/reporter/abstract.rb', line 169
def import(file)
end
|
56
|
# File 'lib/qed/reporter/abstract.rb', line 56
def omits ; @record[:omit] ; end
|
#pass(step) ⇒ Object
After running a step that passed.
193
194
195
|
# File 'lib/qed/reporter/abstract.rb', line 193
def pass(step)
end
|
57
|
# File 'lib/qed/reporter/abstract.rb', line 57
def passes ; @record[:pass] ; end
|
#proc(step) ⇒ Object
181
182
|
# File 'lib/qed/reporter/abstract.rb', line 181
def proc(step)
end
|
#rule(step) ⇒ Object
Right before rule section.
173
174
|
# File 'lib/qed/reporter/abstract.rb', line 173
def rule(step)
end
|
#step(step) ⇒ Object
Right before text section.
177
178
|
# File 'lib/qed/reporter/abstract.rb', line 177
def step(step) end
|
55
|
# File 'lib/qed/reporter/abstract.rb', line 55
def steps ; @record[:step] ; end
|
#success? ⇒ Boolean
67
68
69
|
# File 'lib/qed/reporter/abstract.rb', line 67
def success?
record[:error].size + record[:fail].size == 0
end
|
#trace? ⇒ Boolean
62
63
64
|
# File 'lib/qed/reporter/abstract.rb', line 62
def trace?
@trace
end
|