client_tests.test_sasl: Split out mechanism test

This commit is contained in:
Daniel Oaks 2015-12-20 13:31:29 +10:00
parent 7b3d88d563
commit 07e160758e

View File

@ -15,12 +15,14 @@ IRX9cyi2wdYg9mUUYyh9GKdBCYHGUJAiCA==
-----END EC PRIVATE KEY----- -----END EC PRIVATE KEY-----
""" """
class SaslTestCase(cases.BaseClientTestCase, cases.ClientNegociationHelper): class SaslMechanismCheck:
def checkMechanismSupport(self, mechanism): def checkMechanismSupport(self, mechanism):
if mechanism in self.controller.supported_sasl_mechanisms: if mechanism in self.controller.supported_sasl_mechanisms:
return return
self.skipTest('SASL Mechanism not supported: {}'.format(mechanism)) self.skipTest('SASL Mechanism not supported: {}'.format(mechanism))
class SaslTestCase(cases.BaseClientTestCase, cases.ClientNegociationHelper,
SaslMechanismCheck):
def testPlain(self): def testPlain(self):
auth = authentication.Authentication( auth = authentication.Authentication(
mechanisms=[authentication.Mechanisms.plain], mechanisms=[authentication.Mechanisms.plain],
@ -138,7 +140,8 @@ class SaslTestCase(cases.BaseClientTestCase, cases.ClientNegociationHelper):
m = self.negotiateCapabilities(['sasl'], False) m = self.negotiateCapabilities(['sasl'], False)
self.assertEqual(m, Message([], None, 'CAP', ['END'])) self.assertEqual(m, Message([], None, 'CAP', ['END']))
class Irc302SaslTestCase(cases.BaseClientTestCase, cases.ClientNegociationHelper): class Irc302SaslTestCase(cases.BaseClientTestCase, cases.ClientNegociationHelper,
SaslMechanismCheck):
def testPlainNotAvailable(self): def testPlainNotAvailable(self):
auth = authentication.Authentication( auth = authentication.Authentication(
mechanisms=[authentication.Mechanisms.plain], mechanisms=[authentication.Mechanisms.plain],