spec/spork_spec.rb in spork-0.4.4 vs spec/spork_spec.rb in spork-0.5.1
- old
+ new
@@ -1,51 +1,54 @@
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
Spork.class_eval do
def self.reset!
@state = nil
- @already_run = nil
- @already_preforked = nil
+ @already_ran = nil
end
end
describe Spork do
before(:each) do
Spork.reset!
end
def spec_helper_simulator
- ran = []
+ @ran ||= []
Spork.prefork do
- ran << :prefork
+ @ran << :prefork
end
Spork.each_run do
- ran << :each_run
+ @ran << :each_run
end
- ran
+ @ran
end
it "only runs the preload block when preforking" do
- ran = []
- Spork.preforking!
- spec_helper_simulator.should == [:prefork]
+ Spork.exec_prefork { spec_helper_simulator }
+ @ran.should == [:prefork]
end
it "only runs the each_run block when running" do
- Spork.preforking!
- spec_helper_simulator
- Spork.running!
- spec_helper_simulator.should == [:each_run]
+ Spork.exec_prefork { spec_helper_simulator }
+ @ran.should == [:prefork]
+
+ Spork.exec_each_run
+ @ran.should == [:prefork, :each_run]
end
it "runs both blocks when Spork not activated" do
spec_helper_simulator.should == [:prefork, :each_run]
end
it "prevents blocks from being ran twice" do
- spec_helper_simulator.should == [:prefork, :each_run]
- spec_helper_simulator.should == []
+ Spork.exec_prefork { spec_helper_simulator }
+ Spork.exec_each_run
+ @ran.clear
+ Spork.exec_prefork { spec_helper_simulator }
+ Spork.exec_each_run
+ @ran.should == []
end
it "runs multiple prefork and each_run blocks at different locations" do
Spork.prefork { }
Spork.each_run { }