module Lemon::DSL

Lemon's toplevel test domain specific language.

Public Instance Methods

Covers(script)
Alias for: covers
TestCase(target, &block)
Alias for: test_case
covers(script) click to toggle source

Require script and record it.

@param [STRING] script

The load path of a script.
# File lib/lemon.rb, line 34
def covers(script)
  # TODO: record coverage list
  require script
end
Also aliased as: Covers
test_case(target, &block) click to toggle source

Define a class/module test case.

@param [Module,Class] target

The class or module the tests will target.

@yield

Scope in which to define unit/method testcases.
Calls superclass method
# File lib/lemon.rb, line 48
def test_case(target, &block)
  case target
  when Class
    $TEST_SUITE << Lemon::TestClass.new(:target=>target, &block)
  when Module
    $TEST_SUITE << Lemon::TestModule.new(:target=>target, &block)
  else
    if defined?(super)
      super(target, &block)
    else
      raise
    end
  end
end
Also aliased as: TestCase, testcase
testcase(target, &block)
Alias for: test_case