class TestAnInvocationChainWithMultipleMember

#####################################################################

def setup

def setup
  @first_member = "A"
  @second_member = "B"
  ch = Rake::InvocationChain::EMPTY.append(@first_member)
  @chain = ch.append(@second_member)
end

def test_should_fail_when_adding_original_member

def test_should_fail_when_adding_original_member
  ex = assert_exception RuntimeError do
    @chain.append(@first_member)
  end
  assert_match(/A.*=>.*B.*=>.*A/, ex.message)
end

def test_should_report_first_member_as_a_member

def test_should_report_first_member_as_a_member
  assert @chain.member?(@first_member)
end

def test_should_report_second_member_as_a_member

def test_should_report_second_member_as_a_member
  assert @chain.member?(@second_member)
end