class Tengu::DescribeBlock

Public Class Methods

new(description, block) click to toggle source
# File lib/tengu/describe_block.rb, line 3
def initialize(description, block)
  @description = description
  @block = block
  @test_cases = []
  @before_each_hooks = []
  @after_each_hooks = []
  load_test_cases
end

Public Instance Methods

pending_count() click to toggle source
# File lib/tengu/describe_block.rb, line 24
def pending_count
  @test_cases.count { |test_case| test_case.pending? }
end
run(listeners = []) click to toggle source
# File lib/tengu/describe_block.rb, line 12
def run(listeners = [])
  run_test_cases(listeners)
end
success_count() click to toggle source
# File lib/tengu/describe_block.rb, line 16
def success_count
  @test_cases.count { |test_case| test_case.success? }
end
test_count() click to toggle source
# File lib/tengu/describe_block.rb, line 20
def test_count
  @test_cases.count { |test_case| !test_case.pending? }
end

Private Instance Methods

after(type, &block) click to toggle source
# File lib/tengu/describe_block.rb, line 40
def after(type, &block)
  if type == :each
    @after_each_hooks << block
  end
end
before(type, &block) click to toggle source
# File lib/tengu/describe_block.rb, line 34
def before(type, &block)
  if type == :each
    @before_each_hooks << block
  end
end
include(included_module) click to toggle source
# File lib/tengu/describe_block.rb, line 30
def include(included_module)
  singleton_class.send(:include, included_module)
end
it(description = nil, &block) click to toggle source
# File lib/tengu/describe_block.rb, line 59
def it(description = nil, &block)
  @test_cases << ItBlock.new(self, description, block)
end
load_test_cases() click to toggle source
# File lib/tengu/describe_block.rb, line 47
def load_test_cases
  instance_eval &@block
end
run_test_cases(listeners = []) click to toggle source
# File lib/tengu/describe_block.rb, line 51
def run_test_cases(listeners = [])
  @test_cases.each do |test_case|
    @before_each_hooks.each { |hook| hook.call }
    test_case.run(listeners)
    @after_each_hooks.each { |hook| hook.call }
  end
end
xit(description, &block) click to toggle source
# File lib/tengu/describe_block.rb, line 63
def xit(description, &block); end