mirror of
https://github.com/huashengdun/webssh.git
synced 2026-02-14 11:49:50 +00:00
Refactored method is_forbidden
This commit is contained in:
@@ -19,30 +19,31 @@ class TestMixinHandler(unittest.TestCase):
|
||||
|
||||
def test_is_forbidden(self):
|
||||
mhandler = MixinHandler()
|
||||
handler.https_server_enabled = True
|
||||
handler.redirecting = True
|
||||
options.fbidhttp = True
|
||||
options.redirect = True
|
||||
|
||||
context = Mock(
|
||||
address=('8.8.8.8', 8888),
|
||||
trusted_downstream=['127.0.0.1'],
|
||||
_orig_protocol='http'
|
||||
)
|
||||
self.assertTrue(mhandler.is_forbidden(context, ''))
|
||||
hostname = '4.4.4.4'
|
||||
self.assertTrue(mhandler.is_forbidden(context, hostname))
|
||||
|
||||
context = Mock(
|
||||
address=('8.8.8.8', 8888),
|
||||
trusted_downstream=[],
|
||||
_orig_protocol='http'
|
||||
)
|
||||
|
||||
hostname = 'www.google.com'
|
||||
self.assertEqual(mhandler.is_forbidden(context, hostname), False)
|
||||
|
||||
handler.https_server_enabled = False
|
||||
self.assertTrue(mhandler.is_forbidden(context, hostname))
|
||||
|
||||
options.redirect = False
|
||||
context = Mock(
|
||||
address=('8.8.8.8', 8888),
|
||||
trusted_downstream=[],
|
||||
_orig_protocol='http'
|
||||
)
|
||||
hostname = '4.4.4.4'
|
||||
self.assertTrue(mhandler.is_forbidden(context, hostname))
|
||||
|
||||
context = Mock(
|
||||
@@ -50,26 +51,21 @@ class TestMixinHandler(unittest.TestCase):
|
||||
trusted_downstream=[],
|
||||
_orig_protocol='http'
|
||||
)
|
||||
self.assertIsNone(mhandler.is_forbidden(context, ''))
|
||||
|
||||
context = Mock(
|
||||
address=('8.8.8.8', 8888),
|
||||
trusted_downstream=[],
|
||||
_orig_protocol='https'
|
||||
)
|
||||
self.assertIsNone(mhandler.is_forbidden(context, ''))
|
||||
|
||||
context = Mock(
|
||||
address=('8.8.8.8', 8888),
|
||||
trusted_downstream=[],
|
||||
_orig_protocol='http'
|
||||
)
|
||||
hostname = '8.8.8.8'
|
||||
self.assertTrue(mhandler.is_forbidden(context, hostname))
|
||||
hostname = 'www.google.com'
|
||||
self.assertIsNone(mhandler.is_forbidden(context, hostname))
|
||||
|
||||
options.fbidhttp = False
|
||||
self.assertIsNone(mhandler.is_forbidden(context, hostname))
|
||||
|
||||
hostname = '4.4.4.4'
|
||||
self.assertIsNone(mhandler.is_forbidden(context, hostname))
|
||||
|
||||
handler.redirecting = False
|
||||
self.assertIsNone(mhandler.is_forbidden(context, hostname))
|
||||
|
||||
context._orig_protocol = 'https'
|
||||
self.assertIsNone(mhandler.is_forbidden(context, hostname))
|
||||
|
||||
def test_get_redirect_url(self):
|
||||
mhandler = MixinHandler()
|
||||
hostname = 'www.example.com'
|
||||
|
||||
@@ -11,12 +11,12 @@ class TestMain(unittest.TestCase):
|
||||
app = Application()
|
||||
app.listen = lambda x, y, **kwargs: 1
|
||||
|
||||
handler.https_server_enabled = False
|
||||
handler.redirecting = None
|
||||
server_settings = dict()
|
||||
app_listen(app, 80, '127.0.0.1', server_settings)
|
||||
self.assertFalse(handler.https_server_enabled)
|
||||
self.assertFalse(handler.redirecting)
|
||||
|
||||
handler.https_server_enabled = False
|
||||
handler.redirecting = None
|
||||
server_settings = dict(ssl_options='enabled')
|
||||
app_listen(app, 80, '127.0.0.1', server_settings)
|
||||
self.assertTrue(handler.https_server_enabled)
|
||||
self.assertTrue(handler.redirecting)
|
||||
|
||||
Reference in New Issue
Block a user