One test affects another

I have the following class:

class Brewer < ActiveRecord::Base   class EmailNotFound < StandardError; end   class << self     def find_by_email(*args)       b = super(*args)       raise EmailNotFound if b.nil?       return b     end   end end

And the following two tests:

require File.dirname(__FILE__) + '/../test_helper'

class BrewerTest < Test::Unit::TestCase   fixtures :brewers

  def test_should_find_brewer_with_valid_email     assert_equal brewers(:active_brewer), Brewer.find_by_email(brewers(:active_brewer).email)   end

  def test_should_raise_email_not_found_exception_with_invalid_email     assert_raises Brewer::EmailNotFound do       Brewer.find_by_email('NotAnEmail')     end   end end

The tests fail like this:

Loaded suite test/unit/brewer_test Started .F Finished in 0.428367 seconds.

  1) Failure: test_should_raise_email_not_found_exception_with_invalid_email(BrewerTest) [test/unit/brewer_test.rb:207]: <Brewer::EmailNotFound> exception expected but none was thrown.

2 tests, 2 assertions, 1 failures, 0 errors

If I comment out test_should_find_brewer_with_valid_email, the other test passes.

What's going on here?

Regards, --Dean