Sha256: bd26aba4c8fc8d4e118801102cecfa10edad9ae1b1ddabd9f6d7d0cb70b0b611

Contents?: true

Size: 989 Bytes

Versions: 3

Compression:

Stored size: 989 Bytes

Contents

require 'assert'
require 'cap-util/unset_var'

module CapUtil::UnsetVar

  class BaseTests < Assert::Context
    desc "the unset var helper"
    setup do
      @var_name = 'test'
      @unset = CapUtil::UnsetVar.new(@var_name)
    end
    subject { @unset }

    should "be a proc" do
      assert_kind_of ::Proc, subject
    end

    should "raise `Halted` when called" do
      assert_raises(CapUtil::Halted) { subject.call }
    end

    should "raise with a default msg based on the variable name" do
      exp_msg = ":#{@var_name} var not set."
      begin
        subject.call
      rescue CapUtil::Halted => err
        assert_match exp_msg, err.message
      end
    end

    should "accept a custom msg to raise with" do
      exp_msg = ":#{@var_name} var not set (a custom err msg)."
      unset = CapUtil::UnsetVar.new(@var_name, exp_msg)
      begin
        unset.call
      rescue CapUtil::Halted => err
        assert_match exp_msg, err.message
      end
    end

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
cap-util-1.4.0 test/unit/unset_var_tests.rb
cap-util-1.3.0 test/unit/unset_var_tests.rb
cap-util-1.2.0 test/unit/unset_var_tests.rb