# File lib/bacon.rb, line 144 144: def after(&block); @after << block; end
# File lib/bacon.rb, line 143 143: def before(&block); @before << block; end
# File lib/bacon.rb, line 146 146: def behaves_like(*names) 147: names.each { |name| instance_eval(&Shared[name]) } 148: end
# File lib/bacon.rb, line 220 220: def change?(*args, &block); block.change?(*args); end
# File lib/bacon.rb, line 211 211: def describe(*args, &block) 212: context = Bacon::Context.new(args.join(' '), &block) 213: @before.each { |b| context.before(&b) } 214: @after.each { |b| context.after(&b) } 215: context.run 216: end
# File lib/bacon.rb, line 150 150: def it(description, &block) 151: return unless description =~ RestrictName 152: block ||= lambda { should.flunk "not implemented" } 153: Counter[:specifications] += 1 154: run_requirement description, block 155: end
# File lib/bacon.rb, line 218 218: def raise?(*args, &block); block.raise?(*args); end
# File lib/bacon.rb, line 137 137: def run 138: return unless name =~ RestrictContext 139: Bacon.handle_specification(name) { instance_eval(&block) } 140: self 141: end
# File lib/bacon.rb, line 165 165: def run_requirement(description, spec) 166: Bacon.handle_requirement description do 167: begin 168: Counter[:depth] += 1 169: rescued = false 170: begin 171: @before.each { |block| instance_eval(&block) } 172: prev_req = Counter[:requirements] 173: instance_eval(&spec) 174: rescue Object => e 175: rescued = true 176: raise e 177: ensure 178: if Counter[:requirements] == prev_req and not rescued 179: raise Error.new(:missing, 180: "empty specification: #{@name} #{description}") 181: end 182: begin 183: @after.each { |block| instance_eval(&block) } 184: rescue Object => e 185: raise e unless rescued 186: end 187: end 188: rescue Object => e 189: ErrorLog << "#{e.class}: #{e.message}\n" 190: e.backtrace.find_all { |line| line !~ /bin\/bacon|\/bacon\.rb:\d+/ }. 191: each_with_index { |line, i| 192: ErrorLog << "\t#{line}#{i==0 ? ": #@name - #{description}" : ""}\n" 193: } 194: ErrorLog << "\n" 195: 196: if e.kind_of? Error 197: Counter[e.count_as] += 1 198: e.count_as.to_s.upcase 199: else 200: Counter[:errors] += 1 201: "ERROR: #{e.class}" 202: end 203: else 204: "" 205: ensure 206: Counter[:depth] -= 1 207: end 208: end 209: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.