У меня есть вспомогательный модуль, общий для всех тестов моего Rails 2.3.8 приложения.Помимо прочего, он предоставляет методы setup
и teardown
.При просмотре кода кажется, что я должен быть в состоянии определить метод с именем add_assertion
, который будет вызываться _wrap_assertion
(ищите def _wrap_assertion
в Test :: Unit:: Утверждения 2.1.2 .) К сожалению, этого не происходит.
Устанавливая точку останова в методе setup
в моем вспомогательном модуле, я могу убедиться, что Test::Unit::Assertions
в его родословной:
(rdb:1) self.class
RoutingTest
(rdb:1) self.class.ancestors
[RoutingTest, CandlepinRequestHelper, ActionController::IntegrationTest, \
ActionController::Integration::Runner, ActiveSupport::TestCase, \
ActiveSupport::Testing::Deprecation, ActiveSupport::Testing::Assertions, \
ActiveSupport::Testing::SetupAndTeardown::ForClassicTestUnit, \
ActiveSupport::Callbacks, ActiveSupport::Testing::SetupAndTeardown, \
ActiveSupport::Testing::Default, Test::Unit::TestCase, \
Mocha::Integration::TestUnit::RubyVersion186AndAbove, Mocha::API, \
Mocha::ParameterMatchers, Test::Unit::Util::BacktraceFilter, \
Test::Unit::Assertions, Object, Mocha::ObjectMethods, Socket::Constants, \
InstanceExecHelper, JSON::Ext::Generator::GeneratorMethods::Object, \
ActiveSupport::Dependencies::Loadable, InstanceExecMethods, \
Base64::Deprecated, Base64, PP::ObjectMixin, Kernel]
(rdb:1) self.class.ancestors.include?(Test::Unit::Assertions)
true
, но мой метод def add_assertion
игнорируется.
Так что является рекомендуемым способом вставить 'вызовите мой метод для каждоготочка утверждения в последовательности тестирования Rails 2.3.8?
Спасибо!