Scott Taylor wrote:
On May 26, 2009, at 2:31 PM, Ben Mabey wrote:
Scott Taylor wrote:
On May 26, 2009, at 1:22 PM, Mark Wilden wrote:
On Sun, May 24, 2009 at 10:17 PM, Ben Mabey <b...@benmabey.com
<mailto:b...@benmabey.com>> wrote:
Well, so Spork was really created with testing in mind. It is
more general purpose than spec_server though. You can use it
with any Ruby project, not just Rails. You can also potentially
use it with any other testing framework that adds support for it
(I've been meaning to do this for Cucumber). I know that Tim's
original work with Kernel.fork was actually dealing with Mongrel
but I'm not sure what the exact details of it are. I'll try to
find out for you though.
Spork seems to have the same problem that I have with spec_server:
it doesn't reload classes I change. So if I'm doing TDD between a
model and its spec, it doesn't help.
I noticed the same thing. It must be a bug in spork, correct?
Scott
What does your spec_helper look like?
It should be something like:
require 'rubygems'
require 'spork'
Spork.prefork do
ENV["RAILS_ENV"] = "test"
require File.expand_path(File.dirname(__FILE__) +
"/../config/environment")
# Load other stuff that only needs to be setup once and never
reloaded (i.e. rspec and configuring it)
end
Spork.each_run do
ActiveRecord::Base.establish_connection # make sure that the db
connection is ready.
require File.expand_path(RAILS_ROOT + "/spec/fixjour_builders.rb") #
You could use FixtureReplacement, FactorGirl, etc...
Spec::Runner.configure do |config|
config.include Fixjour
include SharedSpecHelpers
include DatabaseHelpers
include AuthenticatedTestHelper
end
end
Keep in mind that the code in Spork.prefork must not require any of
your models inadvertently. If your environment file does this or a
plugin does then your models will not be reloaded. Look over your
spec_helper file and try to see who is requiring your models
initially. We have really only tested this on is our apps where Tim
and I work... So, there could very well be bugs we need to iron out.
Sweet! Seems to be working great now.
Looks like the README has changed over the weekend - previously, I had
been starting the spec server with script/spec_server. Running spork
directly seems to work just fine.
Thanks a TON!
Scott
Ok cool. Seems like the bug may of been poor documentation... please
send a pull request if you think it can be improved. :)
-Ben
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users