| 12345678910111213141516171819202122232425262728 |
- # vim: tabstop=4 shiftwidth=4 softtabstop=4
- """ Unit tests for Authentication plugins"""
- from websockify.auth_plugins import BasicHTTPAuth, AuthenticationError
- import unittest
- class BasicHTTPAuthTestCase(unittest.TestCase):
- def setUp(self):
- self.plugin = BasicHTTPAuth('Aladdin:open sesame')
- def test_no_auth(self):
- headers = {}
- self.assertRaises(AuthenticationError, self.plugin.authenticate, headers, 'localhost', '1234')
- def test_invalid_password(self):
- headers = {'Authorization': 'Basic QWxhZGRpbjpzZXNhbWUgc3RyZWV0'}
- self.assertRaises(AuthenticationError, self.plugin.authenticate, headers, 'localhost', '1234')
- def test_valid_password(self):
- headers = {'Authorization': 'Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ=='}
- self.plugin.authenticate(headers, 'localhost', '1234')
- def test_garbage_auth(self):
- headers = {'Authorization': 'Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxx'}
- self.assertRaises(AuthenticationError, self.plugin.authenticate, headers, 'localhost', '1234')
|