def setup
@document = Rucy::Page.new("<html>Hello world.</html>\n")
@log_pio = PseudoIO.new
@logger = Rucy::Logger.new(@log_pio)
@access_log = Rucy::AccessLog.new(PseudoIO.new, '')
@messenger = Rucy::MultiProcessMessenger.new(@document, @logger, @access_log)
@messenger_threads_call = 0
@messenger_queue_length_call = 0
@privilege_call = 0
@server = Forwarder.new(self)
class << @server
def_delegator :__getobj__, :messenger_threads
def_delegator :__getobj__, :messenger_queue_length
def_delegator :__getobj__, :privilege
end
@privileged_user_call = 0
@cancel_privilege_call = 0
@privilege = Forwarder.new(self)
class << @privilege
def_delegator :__getobj__, :privileged_user?
def_delegator :__getobj__, :cancel_privilege
end
assert_nil(@messenger.messenger_threads)
assert_nil(@messenger.messenger_queue_length)
@messenger.open(@server)
assert_equal(1, @messenger_threads_call)
assert_equal(1, @messenger_queue_length_call)
assert_equal(1, @privilege_call)
assert_equal(4, @messenger.messenger_threads)
assert_equal(2, @messenger.messenger_queue_length)
@queue = Rucy::SocketQueue.new(2)
@thread = Thread.new{
@messenger.accept(@queue)
}
end