# File test/test_control.rb, line 34
    def setup
      super

      # dependency configuration
      require 'etc'
      require 'socket'
      require 'digest/md5'
      require 'wpm'
      require 'wpm/rexml'
      require 'wpm/rucydriver'
      require 'rucy/priv'
      require 'rucy/loader'
      require 'rucy/params'
      require 'rucy/restart'
      require 'rucy/messenger'
      @rep = Rucy::Repository.new
      @rep.set_value(:Etc, Etc)
      @rep.set_value(:File, File)
      @rep.set_value(:LogFile, File)
      @rep.set_value(:STDOUT, STDOUT)
      @rep.set_value(:Process, Process)
      @rep.set_value(:Digest, Digest::MD5)
      @rep.set_block(:WebPageMakerDocument) { Rucy::WebPageMakerDocument.new(WPM::XMLAssistByREXML) }
      @rep.set_block(:Privilege) {|non_privilege_user, non_privilege_group|
        Rucy::Privilege.new(non_privilege_user, non_privilege_group, @rep)
      }
      @rep.set_class(:DocumentFactory, Rucy::DocumentFactory)
      @rep.set_block(:AdminParams) { Rucy::AdminParams.new(@rep) }
      @rep.set_value(:AdminParamsClass, Rucy::AdminParams)
      @rep.set_block(:ServerParams) { Rucy::ServerParams.new(@rep) }
      @rep.set_value(:ServerParamsClass, Rucy::ServerParams)
      @rep.set_block(:LoggingParams) { Rucy::LoggingParams.new(@rep) }
      @rep.set_value(:LoggingParamsClass, Rucy::LoggingParams)
      @rep.set_block(:AccessLogParams) { Rucy::AccessLogParams.new(@rep) }
      @rep.set_value(:AccessLogParamsClass, Rucy::AccessLogParams)
      @rep.set_block(:AliasList) { Rucy::AliasList.new(@rep) }
      @rep.set_value(:AliasListClass, Rucy::AliasList)
      @rep.set_block(:DocumentList) {|factory| Rucy::DocumentList.new(factory, @rep) }
      @rep.set_value(:DocumentListClass, Rucy::DocumentList)
      @rep.set_block(:FilterList) {|factory| Rucy::FilterList.new(factory, @rep) }
      @rep.set_value(:FilterListClass, Rucy::FilterList)
      @rep.set_class(:MultiThreadRestartSignal, Rucy::MultiThreadRestartSignal)
      @rep.set_class(:MultiProcessRestartSignal, Rucy::MultiProcessRestartSignal)
      @rep.set_value(:MultiThreadMessengerClass, Rucy::MultiThreadMessenger)
      @rep.set_value(:MultiProcessMessengerClass, Rucy::MultiProcessMessenger)
      if (RUBY_PLATFORM =~ /mswin32|mingw32/i) then
        require 'rucy/config_win32'
        Rucy::Config.config_win32(@rep)
      end

      # for BasicSocket class
      @do_not_reverse_lookup_call = 0
      @do_not_reverse_lookup_flag = nil

      @BasicSocket = Forwarder.new(self)
      class << @BasicSocket
        def_delegator :__getobj__, :do_not_reverse_lookup=
      end

      # for Rucy::Properties class
      @properties_new_call = 0
      @properties_new_path = nil
      @set_properties_privilege_call = 0
      @set_properties_privilege_priv = nil

      class << @properties
        def_delegator :__getobj__, :properties_privilge=, :privilege=
      end

      # for Rucy::Server class
      @daemon_call = 0
      @daemon = false
      @start_time_call = 0
      @restart_count_call = 0
      @restart_time_call = 0
      @restart_call = 0
      @close_call = 0
      @restart_signal_call = 0
      @restart_signal = nil
      @set_port_call = 0
      @port = nil
      @port_call = 0
      @set_bind_address_call = 0
      @bind_address = nil
      @set_timeout_call = 0
      @timeout = nil
      @set_keep_alive_call = 0
      @keep_alive = nil
      @set_max_requests_call = 0
      @max_requests = nil
      @set_queue_length_call = 0
      @queue_length = nil
      @set_messengers_call = 0
      @messengers = nil
      @set_messenger_factory_call = 0
      @messenger_factory = nil
      @set_messenger_threads_call = 0
      @messenger_threads = nil
      @set_messenger_queue_length_call = 0
      @messenger_queue_length = nil
      @privilege_call = 0
      @set_privilege_call = 0
      @privilege = nil
      @add_logger_call = 0
      @add_access_log_call = 0
      @logging_access_call = 0
      @messg_call = 0
      @set_alias_call = 0
      @set_alias_alist = Array.new
      @set_virtual_alias_call = 0
      @set_virtual_alias_alist = Array.new
      @mount_call = 0
      @virtual_mount_call = 0
      @attach_call = 0
      @virtual_attach_call = 0
      @folder = Rucy::FolderDocument.new
      @close_hook_call = 0

      @server = Forwarder.new(self)
      class << @server
        include Rucy::LoggingLevel
        def_delegator :__getobj__, :daemon
        def_delegator :__getobj__, :start_time
        def_delegator :__getobj__, :restart_count
        def_delegator :__getobj__, :restart_time
        def_delegator :__getobj__, :restart
        def_delegator :__getobj__, :close
        def_delegator :__getobj__, :restart_signal=
        def_delegator :__getobj__, :port
        def_delegator :__getobj__, :port=
        def_delegator :__getobj__, :bind_address=
        def_delegator :__getobj__, :timeout=
        def_delegator :__getobj__, :keep_alive=
        def_delegator :__getobj__, :max_requests=
        def_delegator :__getobj__, :queue_length=
        def_delegator :__getobj__, :messengers=
        def_delegator :__getobj__, :messenger_factory=
        def_delegator :__getobj__, :messenger_threads=
        def_delegator :__getobj__, :messenger_queue_length=
        def_delegator :__getobj__, :privilege
        def_delegator :__getobj__, :privilege=
        def_delegator :__getobj__, :add_logger
        def_delegator :__getobj__, :add_access_log
        def_delegator :__getobj__, :logging_access
        def_delegator :__getobj__, :messg
        def_delegator :__getobj__, :set_alias
        def_delegator :__getobj__, :set_virtual_alias
        def_delegator :__getobj__, :mount
        def_delegator :__getobj__, :virtual_mount
        def_delegator :__getobj__, :attach
        def_delegator :__getobj__, :virtual_attach
        def_delegator :__getobj__, :close_hook
      end

      # for Rucy::PasswordEncryptor
      @pw_enc_orig = Rucy::PasswordEncryptor.new(@rep)
      @crypt_call = 0

      @pw_enc = Forwarder.new(self)
      class << @pw_enc
        def_delegator :__getobj__, :crypt
      end

      # for Rucy::SimpleLoader class
      @simple_loader_load_hook_call = 0
      @simple_loader_load_hook_path_list = Array.new

      # for Rucy::ModuleFolder class
      @mod_folder_orig = nil
      @mod_folder_new_call = 0
      @mod_folder_new_path = nil
      @scan_call = 0

      @mod_folder = Forwarder.new(self)
      class << @mod_folder
        def_delegator :__getobj__, :scan
      end

      # for Rucy::DocumentLoader class
      @loader_orig = nil
      @loader_new_call = 0
      @loader_new_path = nil
      @load_call = 0
      @factory_call = 0
      @RemoteAddressAllowAccessFilter_call = 0
      @BasicAuthFilter_call = 0

      @loader = Forwarder.new(self)
      class << @loader
        def_delegator :__getobj__, :load
        def_delegator :__getobj__, :factory
        def_delegator :__getobj__, :RemoteAddressAllowAccessFilter
        def_delegator :__getobj__, :BasicAuthFilter
      end

      # dependency configuration for test
      @rep.set_value(:BasicSocket, @BasicSocket)
      @rep.set_value(:PasswordEncryptor, @pw_enc)
      @rep.set_block(:ModuleLoader) { PseudoSimpleLoader.new(self) }
      @rep.set_block(:ModuleFolder) {|path| mod_folder_new(path) }
      @rep.set_block(:DocumentLoader) {|path| loader_new(path) }
      @rep.set_block(:Properties) {|path| properties_new(path) }

      # test target
      @control = nil
    end