Module: Easytest::DSL

Defined in:
sig/easytest.rbs,
lib/easytest/dsl.rb

Overview

Define methods for the Easytest DSL.

Instance Method Summary collapse

Instance Method Details

#after {|case| ... } ⇒ void

This method returns an undefined value.

Run the given block after each test case.

Yields:

Yield Parameters:

Yield Returns:

  • (void)


15
16
17
# File 'sig/easytest.rbs', line 15

def after(&block)
  Easytest.add_hook Hook.new(type: :after, block: block)
end

#before {|case| ... } ⇒ void

This method returns an undefined value.

Run the given block before each test case.

Yields:

Yield Parameters:

Yield Returns:

  • (void)


12
13
14
# File 'sig/easytest.rbs', line 12

def before(&block)
  Easytest.add_hook Hook.new(type: :before, block: block)
end

#expect(actual) ⇒ Easytest::Expectation #expectEasytest::Expectation

Expect the given object or block to satisfy some criterion.

Overloads:

Yields:

Yield Returns:

  • (void)


24
25
26
# File 'sig/easytest.rbs', line 24

def expect(actual = nil, &)
  Expectation.new(actual, &)
end

#only(name) { ... } ⇒ void

This method returns an undefined value.

Run only the given test case.

Parameters:

  • name (String)

Yields:

Yield Returns:

  • (void)


21
22
23
24
# File 'sig/easytest.rbs', line 21

def only(name, &block)
  Utils.raise_if_no_test_name(name, method: "only")
  Easytest.add_case Case.new(name: name, only: true, block: block)
end

#skip(name) { ... } ⇒ void

This method returns an undefined value.

Skip the given test case.

Parameters:

  • name (String)

Yields:

Yield Returns:

  • (void)


18
19
20
21
# File 'sig/easytest.rbs', line 18

def skip(name, &block)
  Utils.raise_if_no_test_name(name, method: "skip")
  Easytest.add_case Case.new(name: name, skipped: true, block: block)
end

#test(name, &block) ⇒ void

This method returns an undefined value.

Define a test case. If omitting a block, the case is considered a to-do.

Parameters:

  • name (String)


9
10
11
12
# File 'sig/easytest.rbs', line 9

def test(name, &block)
  Utils.raise_if_no_test_name(name, method: "test")
  Easytest.add_case Case.new(name: name, block: block)
end