module Assert::Context::TestDSL

Public Instance Methods

should(desc_or_macro, called_from = nil, first_caller = nil, &block) click to toggle source
# File lib/assert/context/test_dsl.rb, line 62
def should(desc_or_macro, called_from = nil, first_caller = nil, &block)
  unless desc_or_macro.is_a?(Assert::Macro)
    desc_or_macro = "should #{desc_or_macro}"
  end
  test(
    desc_or_macro,
    called_from,
    first_caller || caller_locations.first,
    &block
  )
end
should_eventually( desc_or_macro, called_from = nil, first_caller = nil, &block) click to toggle source
# File lib/assert/context/test_dsl.rb, line 74
def should_eventually(
      desc_or_macro,
      called_from = nil,
      first_caller = nil,
      &block)
  unless desc_or_macro.is_a?(Assert::Macro)
    desc_or_macro = "should #{desc_or_macro}"
  end
  test_eventually(
    desc_or_macro,
    called_from,
    first_caller || caller_locations.first,
    &block
  )
end
Also aliased as: should_skip
should_skip( desc_or_macro, called_from = nil, first_caller = nil, &block)
Alias for: should_eventually
test(desc_or_macro, called_from = nil, first_caller = nil, &block) click to toggle source
# File lib/assert/context/test_dsl.rb, line 12
def test(desc_or_macro, called_from = nil, first_caller = nil, &block)
  if desc_or_macro.is_a?(Assert::Macro)
    instance_eval(&desc_or_macro)
  elsif block_given?
    # create a test from the given code block
    desc =
      if desc_or_macro.is_a?(Assert::Macro)
        desc_or_macro.name
      else
        desc_or_macro
      end
    suite.on_test(
      Assert::Test.for_block(
        desc,
        Assert::ContextInfo.new(
          self,
          called_from,
          first_caller || caller_locations.first,
        ),
        suite.config,
        &block
      ),
    )
  else
    test_eventually(
      desc_or_macro,
      called_from,
      first_caller || caller_locations.first,
      &block
    )
  end
end
test_eventually(desc_or_macro, called_from = nil, first_caller = nil) click to toggle source
# File lib/assert/context/test_dsl.rb, line 45
def test_eventually(desc_or_macro, called_from = nil, first_caller = nil)
  # create a test from a proc that just skips
  ci =
    Assert::ContextInfo.new(
      self,
      called_from,
      first_caller || caller_locations.first,
    )
  suite.on_test(Assert::Test.for_block(
    desc_or_macro.is_a?(Assert::Macro) ? desc_or_macro.name : desc_or_macro,
    ci,
    suite.config,
    &proc{ skip("TODO", [ci.called_from.to_s]) }
  ))
end
Also aliased as: test_skip
test_skip(desc_or_macro, called_from = nil, first_caller = nil)
Alias for: test_eventually