403Webshell
Server IP : 66.29.132.122  /  Your IP : 18.116.60.62
Web Server : LiteSpeed
System : Linux business142.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
User : admazpex ( 531)
PHP Version : 7.2.34
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /proc/self/root/opt/cpanel/ea-ruby27/src/passenger-release-6.0.23/test/ruby/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/self/root/opt/cpanel/ea-ruby27/src/passenger-release-6.0.23/test/ruby//spec_helper.rb
if GC.respond_to?(:copy_on_write_friendly?) && !GC.copy_on_write_friendly?
  GC.copy_on_write_friendly = true
end

RUBY_VERSION_INT = RUBY_VERSION.split('.')[0..2].join.to_i

source_root = File.expand_path(File.dirname(__FILE__) + "/../..")
Dir.chdir("#{source_root}/test")

require 'rubygems'
require 'json'
begin
  CONFIG = JSON.load(File.read('config.json'))
rescue Errno::ENOENT
  STDERR.puts "*** You do not have the file test/config.json. " <<
    "Please copy test/config.json.example to " <<
    "test/config.json, and edit it."
  exit 1
end

def boolean_option(name, default_value = false)
  value = ENV[name]
  if value.nil? || value.empty?
    return default_value
  else
    return value == "yes" || value == "on" || value == "true" || value == "1"
  end
end

DEBUG = boolean_option('DEBUG')

ENV.delete('PASSENGER_DEBUG')

$LOAD_PATH.unshift("#{source_root}/src/ruby_supportlib")
$LOAD_PATH.unshift("#{source_root}/test")

require 'thread'
require 'timeout'
require 'fileutils'
require 'phusion_passenger'
PhusionPassenger.locate_directories
PhusionPassenger.require_passenger_lib 'debug_logging'
PhusionPassenger.require_passenger_lib 'utils'
require 'support/test_helper'

include TestHelper

# Seed the pseudo-random number generator here
# so that it doesn't happen in the child processes.
srand

trap "QUIT" do
  STDERR.puts PhusionPassenger::Utils.global_backtrace_report
end

class DeadlineTimer
  def initialize(main_thread, deadline)
    @mutex = Mutex.new
    @cond  = ConditionVariable.new
    @iteration = 0
    @pipe  = IO.pipe

    @thread = Thread.new do
      Thread.current.abort_on_exception = true
      expected_iteration = 1
      ios = [@pipe[0]]
      while true
        @mutex.synchronize do
          while @iteration != expected_iteration
            @cond.wait(@mutex)
          end
        end
        if !select(ios, nil, nil, deadline)
          STDERR.puts "*** Test timed out (#{deadline} seconds)"
          STDERR.puts PhusionPassenger::Utils.global_backtrace_report
          main_thread.raise(Timeout::Error, "Test timed out")
          expected_iteration += 1
        elsif @pipe[0].read(1).nil?
          break
        else
          expected_iteration += 1
        end
      end
    end
  end

  def start
    @mutex.synchronize do
      @iteration += 1
      @cond.signal
    end
  end

  def stop
    @pipe[1].write('x')
  end
end

DEADLINE_TIMER = DeadlineTimer.new(Thread.current, 30)

RSpec.configure do |config|
  config.expect_with :rspec do |c|
    c.syntax = [:should, :expect]
  end

  config.mock_with :rspec do |mocks|
    mocks.syntax = [:should, :receive]
    mocks.yield_receiver_to_any_instance_implementation_blocks = false
  end

  config.before(:each) do
    # Suppress warning messages.
    PhusionPassenger::DebugLogging.log_level = PhusionPassenger::LVL_CRIT
    PhusionPassenger::DebugLogging.log_file = nil
    PhusionPassenger::DebugLogging.stderr_evaluator = nil

    DEADLINE_TIMER.start
  end

  config.after(:each) do
    DEADLINE_TIMER.stop
  end
end

Youez - 2016 - github.com/yon3zu
LinuXploit