![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /var/lib/gems/2.5.0/gems/eventmachine-1.2.7/tests/ |
Upload File : |
require 'em_test_helper' class TestSASL < Test::Unit::TestCase # SASL authentication is usually done with UNIX-domain sockets, but # we'll use TCP so this test will work on Windows. As far as the # protocol handlers are concerned, there's no difference. TestUser,TestPsw = "someone", "password" class SaslServer < EM::Connection include EM::Protocols::SASLauth def validate usr, psw, sys, realm usr == TestUser and psw == TestPsw end end class SaslClient < EM::Connection include EM::Protocols::SASLauthclient end def setup @port = next_port end def test_sasl resp = nil EM.run { EM.start_server( "127.0.0.1", @port, SaslServer ) c = EM.connect( "127.0.0.1", @port, SaslClient ) d = c.validate?( TestUser, TestPsw ) d.timeout 1 d.callback { resp = true EM.stop } d.errback { resp = false EM.stop } } assert_equal( true, resp ) end end