Add tests and fix restart mqtt

Add tests and fix restart mqtt
This commit is contained in:
Brian Martin 2019-12-30 15:53:40 -05:00
parent b604a4d214
commit 5219ab06ab
2 changed files with 55 additions and 11 deletions

View file

@ -309,11 +309,6 @@ class ConfServer:
async def restart_MQTT(self):
mqttserver = bumper.mqtt_server.broker
for sess in list(mqttserver._sessions):
sessobj = mqttserver._sessions[sess][1]
await sessobj.writer.close()
mqttserver.delete_session(sess)
await bumper.mqtt_server.broker.shutdown()
while not bumper.mqtt_server.broker.transitions.state == "stopped":
await asyncio.sleep(0.1)

View file

@ -56,16 +56,65 @@ def test_get_milli_time():
)
# Comment out test_base until api changes are complete
""" async def test_base(aiohttp_client):
async def test_base(aiohttp_client):
remove_existing_db()
bumper.db = "tests/tmp.db" # Set db location for testing
client = await aiohttp_client(create_app)
# Start MQTT
mqtt_address = ("127.0.0.1", 8883)
mqtt_server = bumper.MQTTServer(mqtt_address)
bumper.mqtt_server = mqtt_server
await mqtt_server.broker_coro()
# Start Helperbot
mqtt_helperbot = bumper.MQTTHelperBot(mqtt_address)
bumper.mqtt_helperbot = mqtt_helperbot
await mqtt_helperbot.start_helper_bot()
client = await aiohttp_client(create_app)
resp = await client.get("/")
assert resp.status == 200
text = await resp.text()
assert "Bumper!" in text """
assert resp.status == 200
mqtt_helperbot.Client.disconnect()
await mqtt_server.broker.shutdown()
async def test_restartService(aiohttp_client):
remove_existing_db()
bumper.db = "tests/tmp.db" # Set db location for testing
# Start MQTT
mqtt_address = ("127.0.0.1", 8883)
mqtt_server = bumper.MQTTServer(mqtt_address)
bumper.mqtt_server = mqtt_server
await mqtt_server.broker_coro()
# Start XMPP
xmpp_address = ("127.0.0.1", 5223)
xmpp_server = bumper.XMPPServer(xmpp_address)
bumper.xmpp_server = xmpp_server
await xmpp_server.start_async_server()
# Start Helperbot
mqtt_helperbot = bumper.MQTTHelperBot(mqtt_address)
bumper.mqtt_helperbot = mqtt_helperbot
await mqtt_helperbot.start_helper_bot()
client = await aiohttp_client(create_app)
resp = await client.get("/restart_Helperbot")
assert resp.status == 200
resp = await client.get("/restart_MQTTServer")
assert resp.status == 200
resp = await client.get("/restart_XMPPServer")
assert resp.status == 200
mqtt_helperbot.Client.disconnect()
await mqtt_server.broker.shutdown()
xmpp_server.disconnect()
async def test_login(aiohttp_client):