You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
webssh/tests/test_main.py

46 lines
1.6 KiB

import unittest
from tornado.web import Application
from webssh.handler import open_to_public
from webssh.main import app_listen
class TestMain(unittest.TestCase):
def test_app_listen(self):
app = Application()
app.listen = lambda x, y, **kwargs: 1
open_to_public['https'] = None
open_to_public['http'] = None
server_settings = dict(ssl_options=False)
app_listen(app, 80, '127.0.0.1', server_settings)
self.assertEqual(open_to_public['http'], False)
self.assertIsNone(open_to_public['https'])
open_to_public['http'] = None
server_settings = dict(ssl_options=False)
app_listen(app, 80, '0.0.0.0', server_settings)
self.assertEqual(open_to_public['http'], True)
self.assertIsNone(open_to_public['https'])
open_to_public['http'] = None
server_settings = dict(ssl_options=True)
app_listen(app, 443, '127.0.0.1', server_settings)
self.assertEqual(open_to_public['https'], False)
self.assertIsNone(open_to_public['http'])
open_to_public['https'] = None
server_settings = dict(ssl_options=True)
app_listen(app, 443, '0.0.0.0', server_settings)
self.assertEqual(open_to_public['https'], True)
self.assertIsNone(open_to_public['http'])
open_to_public['https'] = None
server_settings = dict(ssl_options=False)
app_listen(app, 80, '0.0.0.0', server_settings)
server_settings = dict(ssl_options=True)
app_listen(app, 443, '0.0.0.0', server_settings)
self.assertEqual(open_to_public['https'], True)
self.assertEqual(open_to_public['http'], True)