This commit is contained in:
Tim Bentley 2020-06-21 08:57:12 +00:00
parent 34a22984ff
commit 26cbcb96b1
13 changed files with 31 additions and 15 deletions

6
.gitlab-ci.yml Normal file
View File

@ -0,0 +1,6 @@
lint-python:
stage: test
image: python:latest
script:
- pip install tox flake8
- flake8

3
requirements.txt Normal file
View File

@ -0,0 +1,3 @@
colorama==0.4.1
websocket-client==0.56.0

3
setup.cfg Normal file
View File

@ -0,0 +1,3 @@
[flake8]
max-line-length = 120
ignore = E402,W503,W504,D

View File

@ -40,3 +40,7 @@ def print_warn(text: str):
def print_info(text: str): def print_info(text: str):
print(Fore.MAGENTA + '[!] = ' + text) print(Fore.MAGENTA + '[!] = ' + text)
def print_debug(text: str):
print(Fore.CYAN + '[#] = ' + text)

View File

@ -28,8 +28,8 @@ import websocket
from websocket import create_connection from websocket import create_connection
from test_api.apitest.constants import BookNames from test_api.apitest.constants import BookNames
from test_api.apitest.logger import print_text, print_error, print_ok, print_info from test_api.apitest.logger import print_text, print_error, print_ok, print_info
# from test_api.apitest.logger import print_debug
class RunTestsController(object): class RunTestsController(object):
@ -61,7 +61,7 @@ class RunTestsController(object):
print_error("Could not connect to WS! Exiting.") print_error("Could not connect to WS! Exiting.")
def on_message(self, message: str) -> None: def on_message(self, message: str) -> None:
print_info("Message returned") # print_debug("Message returned")
self.result_stage = message self.result_stage = message
self.compare_stage() self.compare_stage()
self.received = True self.received = True
@ -128,10 +128,10 @@ class RunTestsController(object):
print_ok('Running media test script') print_ok('Running media test script')
if self.load_and_check_sockets(True): if self.load_and_check_sockets(True):
clear_controllers(self) clear_controllers(self)
#search_and_live(self, 'songs', 1) # search_and_live(self, 'songs', 1)
#media_play(self) # media_play(self)
#human_delay() # human_delay()
#clear_controllers(self) # clear_controllers(self)
search_and_live(self, 'media', 1) search_and_live(self, 'media', 1)
media_play(self) media_play(self)
human_delay(5) human_delay(5)
@ -256,7 +256,7 @@ def search_and_live(rtc: RunTestsController, plugin: str, count: int) -> None:
random_service = [random.randint(1, limit) for itr in range(count)] random_service = [random.randint(1, limit) for itr in range(count)]
for pos in random_service: for pos in random_service:
item = items[pos - 1] item = items[pos - 1]
ret = requests.post(base_url + f'live', json=dict(id=item[0])) ret = requests.post(base_url + 'live', json=dict(id=item[0]))
assert ret.status_code == 204, f'{ret.status_code} returned from add' assert ret.status_code == 204, f'{ret.status_code} returned from add'
human_delay() human_delay()
@ -275,7 +275,7 @@ def search_and_add(rtc: RunTestsController, plugin: str, count: int) -> None:
assert ret.status_code == 200, f'{ret.status_code} returned from searcg' assert ret.status_code == 200, f'{ret.status_code} returned from searcg'
items = json.loads(ret.text) items = json.loads(ret.text)
if items: if items:
ret = requests.post(base_url + f'add', json=dict(id=items[0][0])) ret = requests.post(base_url + 'add', json=dict(id=items[0][0]))
assert ret.status_code == 204, f'{ret.status_code} returned from add' assert ret.status_code == 204, f'{ret.status_code} returned from add'
human_delay() human_delay()
else: else:
@ -297,7 +297,7 @@ def search_and_add(rtc: RunTestsController, plugin: str, count: int) -> None:
random_service = [random.randint(1, limit) for itr in range(count)] random_service = [random.randint(1, limit) for itr in range(count)]
for pos in random_service: for pos in random_service:
item = items[pos - 1] item = items[pos - 1]
ret = requests.post(base_url + f'add', json=dict(id=item[0])) ret = requests.post(base_url + 'add', json=dict(id=item[0]))
assert ret.status_code == 204, f'{ret.status_code} returned from add' assert ret.status_code == 204, f'{ret.status_code} returned from add'
human_delay() human_delay()
@ -319,13 +319,13 @@ def live_item(rtc: RunTestsController, plugin: str) -> None:
print_text(f'test_live_item - {plugin}') print_text(f'test_live_item - {plugin}')
base_url = f'http://{rtc.address}:{rtc.http_port}/api/v2/' base_url = f'http://{rtc.address}:{rtc.http_port}/api/v2/'
ret = requests.get(base_url + 'controller/live-item') ret = requests.get(base_url + 'controller/live-item')
assert ret.status_code == 200 assert ret.status_code == 200, f'{ret.status_code} returned from live_item'
i = 0 i = 0
for _ in json.loads(ret.text): for _ in json.loads(ret.text):
ret = requests.post(base_url + 'controller/show', json=dict(id=i)) ret = requests.post(base_url + 'controller/show', json=dict(id=i))
i += 1 i += 1
human_delay() human_delay()
assert ret.status_code == 204 assert ret.status_code == 204, f'{ret.status_code} returned from show'
if plugin in {'image'}: if plugin in {'image'}:
check_websocket_changes(rtc, 0, 0) check_websocket_changes(rtc, 0, 0)
else: else:

View File

@ -43,7 +43,7 @@ def start() -> None:
rtc = RunTestsController(op_address, op_http_port, op_ws_port) rtc = RunTestsController(op_address, op_http_port, op_ws_port)
rtc.connect() rtc.connect()
rtc.marshal_full() rtc.marshal_full()
#nrtc.marshal_media() # nrtc.marshal_media()
print_text('Finished running tests') print_text('Finished running tests')