def __init__(self): self.last_element = None self.last_string = None self.strings = [] self.validator_registry = ValidationRegistry() with warnings.catch_warnings(): warnings.simplefilter("ignore") handler1 = DummyTrueValidator() self.validator_registry.register('dummy', handler1)
def get_validation_registry(): """Returns the jid auth validation registry""" global _validation_registry with _validation_registry_lock: if _validation_registry == None: _validation_registry = ValidationRegistry() return _validation_registry
class MockConnection(object): def __init__(self): self.last_element = None self.last_string = None self.strings = [] self.validator_registry = ValidationRegistry() with warnings.catch_warnings(): warnings.simplefilter("ignore") handler1 = DummyTrueValidator() self.validator_registry.register('dummy', handler1) def send_element(self, element): self.last_element = element self.strings.append(ET.tostring(element)) def send_string(self, string): self.last_string = string self.strings.append(string)
def setUp(self): self.registry = ValidationRegistry()
class TestValidationRegistry(PyfireTestCase): def setUp(self): self.registry = ValidationRegistry() def tearDown(self): del self.registry def test_registertwice(self): handler = DummyFalseValidator() self.registry.register('dummy', handler) with self.assertRaises(AttributeError) as cm: self.registry.register('dummy', handler) def test_unregister_bad(self): with self.assertRaises(AttributeError) as cm: self.registry.unregister('dummy') def test_unregister_good(self): handler = DummyFalseValidator() self.registry.register('dummy', handler) self.registry.unregister('dummy') def test_unregister_shutdown(self): handler = DummyTestValidator() self.registry.register('dummy', handler) self.assertFalse(handler._shutdown) self.registry.unregister('dummy') self.assertTrue(handler._shutdown) def test_validation_userpass_fail(self): handler1 = DummyFalseValidator() self.registry.register('dummy', handler1) handler2 = DummyTestValidator() self.registry.register('tester', handler2) self.assertFalse(handler2._validated) with self.assertRaises(InvalidAuthenticationError) as cm: self.registry.validate_userpass('user', 'pass') self.assertTrue(handler2._validated) def test_validation_userpass_success(self): with warnings.catch_warnings(): warnings.simplefilter("ignore") handler1 = DummyTrueValidator() self.registry.register('dummy', handler1) handler2 = DummyTestValidator() self.registry.register('tester', handler2) self.assertFalse(handler2._validated) self.assertEqual(self.registry.validate_userpass('user', 'pass'), 'dummy') self.assertFalse(handler2._validated) def test_validation_token_fail(self): handler1 = DummyFalseValidator() self.registry.register('dummy', handler1) handler2 = DummyTestValidator() self.registry.register('tester', handler2) self.assertFalse(handler2._validated) with self.assertRaises(InvalidAuthenticationError) as cm: self.registry.validate_token('token') self.assertTrue(handler2._validated) def test_validation_token_success(self): with warnings.catch_warnings(): warnings.simplefilter("ignore") handler1 = DummyTrueValidator() self.registry.register('dummy', handler1) handler2 = DummyTestValidator() self.registry.register('tester', handler2) self.assertFalse(handler2._validated) self.assertEqual(self.registry.validate_token('token'), 'dummy') self.assertFalse(handler2._validated)