Require factory fails if I am not using rake to run tests

I am trying to reuse some code from a Rails 1.2.6 app in edge rails.
In the old app, I can run all my tests with 'rake' or I can run
individual tests using 'ruby test/functionals/foo_controller_test.rb'.
But in my edge rails app, I have to use 'rake'. If I try to run
individual tests, I get the error below. How can include my factory
module in a way that lets me run tests via rake AND individually with
'ruby $filename'?

/usr/bin/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`gem_original_require': no such file to load -- factory
(MissingSourceFile)
        from /usr/bin/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`require'
        from /rails/cms/vendor/rails/activerecord/lib/../../activesupport/lib/active_support/dependencies.rb:495:in
`require'
        from /rails/cms/vendor/rails/activerecord/lib/../../activesupport/lib/active_support/dependencies.rb:342:in
`new_constants_in'
        from /rails/cms/vendor/rails/activerecord/lib/../../activesupport/lib/active_support/dependencies.rb:495:in
`require'
        from ./test/unit/../test_helper.rb:5
        from test/unit/user_test.rb:1

The desired Factory module is in test/factory.rb - right next to
test_helper.rb. The offending includes are:

From test/unit/user_test.rb

  require File.dirname(__FILE__) + '/../test_helper'
  class UserTest < Test::Unit::TestCase

From tests/test_helper.rb

  ENV["RAILS_ENV"] = "test"
  require File.expand_path(File.dirname(__FILE__) + "/../config/environment")
  require 'test_help'
  require 'factory'
  class Test::Unit::TestCase

And test/factory.rb starts

  module Factory ..

Cynthia Kiser wrote:

  require File.expand_path(File.dirname(__FILE__) + "/../config/environment")
  require 'test_help'
  require 'factory'

I thought newer Railses reduced their file lookup paths. Use the dirname(__FILE__) trick you see right above your factory!

> require File.expand_path(File.dirname(__FILE__) + "/../factory.rb")

Alternately, use RAILS_ROOT, because environment.rb sets that.