On Sat, Oct 04, 2003 at 01:16:08PM +0400, Dmitry Diskin wrote:

> If one of my tests fail,

One particular test, or any of them?  Tests are often considered to be
independent, at least to a large extent.

> other tests should not be executed. In order to stop execution, I
> use the following code:
> 
> sub test_001_load {

On the choice of method name, is the numbering just for convenience or
were you relying on one test's side-effects to do something for the
next one?  The manpage for Test::Unit::TestCase (notes section) talks
about this a bit.

>     my $self = shift;
>     if ($loaded_nok) {
>         $self->fail("Unrecoverable error, can't continue.");
>         exit;
>     }
> }

I haven't done anything like this with perlunit, but in JUnit running
from an Ant file, I have put aside a set of tests to run first.  They
check things like the presence of the database we're just about to run
the hundred tests against - 100 failures aren't very useful.

You could do this by generating test suites by some means and having a
more customised testrunner script.

> Is it a proper way? Is there any $suite->stop method?

Hmm, there's a Test::Unit::Result->stop() which would appear to do
what you want.  I'm not sure what the proper answer is, and I don't
claim to have read the docs recently.  8-}

You'd need to get the 'result' object from the 'suite' which creates
it.  $testrunner->result()->stop() would work, but this is probably a
"dirty" solution.

A neater way might be to register a Test::Unit::Listener (I haven't
tried) and use the add_failure event to fish the Result object out
from the failure exception?


Remember, there's more than one way to do it!

Matthew  #8-)


-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
SourceForge.net hosts over 70,000 Open Source Projects.
See the people who have HELPED US provide better services:
Click here: http://sourceforge.net/supporters.php
_______________________________________________
Perlunit-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/perlunit-users

Reply via email to