add unit test for error handling in build_config()
This commit is contained in:
@@ -137,7 +137,7 @@ class Server():
|
||||
|
||||
if config_err is not None:
|
||||
logging.info(f'config_err: {config_err}')
|
||||
return # fixme raise an exception
|
||||
return
|
||||
|
||||
logging.info('******')
|
||||
|
||||
@@ -239,7 +239,9 @@ async def healthy():
|
||||
return Response(status=200, response="I'm fine")
|
||||
|
||||
|
||||
async def handle_client(reader: StreamReader, writer: StreamWriter, inv_class):
|
||||
async def handle_client(reader: StreamReader,
|
||||
writer: StreamWriter,
|
||||
inv_class): # pragma: no cover
|
||||
'''Handles a new incoming connection and starts an async loop'''
|
||||
|
||||
with inv_class(reader, writer) as inv:
|
||||
@@ -247,7 +249,7 @@ async def handle_client(reader: StreamReader, writer: StreamWriter, inv_class):
|
||||
|
||||
|
||||
@app.before_serving
|
||||
async def startup_app():
|
||||
async def startup_app(): # pragma: no cover
|
||||
HypercornLogHndl.save()
|
||||
loop = asyncio.get_event_loop()
|
||||
Proxy.class_init()
|
||||
|
||||
1
app/tests/cnf/invalid_config.toml
Normal file
1
app/tests/cnf/invalid_config.toml
Normal file
@@ -0,0 +1 @@
|
||||
mqtt.port = ":1883"
|
||||
@@ -123,6 +123,17 @@ class TestServerClass:
|
||||
assert logging.getLogger('hypercorn.access').level == logging.INFO
|
||||
assert logging.getLogger('hypercorn.error').level == logging.INFO
|
||||
|
||||
def test_build_config_error(self, caplog):
|
||||
s = self.FakeServer()
|
||||
s.src_dir = 'app/src/'
|
||||
s.toml_config = 'app/tests/cnf/invalid_config.toml'
|
||||
|
||||
with caplog.at_level(logging.ERROR):
|
||||
s.build_config()
|
||||
assert "Can't read from app/tests/cnf/invalid_config.toml" in caplog.text
|
||||
assert "Key 'port' error:" in caplog.text
|
||||
|
||||
|
||||
class TestHypercornLogHndl:
|
||||
class FakeServer(Server):
|
||||
def __init__(self):
|
||||
|
||||
Reference in New Issue
Block a user