ActionMailer intermittent test failure

I've written a test for a controller that sends email using ActionMailer. The problem is the test fails sporadically. It almost seems like ActionMailer::Base.deliveries isn't being updated by the time the assert checks, but I don't think ActionMailer sends emails asynchronously, at least nothing in the guide indicates that is the case.

I tried adding a sleep before the assert to see if it was a threading thing, but I still get the failure at about the same interval.

Here is my test code:

  test "should remind players" do     session.clear     get :reminder     assert_emails 2     assert_equal %w[player@one.com], ActionMailer::Base.deliveries[0].to     assert_equal "Game Reminder", ActionMailer::Base.deliveries[0].subject     assert_equal users(:two).email, ActionMailer::Base.deliveries[0].from[0]   end

Any known issues with intermittent ActionMailer or ActionMailer::TestCase failures?

Ignore. I found the problem and it had nothing to do with ActionMailer or ActionMailer::Test. It was a boundary condition error in my test fixture. Sometimes the test took just long enough to run that a date check failed and no emails were actually sent.