Sha256: 23109b6c800af2eb14e42a0af6a01c4ae89efcf478171849b42fd8200441a36f

Contents?: true

Size: 1.46 KB

Versions: 59

Compression:

Stored size: 1.46 KB

Contents

module PhusionPassenger

shared_examples_for "a Ruby loader" do
	it "prints an error page if the startup file fails to load" do
		File.write(@stub.startup_file, %q{
			raise "oh no!"
		})
		result = start
		result[:status].should == "Error"
		result[:body].should include("oh no!")
	end

	it "calls the starting_worker_process event after the startup file has been loaded" do
		File.prepend(@stub.startup_file, %q{
			history_file = "history.txt"
			PhusionPassenger.on_event(:starting_worker_process) do |forked|
				::File.open(history_file, 'a') do |f|
					f.puts "worker_process_started\n"
				end
			end
			::File.open(history_file, 'a') do |f|
				f.puts "end of startup file\n"
			end
		})
		result = start
		result[:status].should == "Ready"
		File.read("#{@stub.app_root}/history.txt").should ==
			"end of startup file\n" +
			"worker_process_started\n"
	end

	it "calls the stopping_worker_process event on exit" do
		File.prepend(@stub.startup_file, %q{
			history_file = "history.txt"
			PhusionPassenger.on_event(:stopping_worker_process) do
				::File.open(history_file, 'a') do |f|
					f.puts "worker_process_stopped\n"
				end
			end
			::File.open(history_file, 'a') do |f|
				f.puts "end of startup file\n"
			end
		})
		result = start
		result[:status].should == "Ready"
		@loader.input.close_write
		eventually(3) do
			File.read("#{@stub.app_root}/history.txt") ==
				"end of startup file\n" +
				"worker_process_stopped\n"
		end
	end
end

end # module PhusionPassenger

Version data entries

59 entries across 59 versions & 1 rubygems

Version Path
passenger-4.0.60 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.59 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-5.0.0.beta3 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.58 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.57 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-5.0.0.beta2 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.56 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.55 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-5.0.0.beta1 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.53 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.52 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.51 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.50 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.49 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.48 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.46 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.45 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.44 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.43 test/ruby/shared/ruby_loader_sharedspec.rb
passenger-4.0.42 test/ruby/shared/ruby_loader_sharedspec.rb