rename confserver to webserver

This commit is contained in:
Robert Resch 2022-03-06 19:20:10 +01:00
parent be21b8bc72
commit 2f893f17ea
7 changed files with 137 additions and 141 deletions

View file

@ -4,10 +4,10 @@ import os
import socket import socket
import sys import sys
from bumper.confserver import ConfServer, WebserverBinding
from bumper.db import revoke_expired_oauths, revoke_expired_tokens from bumper.db import revoke_expired_oauths, revoke_expired_tokens
from bumper.mqttserver import MQTTHelperBot, MQTTServer from bumper.mqttserver import MQTTHelperBot, MQTTServer
from bumper.util import get_logger, log_to_stdout from bumper.util import get_logger, log_to_stdout
from bumper.web.server import WebServer, WebserverBinding
from bumper.xmppserver import XMPPServer from bumper.xmppserver import XMPPServer
@ -51,7 +51,7 @@ oauth_validity_days = 15
mqtt_server: MQTTServer mqtt_server: MQTTServer
mqtt_helperbot: MQTTHelperBot mqtt_helperbot: MQTTHelperBot
conf_server: ConfServer web_server: WebServer
xmpp_server: XMPPServer xmpp_server: XMPPServer
shutting_down = False shutting_down = False
@ -59,11 +59,11 @@ shutting_down = False
bumperlog = get_logger("bumper") bumperlog = get_logger("bumper")
logging.getLogger("asyncio").setLevel(logging.CRITICAL + 1) # Ignore this logger logging.getLogger("asyncio").setLevel(logging.CRITICAL + 1) # Ignore this logger
conf_server_https_port = os.environ.get("WEB_SERVER_HTTPS_PORT") or 443 web_server_https_port = os.environ.get("WEB_SERVER_HTTPS_PORT") or 443
mqtt_listen_port = 8883 mqtt_listen_port = 8883
xmpp_listen_port = 5223 xmpp_listen_port = 5223
conf_server_bindings = [ web_server_bindings = [
WebserverBinding(bumper_listen, conf_server_https_port, True), WebserverBinding(bumper_listen, web_server_https_port, True),
WebserverBinding(bumper_listen, 8007, False), WebserverBinding(bumper_listen, 8007, False),
] ]
@ -104,8 +104,8 @@ async def start():
mqtt_server = MQTTServer(bumper_listen, mqtt_listen_port) mqtt_server = MQTTServer(bumper_listen, mqtt_listen_port)
global mqtt_helperbot global mqtt_helperbot
mqtt_helperbot = MQTTHelperBot(bumper_listen, mqtt_listen_port) mqtt_helperbot = MQTTHelperBot(bumper_listen, mqtt_listen_port)
global conf_server global web_server
conf_server = ConfServer(conf_server_bindings) web_server = WebServer(web_server_bindings)
global xmpp_server global xmpp_server
xmpp_server = XMPPServer((bumper_listen, xmpp_listen_port)) xmpp_server = XMPPServer((bumper_listen, xmpp_listen_port))
@ -124,7 +124,7 @@ async def start():
await asyncio.sleep(0.1) await asyncio.sleep(0.1)
# Start web servers # Start web servers
await conf_server.start() await web_server.start()
# Start maintenance # Start maintenance
while not shutting_down: while not shutting_down:
@ -141,7 +141,7 @@ async def shutdown():
try: try:
bumperlog.info("Shutting down") bumperlog.info("Shutting down")
await conf_server.shutdown() await web_server.shutdown()
if mqtt_server.state == "started": if mqtt_server.state == "started":
await mqtt_server.shutdown() await mqtt_server.shutdown()
elif mqtt_server.state == "starting": elif mqtt_server.state == "starting":

View file

@ -16,7 +16,15 @@ from cachetools import TTLCache
from passlib.apps import custom_app_context as pwd_context from passlib.apps import custom_app_context as pwd_context
import bumper import bumper
import bumper.db from bumper.db import (
bot_add,
bot_get,
bot_set_mqtt,
check_authcode,
client_add,
client_get,
client_set_mqtt,
)
from bumper.util import get_logger from bumper.util import get_logger
mqttserverlog = get_logger("mqttserver") mqttserverlog = get_logger("mqttserver")
@ -297,7 +305,7 @@ class BumperMQTTServerPlugin:
"ecouser" in didsplit[1] or "bumper" in didsplit[1] "ecouser" in didsplit[1] or "bumper" in didsplit[1]
): ):
tmpbotdetail = str(didsplit[1]).split("/") tmpbotdetail = str(didsplit[1]).split("/")
db.bot_add( bot_add(
username, username,
didsplit[0], didsplit[0],
tmpbotdetail[0], tmpbotdetail[0],
@ -322,8 +330,8 @@ class BumperMQTTServerPlugin:
"Bumper Authentication Success - Helperbot: %s", client_id "Bumper Authentication Success - Helperbot: %s", client_id
) )
return True return True
if db.check_authcode(didsplit[0], password) or not bumper.use_auth: if check_authcode(didsplit[0], password) or not bumper.use_auth:
db.client_add(userid, realm, resource) client_add(userid, realm, resource)
mqttserverlog.info( mqttserverlog.info(
"Bumper Authentication Success - Client - Username: %s - ClientID: %s", "Bumper Authentication Success - Client - Username: %s - ClientID: %s",
username, username,
@ -398,15 +406,15 @@ class BumperMQTTServerPlugin:
) -> None: ) -> None:
didsplit = str(client_id).split("@") didsplit = str(client_id).split("@")
bot = db.bot_get(didsplit[0]) bot = bot_get(didsplit[0])
if bot: if bot:
db.bot_set_mqtt(bot["did"], connected) bot_set_mqtt(bot["did"], connected)
return return
clientresource = didsplit[1].split("/")[1] clientresource = didsplit[1].split("/")[1]
client = db.client_get(clientresource) client = client_get(clientresource)
if client: if client:
db.client_set_mqtt(client["resource"], connected) client_set_mqtt(client["resource"], connected)
async def on_broker_message_received( # pylint: disable=no-self-use async def on_broker_message_received( # pylint: disable=no-self-use
self, message: IncomingApplicationMessage, **_: dict[str, Any] self, message: IncomingApplicationMessage, **_: dict[str, Any]

View file

@ -2,7 +2,6 @@
import asyncio import asyncio
import dataclasses import dataclasses
import inspect
import json import json
import logging import logging
import os import os
@ -22,10 +21,9 @@ from aiohttp.web_request import Request
from aiohttp.web_response import Response, StreamResponse from aiohttp.web_response import Response, StreamResponse
import bumper import bumper
from bumper.db import bot_get, bot_remove, client_get, client_remove, db_get
from .db import bot_get, bot_remove, client_get, client_remove, db_get from bumper.util import get_logger
from .util import get_logger from bumper.web.plugins import add_plugins
from .web.plugins import add_plugins
class _aiohttp_filter(logging.Filter): class _aiohttp_filter(logging.Filter):
@ -55,7 +53,7 @@ class WebserverBinding:
use_ssl: bool use_ssl: bool
class ConfServer: class WebServer:
"""Web server.""" """Web server."""
_EXCLUDE_FROM_LOGGING = ["base", "remove-bot", "remove-client", "restart-service"] _EXCLUDE_FROM_LOGGING = ["base", "remove-bot", "remove-client", "restart-service"]

View file

@ -1,3 +1,3 @@
HOST = "127.0.0.1" HOST = "127.0.0.1"
MQTT_PORT = 8883 MQTT_PORT = 8883
CONF_SERVER_PORT = 11111 WEBSERVER_PORT = 11111

View file

@ -5,7 +5,7 @@ from amqtt.client import MQTTClient
import bumper import bumper
from bumper import MQTTServer, WebserverBinding from bumper import MQTTServer, WebserverBinding
from tests import CONF_SERVER_PORT, HOST, MQTT_PORT from tests import HOST, MQTT_PORT, WEBSERVER_PORT
@pytest.fixture @pytest.fixture
@ -37,9 +37,9 @@ async def mqtt_client():
@pytest.fixture @pytest.fixture
async def conf_server_client(aiohttp_client): async def webserver_client(aiohttp_client):
confserver = bumper.ConfServer(WebserverBinding(HOST, CONF_SERVER_PORT, False)) webserver = bumper.WebServer(WebserverBinding(HOST, WEBSERVER_PORT, False))
client = await aiohttp_client(confserver._app) client = await aiohttp_client(webserver._app)
yield client yield client

0
tests/web/__init__.py Normal file
View file

View file

@ -6,13 +6,13 @@ from unittest import mock
import pytest import pytest
import bumper import bumper
from bumper import ConfServer, MQTTHelperBot, WebserverBinding, XMPPServer, db from bumper import MQTTHelperBot, WebServer, WebserverBinding, XMPPServer, db
from bumper.models import ERR_TOKEN_INVALID, RETURN_API_SUCCESS from bumper.models import ERR_TOKEN_INVALID, RETURN_API_SUCCESS
from tests import CONF_SERVER_PORT, HOST, MQTT_PORT from tests import HOST, MQTT_PORT, WEBSERVER_PORT
def create_confserver(): def create_webserver():
return ConfServer(WebserverBinding(HOST, CONF_SERVER_PORT, False)) return WebServer(WebserverBinding(HOST, WEBSERVER_PORT, False))
def async_return(result): def async_return(result):
@ -26,18 +26,18 @@ def remove_existing_db():
os.remove("tests/tmp.db") # Remove existing db os.remove("tests/tmp.db") # Remove existing db
async def test_confserver_ssl(): async def test_webserver_ssl():
conf_server = ConfServer(WebserverBinding(HOST, CONF_SERVER_PORT, True)) webserver = WebServer(WebserverBinding(HOST, WEBSERVER_PORT, True))
await conf_server.start() await webserver.start()
async def test_confserver_no_ssl(): async def test_webserver_no_ssl():
conf_server = ConfServer(WebserverBinding(HOST, 11112, False)) webserver = WebServer(WebserverBinding(HOST, 11112, False))
await conf_server.start() await webserver.start()
@pytest.mark.usefixtures("mqtt_server") @pytest.mark.usefixtures("mqtt_server")
async def test_base(conf_server_client): async def test_base(webserver_client):
remove_existing_db() remove_existing_db()
# Start XMPP # Start XMPP
@ -51,7 +51,7 @@ async def test_base(conf_server_client):
bumper.mqtt_helperbot = mqtt_helperbot bumper.mqtt_helperbot = mqtt_helperbot
await mqtt_helperbot.start() await mqtt_helperbot.start()
resp = await conf_server_client.get("/") resp = await webserver_client.get("/")
assert resp.status == 200 assert resp.status == 200
await mqtt_helperbot.disconnect() await mqtt_helperbot.disconnect()
@ -60,7 +60,7 @@ async def test_base(conf_server_client):
@pytest.mark.usefixtures("mqtt_server") @pytest.mark.usefixtures("mqtt_server")
async def test_restartService(conf_server_client): async def test_restartService(webserver_client):
remove_existing_db() remove_existing_db()
# Start XMPP # Start XMPP
@ -74,13 +74,13 @@ async def test_restartService(conf_server_client):
bumper.mqtt_helperbot = mqtt_helperbot bumper.mqtt_helperbot = mqtt_helperbot
await mqtt_helperbot.start() await mqtt_helperbot.start()
resp = await conf_server_client.get("/restart_Helperbot") resp = await webserver_client.get("/restart_Helperbot")
assert resp.status == 200 assert resp.status == 200
resp = await conf_server_client.get("/restart_MQTTServer") resp = await webserver_client.get("/restart_MQTTServer")
assert resp.status == 200 assert resp.status == 200
resp = await conf_server_client.get("/restart_XMPPServer") resp = await webserver_client.get("/restart_XMPPServer")
assert resp.status == 200 assert resp.status == 200
await mqtt_helperbot.disconnect() await mqtt_helperbot.disconnect()
@ -88,23 +88,21 @@ async def test_restartService(conf_server_client):
xmpp_server.disconnect() xmpp_server.disconnect()
async def test_RemoveBot(conf_server_client): async def test_RemoveBot(webserver_client):
resp = await conf_server_client.get("/bot/remove/test_did") resp = await webserver_client.get("/bot/remove/test_did")
assert resp.status == 200 assert resp.status == 200
async def test_RemoveClient(conf_server_client): async def test_RemoveClient(webserver_client):
resp = await conf_server_client.get("/client/remove/test_resource") resp = await webserver_client.get("/client/remove/test_resource")
assert resp.status == 200 assert resp.status == 200
async def test_login(conf_server_client): async def test_login(webserver_client):
remove_existing_db() remove_existing_db()
# Test without user # Test without user
resp = await conf_server_client.get( resp = await webserver_client.get("/v1/private/us/en/dev_1234/ios/1/0/0/user/login")
"/v1/private/us/en/dev_1234/ios/1/0/0/user/login"
)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -116,7 +114,7 @@ async def test_login(conf_server_client):
remove_existing_db() remove_existing_db()
# Test global_e without user # Test global_e without user
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/user/login" "/v1/private/us/en/dev_1234/global_e/1/0/0/user/login"
) )
assert resp.status == 200 assert resp.status == 200
@ -129,9 +127,7 @@ async def test_login(conf_server_client):
# Add a user to db and test with existing users # Add a user to db and test with existing users
db.user_add("testuser") db.user_add("testuser")
resp = await conf_server_client.get( resp = await webserver_client.get("/v1/private/us/en/dev_1234/ios/1/0/0/user/login")
"/v1/private/us/en/dev_1234/ios/1/0/0/user/login"
)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -142,9 +138,7 @@ async def test_login(conf_server_client):
# Add a bot to db that will be added to user # Add a bot to db that will be added to user
db.bot_add("sn_123", "did_123", "dev_123", "res_123", "com_123") db.bot_add("sn_123", "did_123", "dev_123", "res_123", "com_123")
resp = await conf_server_client.get( resp = await webserver_client.get("/v1/private/us/en/dev_1234/ios/1/0/0/user/login")
"/v1/private/us/en/dev_1234/ios/1/0/0/user/login"
)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -163,9 +157,7 @@ async def test_login(conf_server_client):
} }
db.bot_full_upsert(newbot) db.bot_full_upsert(newbot)
resp = await conf_server_client.get( resp = await webserver_client.get("/v1/private/us/en/dev_1234/ios/1/0/0/user/login")
"/v1/private/us/en/dev_1234/ios/1/0/0/user/login"
)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -175,14 +167,14 @@ async def test_login(conf_server_client):
assert "username" in jsonresp["data"] assert "username" in jsonresp["data"]
async def test_logout(conf_server_client): async def test_logout(webserver_client):
remove_existing_db() remove_existing_db()
# Add a token to user and test # Add a token to user and test
db.user_add("testuser") db.user_add("testuser")
db.user_add_device("testuser", "dev_1234") db.user_add_device("testuser", "dev_1234")
db.user_add_token("testuser", "token_1234") db.user_add_token("testuser", "token_1234")
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/user/logout?accessToken={}".format( "/v1/private/us/en/dev_1234/ios/1/0/0/user/logout?accessToken={}".format(
"token_1234" "token_1234"
) )
@ -194,11 +186,11 @@ async def test_logout(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_checkLogin(conf_server_client): async def test_checkLogin(webserver_client):
remove_existing_db() remove_existing_db()
# Test without token # Test without token
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/user/checkLogin?accessToken={}".format( "/v1/private/us/en/dev_1234/ios/1/0/0/user/checkLogin?accessToken={}".format(
None None
) )
@ -214,7 +206,7 @@ async def test_checkLogin(conf_server_client):
# Add a user to db and test with existing users # Add a user to db and test with existing users
db.user_add("testuser") db.user_add("testuser")
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/user/checkLogin?accessToken={}".format( "/v1/private/us/en/dev_1234/ios/1/0/0/user/checkLogin?accessToken={}".format(
None None
) )
@ -230,7 +222,7 @@ async def test_checkLogin(conf_server_client):
# Test again using global_e app # Test again using global_e app
db.user_add("testuser") db.user_add("testuser")
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/user/checkLogin?accessToken={}".format( "/v1/private/us/en/dev_1234/global_e/1/0/0/user/checkLogin?accessToken={}".format(
None None
) )
@ -251,7 +243,7 @@ async def test_checkLogin(conf_server_client):
db.user_add("testuser") db.user_add("testuser")
db.user_add_device("testuser", "dev_1234") db.user_add_device("testuser", "dev_1234")
db.user_add_token("testuser", "token_1234") db.user_add_token("testuser", "token_1234")
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/user/checkLogin?accessToken={}".format( "/v1/private/us/en/dev_1234/ios/1/0/0/user/checkLogin?accessToken={}".format(
"token_1234" "token_1234"
) )
@ -267,7 +259,7 @@ async def test_checkLogin(conf_server_client):
# Test again using global_e app # Test again using global_e app
db.user_add("testuser") db.user_add("testuser")
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/user/checkLogin?accessToken={}".format( "/v1/private/us/en/dev_1234/global_e/1/0/0/user/checkLogin?accessToken={}".format(
"token_1234" "token_1234"
) )
@ -282,11 +274,11 @@ async def test_checkLogin(conf_server_client):
assert "username" in jsonresp["data"] assert "username" in jsonresp["data"]
async def test_getAuthCode(conf_server_client): async def test_getAuthCode(webserver_client):
remove_existing_db() remove_existing_db()
# Test without user or token # Test without user or token
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/user/getAuthCode?uid={}&accessToken={}".format( "/v1/private/us/en/dev_1234/ios/1/0/0/user/getAuthCode?uid={}&accessToken={}".format(
None, None None, None
) )
@ -297,7 +289,7 @@ async def test_getAuthCode(conf_server_client):
assert jsonresp["code"] == ERR_TOKEN_INVALID assert jsonresp["code"] == ERR_TOKEN_INVALID
# Test as global_e # Test as global_e
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/global/auth/getAuthCode?uid={}&deviceId={}".format(None, "dev_1234") "/v1/global/auth/getAuthCode?uid={}&deviceId={}".format(None, "dev_1234")
) )
assert resp.status == 200 assert resp.status == 200
@ -309,7 +301,7 @@ async def test_getAuthCode(conf_server_client):
db.user_add("testuser") db.user_add("testuser")
db.user_add_device("testuser", "dev_1234") db.user_add_device("testuser", "dev_1234")
db.user_add_token("testuser", "token_1234") db.user_add_token("testuser", "token_1234")
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/user/getAuthCode?uid={}&accessToken={}".format( "/v1/private/us/en/dev_1234/ios/1/0/0/user/getAuthCode?uid={}&accessToken={}".format(
"testuser", "token_1234" "testuser", "token_1234"
) )
@ -322,7 +314,7 @@ async def test_getAuthCode(conf_server_client):
assert "ecovacsUid" in jsonresp["data"] assert "ecovacsUid" in jsonresp["data"]
# The above should have added an authcode to token, try again to test with existing authcode # The above should have added an authcode to token, try again to test with existing authcode
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/user/getAuthCode?uid={}&accessToken={}".format( "/v1/private/us/en/dev_1234/ios/1/0/0/user/getAuthCode?uid={}&accessToken={}".format(
"testuser", "token_1234" "testuser", "token_1234"
) )
@ -335,10 +327,10 @@ async def test_getAuthCode(conf_server_client):
assert "ecovacsUid" in jsonresp["data"] assert "ecovacsUid" in jsonresp["data"]
async def test_checkAgreement(conf_server_client): async def test_checkAgreement(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/user/checkAgreement" "/v1/private/us/en/dev_1234/ios/1/0/0/user/checkAgreement"
) )
assert resp.status == 200 assert resp.status == 200
@ -347,7 +339,7 @@ async def test_checkAgreement(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
# Test as global_e # Test as global_e
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/user/checkAgreement" "/v1/private/us/en/dev_1234/global_e/1/0/0/user/checkAgreement"
) )
assert resp.status == 200 assert resp.status == 200
@ -356,10 +348,10 @@ async def test_checkAgreement(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_homePageAlert(conf_server_client): async def test_homePageAlert(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/campaign/homePageAlert" "/v1/private/us/en/dev_1234/ios/1/0/0/campaign/homePageAlert"
) )
assert resp.status == 200 assert resp.status == 200
@ -368,10 +360,10 @@ async def test_homePageAlert(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_checkVersion(conf_server_client): async def test_checkVersion(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/ios/1/0/0/common/checkVersion" "/v1/private/us/en/dev_1234/ios/1/0/0/common/checkVersion"
) )
assert resp.status == 200 assert resp.status == 200
@ -380,10 +372,10 @@ async def test_checkVersion(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_checkAppVersion(conf_server_client): async def test_checkAppVersion(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/common/checkAPPVersion" "/v1/private/us/en/dev_1234/global_e/1/0/0/common/checkAPPVersion"
) )
assert resp.status == 200 assert resp.status == 200
@ -392,9 +384,9 @@ async def test_checkAppVersion(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_uploadDeviceInfo(conf_server_client): async def test_uploadDeviceInfo(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/common/uploadDeviceInfo" "/v1/private/us/en/dev_1234/global_e/1/0/0/common/uploadDeviceInfo"
) )
assert resp.status == 200 assert resp.status == 200
@ -403,10 +395,10 @@ async def test_uploadDeviceInfo(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_getAdByPositionType(conf_server_client): async def test_getAdByPositionType(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/ad/getAdByPositionType" "/v1/private/us/en/dev_1234/global_e/1/0/0/ad/getAdByPositionType"
) )
assert resp.status == 200 assert resp.status == 200
@ -415,10 +407,10 @@ async def test_getAdByPositionType(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_getBootScreen(conf_server_client): async def test_getBootScreen(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/ad/getBootScreen" "/v1/private/us/en/dev_1234/global_e/1/0/0/ad/getBootScreen"
) )
assert resp.status == 200 assert resp.status == 200
@ -427,10 +419,10 @@ async def test_getBootScreen(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_hasUnreadMsg(conf_server_client): async def test_hasUnreadMsg(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/message/hasUnreadMsg" "/v1/private/us/en/dev_1234/global_e/1/0/0/message/hasUnreadMsg"
) )
assert resp.status == 200 assert resp.status == 200
@ -439,10 +431,10 @@ async def test_hasUnreadMsg(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_getMsgList(conf_server_client): async def test_getMsgList(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/message/getMsgList" "/v1/private/us/en/dev_1234/global_e/1/0/0/message/getMsgList"
) )
assert resp.status == 200 assert resp.status == 200
@ -451,10 +443,10 @@ async def test_getMsgList(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_getSystemReminder(conf_server_client): async def test_getSystemReminder(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/common/getSystemReminder" "/v1/private/us/en/dev_1234/global_e/1/0/0/common/getSystemReminder"
) )
assert resp.status == 200 assert resp.status == 200
@ -463,10 +455,10 @@ async def test_getSystemReminder(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_getCnWapShopConfig(conf_server_client): async def test_getCnWapShopConfig(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/shop/getCnWapShopConfig" "/v1/private/us/en/dev_1234/global_e/1/0/0/shop/getCnWapShopConfig"
) )
assert resp.status == 200 assert resp.status == 200
@ -475,7 +467,7 @@ async def test_getCnWapShopConfig(conf_server_client):
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
async def test_neng_hasUnreadMessage(conf_server_client): async def test_neng_hasUnreadMessage(webserver_client):
remove_existing_db() remove_existing_db()
postbody = { postbody = {
@ -488,40 +480,38 @@ async def test_neng_hasUnreadMessage(conf_server_client):
}, },
"count": 20, "count": 20,
} }
resp = await conf_server_client.post( resp = await webserver_client.post("/api/neng/message/hasUnreadMsg", json=postbody)
"/api/neng/message/hasUnreadMsg", json=postbody
)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
assert jsonresp["code"] == 0 assert jsonresp["code"] == 0
async def test_getProductIotMap(conf_server_client): async def test_getProductIotMap(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.post("/api/pim/product/getProductIotMap") resp = await webserver_client.post("/api/pim/product/getProductIotMap")
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
assert jsonresp["code"] == RETURN_API_SUCCESS assert jsonresp["code"] == RETURN_API_SUCCESS
# Test getPimFile # Test getPimFile
resp = await conf_server_client.get("/api/pim/file/get/123") resp = await webserver_client.get("/api/pim/file/get/123")
assert resp.status == 200 assert resp.status == 200
async def test_getUsersAPI(conf_server_client): async def test_getUsersAPI(webserver_client):
remove_existing_db() remove_existing_db()
resp = await conf_server_client.get("/api/users/user.do") resp = await webserver_client.get("/api/users/user.do")
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
assert jsonresp["result"] == "fail" assert jsonresp["result"] == "fail"
async def test_getUserAccountInfo(conf_server_client): async def test_getUserAccountInfo(webserver_client):
remove_existing_db() remove_existing_db()
db.user_add("testuser") db.user_add("testuser")
db.user_add_device("testuser", "dev_1234") db.user_add_device("testuser", "dev_1234")
@ -530,7 +520,7 @@ async def test_getUserAccountInfo(conf_server_client):
db.user_add_bot("testuser", "did_1234") db.user_add_bot("testuser", "did_1234")
db.bot_add("sn_1234", "did_1234", "class_1234", "res_1234", "com_1234") db.bot_add("sn_1234", "did_1234", "class_1234", "res_1234", "com_1234")
resp = await conf_server_client.get( resp = await webserver_client.get(
"/v1/private/us/en/dev_1234/global_e/1/0/0/user/getUserAccountInfo" "/v1/private/us/en/dev_1234/global_e/1/0/0/user/getUserAccountInfo"
) )
assert resp.status == 200 assert resp.status == 200
@ -541,12 +531,12 @@ async def test_getUserAccountInfo(conf_server_client):
assert jsonresp["data"]["userName"] == "fusername_testuser" assert jsonresp["data"]["userName"] == "fusername_testuser"
async def test_postUsersAPI(conf_server_client): async def test_postUsersAPI(webserver_client):
remove_existing_db() remove_existing_db()
# Test FindBest # Test FindBest
postbody = {"todo": "FindBest", "service": "EcoMsgNew"} postbody = {"todo": "FindBest", "service": "EcoMsgNew"}
resp = await conf_server_client.post("/api/users/user.do", json=postbody) resp = await webserver_client.post("/api/users/user.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -554,7 +544,7 @@ async def test_postUsersAPI(conf_server_client):
# Test EcoUpdate # Test EcoUpdate
postbody = {"todo": "FindBest", "service": "EcoUpdate"} postbody = {"todo": "FindBest", "service": "EcoUpdate"}
resp = await conf_server_client.post("/api/users/user.do", json=postbody) resp = await webserver_client.post("/api/users/user.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -577,7 +567,7 @@ async def test_postUsersAPI(conf_server_client):
"token": "auth_1234", "token": "auth_1234",
"userId": "testuser", "userId": "testuser",
} }
resp = await conf_server_client.post("/api/users/user.do", json=postbody) resp = await webserver_client.post("/api/users/user.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -593,7 +583,7 @@ async def test_postUsersAPI(conf_server_client):
"todo": "loginByItToken", "todo": "loginByItToken",
"token": "auth_1234", "token": "auth_1234",
} }
resp = await conf_server_client.post("/api/users/user.do", json=postbody) resp = await webserver_client.post("/api/users/user.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -609,7 +599,7 @@ async def test_postUsersAPI(conf_server_client):
"todo": "loginByItToken", "todo": "loginByItToken",
"token": "auth_1234", "token": "auth_1234",
} }
resp = await conf_server_client.post("/api/users/user.do", data=postbody) resp = await webserver_client.post("/api/users/user.do", data=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -627,7 +617,7 @@ async def test_postUsersAPI(conf_server_client):
"todo": "GetDeviceList", "todo": "GetDeviceList",
"userid": "testuser", "userid": "testuser",
} }
resp = await conf_server_client.post("/api/users/user.do", json=postbody) resp = await webserver_client.post("/api/users/user.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -646,7 +636,7 @@ async def test_postUsersAPI(conf_server_client):
"nick": "botnick", "nick": "botnick",
"did": "did_1234", "did": "did_1234",
} }
resp = await conf_server_client.post("/api/users/user.do", json=postbody) resp = await webserver_client.post("/api/users/user.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -665,7 +655,7 @@ async def test_postUsersAPI(conf_server_client):
"nick": "botnick", "nick": "botnick",
"did": "did_1234", "did": "did_1234",
} }
resp = await conf_server_client.post("/api/users/user.do", json=postbody) resp = await webserver_client.post("/api/users/user.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -683,14 +673,14 @@ async def test_postUsersAPI(conf_server_client):
"todo": "DeleteOneDevice", "todo": "DeleteOneDevice",
"did": "did_1234", "did": "did_1234",
} }
resp = await conf_server_client.post("/api/users/user.do", json=postbody) resp = await webserver_client.post("/api/users/user.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
assert jsonresp["result"] == "ok" assert jsonresp["result"] == "ok"
async def test_appsvr_api(conf_server_client): async def test_appsvr_api(webserver_client):
remove_existing_db() remove_existing_db()
# Test GetGlobalDeviceList # Test GetGlobalDeviceList
@ -711,7 +701,7 @@ async def test_appsvr_api(conf_server_client):
"todo": "GetGlobalDeviceList", "todo": "GetGlobalDeviceList",
"userid": "testuser", "userid": "testuser",
} }
resp = await conf_server_client.post("/api/appsvr/app.do", json=postbody) resp = await webserver_client.post("/api/appsvr/app.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
@ -720,18 +710,18 @@ async def test_appsvr_api(conf_server_client):
db.bot_add("sn_1234", "did_1234", "ls1ok3", "res_1234", "eco-ng") db.bot_add("sn_1234", "did_1234", "ls1ok3", "res_1234", "eco-ng")
# Test again with bot added # Test again with bot added
resp = await conf_server_client.post("/api/appsvr/app.do", json=postbody) resp = await webserver_client.post("/api/appsvr/app.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
assert jsonresp["ret"] == "ok" assert jsonresp["ret"] == "ok"
async def test_lg_logs(conf_server_client): async def test_lg_logs(webserver_client):
remove_existing_db() remove_existing_db()
db.bot_add("sn_1234", "did_1234", "ls1ok3", "res_1234", "eco-ng") db.bot_add("sn_1234", "did_1234", "ls1ok3", "res_1234", "eco-ng")
db.bot_set_mqtt("did_1234", True) db.bot_set_mqtt("did_1234", True)
confserver = create_confserver() confserver = create_webserver()
bumper.mqtt_helperbot = MQTTHelperBot(HOST, MQTT_PORT) bumper.mqtt_helperbot = MQTTHelperBot(HOST, MQTT_PORT)
# Test return get status # Test return get status
@ -757,19 +747,19 @@ async def test_lg_logs(conf_server_client):
"resource": "res_1234", "resource": "res_1234",
"td": "GetCleanLogs", "td": "GetCleanLogs",
} }
resp = await conf_server_client.post("/api/lg/log.do", json=postbody) resp = await webserver_client.post("/api/lg/log.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
jsonresp = json.loads(text) jsonresp = json.loads(text)
assert jsonresp["ret"] == "ok" assert jsonresp["ret"] == "ok"
async def test_postLookup(conf_server_client): async def test_postLookup(webserver_client):
remove_existing_db() remove_existing_db()
# Test FindBest # Test FindBest
postbody = {"todo": "FindBest", "service": "EcoMsgNew"} postbody = {"todo": "FindBest", "service": "EcoMsgNew"}
resp = await conf_server_client.post("/lookup.do", json=postbody) resp = await webserver_client.post("/lookup.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
@ -777,21 +767,21 @@ async def test_postLookup(conf_server_client):
# Test EcoUpdate # Test EcoUpdate
postbody = {"todo": "FindBest", "service": "EcoUpdate"} postbody = {"todo": "FindBest", "service": "EcoUpdate"}
resp = await conf_server_client.post("/lookup.do", json=postbody) resp = await webserver_client.post("/lookup.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
assert test_resp["result"] == "ok" assert test_resp["result"] == "ok"
async def test_devmgr(conf_server_client): async def test_devmgr(webserver_client):
remove_existing_db() remove_existing_db()
confserver = create_confserver() confserver = create_webserver()
bumper.mqtt_helperbot = MQTTHelperBot(HOST, MQTT_PORT) bumper.mqtt_helperbot = MQTTHelperBot(HOST, MQTT_PORT)
# Test PollSCResult # Test PollSCResult
postbody = {"td": "PollSCResult"} postbody = {"td": "PollSCResult"}
resp = await conf_server_client.post("/api/iot/devmanager.do", json=postbody) resp = await webserver_client.post("/api/iot/devmanager.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
@ -799,7 +789,7 @@ async def test_devmgr(conf_server_client):
# Test HasUnreadMsg # Test HasUnreadMsg
postbody = {"td": "HasUnreadMsg"} postbody = {"td": "HasUnreadMsg"}
resp = await conf_server_client.post("/api/iot/devmanager.do", json=postbody) resp = await webserver_client.post("/api/iot/devmanager.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
@ -820,7 +810,7 @@ async def test_devmgr(conf_server_client):
bumper.mqtt_helperbot.send_command = mock.MagicMock( bumper.mqtt_helperbot.send_command = mock.MagicMock(
return_value=async_return(command_getstatus_resp) return_value=async_return(command_getstatus_resp)
) )
resp = await conf_server_client.post("/api/iot/devmanager.do", json=postbody) resp = await webserver_client.post("/api/iot/devmanager.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
@ -831,21 +821,21 @@ async def test_devmgr(conf_server_client):
bumper.mqtt_helperbot.send_command = mock.MagicMock( bumper.mqtt_helperbot.send_command = mock.MagicMock(
return_value=async_return(command_timeout_resp) return_value=async_return(command_timeout_resp)
) )
resp = await conf_server_client.post("/api/iot/devmanager.do", json=postbody) resp = await webserver_client.post("/api/iot/devmanager.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
assert test_resp["ret"] == "fail" assert test_resp["ret"] == "fail"
async def test_dim_devmanager(conf_server_client): async def test_dim_devmanager(webserver_client):
remove_existing_db() remove_existing_db()
confserver = create_confserver() confserver = create_webserver()
bumper.mqtt_helperbot = MQTTHelperBot(HOST, MQTT_PORT) bumper.mqtt_helperbot = MQTTHelperBot(HOST, MQTT_PORT)
# Test PollSCResult # Test PollSCResult
postbody = {"td": "PollSCResult"} postbody = {"td": "PollSCResult"}
resp = await conf_server_client.post("/api/dim/devmanager.do", json=postbody) resp = await webserver_client.post("/api/dim/devmanager.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
@ -853,7 +843,7 @@ async def test_dim_devmanager(conf_server_client):
# Test HasUnreadMsg # Test HasUnreadMsg
postbody = {"td": "HasUnreadMsg"} postbody = {"td": "HasUnreadMsg"}
resp = await conf_server_client.post("/api/dim/devmanager.do", json=postbody) resp = await webserver_client.post("/api/dim/devmanager.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
@ -874,7 +864,7 @@ async def test_dim_devmanager(conf_server_client):
bumper.mqtt_helperbot.send_command = mock.MagicMock( bumper.mqtt_helperbot.send_command = mock.MagicMock(
return_value=async_return(command_getstatus_resp) return_value=async_return(command_getstatus_resp)
) )
resp = await conf_server_client.post("/api/dim/devmanager.do", json=postbody) resp = await webserver_client.post("/api/dim/devmanager.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
@ -885,7 +875,7 @@ async def test_dim_devmanager(conf_server_client):
bumper.mqtt_helperbot.send_command = mock.MagicMock( bumper.mqtt_helperbot.send_command = mock.MagicMock(
return_value=async_return(command_timeout_resp) return_value=async_return(command_timeout_resp)
) )
resp = await conf_server_client.post("/api/dim/devmanager.do", json=postbody) resp = await webserver_client.post("/api/dim/devmanager.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)
@ -897,7 +887,7 @@ async def test_dim_devmanager(conf_server_client):
bumper.mqtt_helperbot.send_command = mock.MagicMock( bumper.mqtt_helperbot.send_command = mock.MagicMock(
return_value=async_return(command_getstatus_resp) return_value=async_return(command_getstatus_resp)
) )
resp = await conf_server_client.post("/api/dim/devmanager.do", json=postbody) resp = await webserver_client.post("/api/dim/devmanager.do", json=postbody)
assert resp.status == 200 assert resp.status == 200
text = await resp.text() text = await resp.text()
test_resp = json.loads(text) test_resp = json.loads(text)