Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Ruby > Test::Unit Equivalent of JUnit @AfterClass

Reply
Thread Tools

Test::Unit Equivalent of JUnit @AfterClass

 
 
Patrick Joyce
Guest
Posts: n/a
 
      11-08-2007
Hey,

Does anyone know a way to do the equivalent of @AfterClass in
Test::Unit? I need to execute some code once after ALL the test_*
methods in a Test::Unit::TestCase have run (teardown runs after EACH
method).

The reason I need to do this is that Rails leaves old fixture data in
the DB after each TestCase is run. This just doesn't seem right to me,
as I think each TestCase should start with the same state, but that is
another issue. The immediate problem is that this can cause tests to
fail if there are foreign key constraints. For example:

TestCase1 < Test::Unit::TestCase
fixtures :testa, :testb
end

TestCase2 < Test::Unit:TestCase
fixtures :testa
end

If testb has a foreign key that depends upon testa, the second
TestCase will fail since it will only try to delete from table testa
and there are records in table testb that depend on testa.

Cliff Moon of PhillyOnRails wrote a plugin
(http://agilewebdevelopment.com/plugi...n_key_fixtures) to solve
this problem, but the svn repository seems to be down.

Another note: I only noticed this when setting up my cruisecontrol.rb
for my project. The normal "rake test" task sets up the Test DB schema
from schema.rb which ignores foreign keys. So if you have foreign keys
in your DB be aware that there is a good chance you are running your
tests without them.

Any ideas?

- Patrick Joyce
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
 
 
 
Ryan Davis
Guest
Posts: n/a
 
      11-08-2007

On Nov 7, 2007, at 21:55 , Patrick Joyce wrote:

> The reason I need to do this is that Rails leaves old fixture data in
> the DB after each TestCase is run. This just doesn't seem right to me,
> as I think each TestCase should start with the same state, but that is
> another issue. The immediate problem is that this can cause tests to
> fail if there are foreign key constraints. For example:


No, it isn't another issue... it is bug 2404 in the rails bug db.

http://dev.rubyonrails.org/ticket/2404



 
Reply With Quote
 
 
 
 
Patrick Joyce
Guest
Posts: n/a
 
      11-08-2007
Ryan Davis wrote:

> No, it isn't another issue... it is bug 2404 in the rails bug db.
>
> http://dev.rubyonrails.org/ticket/2404


Thanks, I don't know how I missed that ticket in all my searching.

How did you end up working around the problem? Did you use the initial
"nuke_fixtures" patch? Did you add all the fixtures with foreign keys to
each test? (that looks like the easiest solution, but just doesn't seem
right)
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
Daniel Berger
Guest
Posts: n/a
 
      11-08-2007


On Nov 8, 12:39 am, Ryan Davis <(E-Mail Removed)> wrote:
> On Nov 7, 2007, at 21:55 , Patrick Joyce wrote:
>
> > The reason I need to do this is that Rails leaves old fixture data in
> > the DB after each TestCase is run. This just doesn't seem right to me,
> > as I think each TestCase should start with the same state, but that is
> > another issue. The immediate problem is that this can cause tests to
> > fail if there are foreign key constraints. For example:

>
> No, it isn't another issue... it is bug 2404 in the rails bug db.
>
> http://dev.rubyonrails.org/ticket/2404


It's our favorite bug Ryan!

Yep, going OT here...

That bug alone really made my Rails test suite suffer for an existing
app. I don't even try to implement FK's at the database layer any more
with Rails as a result.

I wonder if Merb fixed this...

Regards,

Dan


 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
eclipse, junit analyzer Stian Bakken Java 1 11-08-2003 12:56 AM
Profiling JUnit tests in Eclipse Jan Java 0 10-02-2003 07:07 PM
Re: Junit Ant Task Christopher Blunck Java 1 08-19-2003 04:48 PM
junit ant task problems loading up a .properties file Scout Java 0 08-04-2003 05:30 PM
Junit Test From Ant--java.lang.LinkageError Tom Koenning Java 0 07-28-2003 07:11 PM



Advertisments