diff options
Diffstat (limited to 'tests/twisted/connect/disconnect-during-cert-verification.py')
-rw-r--r-- | tests/twisted/connect/disconnect-during-cert-verification.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/twisted/connect/disconnect-during-cert-verification.py b/tests/twisted/connect/disconnect-during-cert-verification.py new file mode 100644 index 0000000..83fe004 --- /dev/null +++ b/tests/twisted/connect/disconnect-during-cert-verification.py @@ -0,0 +1,28 @@ +""" +Test disconnecting while a certificate verification channel is open. +""" + +import dbus +import constants as cs +from idletest import exec_test, SSLIRCServer +from servicetest import EventPattern, sync_dbus + +def test(q, bus, conn, stream): + conn.Connect() + q.expect_many( + EventPattern('dbus-signal', signal='StatusChanged', args=[1, 1]), + EventPattern('irc-connected')) + e = q.expect('dbus-signal', signal='NewChannels') + + conn.Disconnect() + q.expect_many( + EventPattern('dbus-signal', signal='StatusChanged'), + EventPattern('irc-disconnected'), + ) + + # Idle would now crash in an idle callback; so let's see if it's alive. + sync_dbus(bus, q, conn) + +if __name__ == '__main__': + exec_test(test, {'use-ssl':dbus.Boolean(True)}, protocol=SSLIRCServer) + |