mardi 24 novembre 2015

can common overriding code be shared

I am new to ruby and I'm hoping someone can help me. I am writing tests using test::unit and within my tests I needed to run some code before an assert was called so I overrided the assert methods like so:

class TestSomething < Test::Unit::TestCase

  def assert_equal(expected, actual, message = nil)
    mycode ..
    super(expected, actual, message)
  end

  def assert(object, message)
    my code ...
    super(object, message)
  end

  def assert_not_nil(object, message = "")
    my code ...
    super(object, message)
  end

  def setup

  end

  def test_case1

  end

  def test_case1

  end

  def teardown

  end

end

The above structure works fine and the asserts call my code. The thing is I have 100s of test classes. The assert overriding will be the same for all of them. Do I have to copy the assert overrides to the top of every class or is there a way for all of them to get the assert overrides in one go?

One more question. Is there a way of catching an error if it occurs anywhere within the entire class?

A

Aucun commentaire:

Enregistrer un commentaire