crane/test_crane.py

60 lines
3.1 KiB
Python
Raw Normal View History

2022-10-17 17:18:17 -05:00
import unittest
import requests
2022-10-28 01:44:29 -05:00
from tomllib import load
2022-10-18 14:14:53 -05:00
from cclient import c_auth, c_get_containers, c_start_container, c_stop_container
2022-10-21 12:48:19 -05:00
from cprocess import build_cont_list, process_cont_list, build_full_cont_list, process_cont_status
unittest.TestLoader.sortTestMethodsUsing = None
2022-10-17 17:18:17 -05:00
class TestCrane(unittest.TestCase):
def setUp(self):
2022-10-28 01:44:29 -05:00
with open('./config.toml', 'rb') as c:
2022-10-17 17:18:17 -05:00
self.config = load(c)
2022-10-28 01:44:29 -05:00
self.host = self.config["portainer"]["host"]
self.port = self.config["portainer"]["port"]
self.username = self.config["portainer"]["username"]
self.password = self.config["portainer"]["password"]
self.endpoint = self.config["portainer"]["endpoint"]
2022-10-21 12:48:19 -05:00
self.cid = 'aa5b217ca6217fd9d268396039da69ea9e4a5aff381b3dceb71edb5a1f4d429d'
2022-10-17 17:18:17 -05:00
self.req_obj = requests
2022-10-18 14:14:53 -05:00
self.hypercare_containers = ['hello-world']
2022-10-17 17:18:17 -05:00
self.jwt = c_auth(self.req_obj, self.host, self.port, self.username, self.password)
2022-10-21 12:48:19 -05:00
self.cont_obj = c_get_containers(self.req_obj, self.host, self.port, self.jwt, self.endpoint)
def test_c_auth(self):
2022-10-17 17:18:17 -05:00
self.assertTrue(self.jwt, "No JWT returned by cauth.")
def test_c_get_containers(self):
self.assertTrue(self.cont_obj, "No cont object returned by c_get_containers.")
2022-10-21 12:48:19 -05:00
def test_a_is_hypercare_container_status(self):
self.cont_full_list = build_full_cont_list(self.cont_obj, self.hypercare_containers)
self.process_cont_status_response = process_cont_status(self.cont_full_list)
if self.process_cont_status_response == 0:
c_stop_container(self.req_obj, self.host, self.port, self.jwt, self.endpoint, self.cid)
2022-10-17 17:18:17 -05:00
def test_build_cont_list(self):
2022-10-18 14:14:53 -05:00
self.cont_list = build_cont_list(self.cont_obj, self.hypercare_containers)
2022-10-21 12:48:19 -05:00
self.assertTrue(self.cont_list, "No cont_list returned by build_cont_list. Does the test container exist?")
2022-10-17 17:18:17 -05:00
def test_c_start_container(self):
self.c_start_container_response = c_start_container(self.req_obj, self.host, self.port, self.jwt, self.endpoint, self.cid)
2022-10-21 12:48:19 -05:00
# print(self.c_start_container_response)
2022-10-17 17:18:17 -05:00
self.assertTrue(self.c_start_container_response, "No c_start_container_resonse returned by c_start_container.")
# 204 success 304 already on
2022-10-18 14:14:53 -05:00
def test_c_stop_container(self):
self.c_stop_container_response = c_stop_container(self.req_obj, self.host, self.port, self.jwt, self.endpoint, self.cid)
2022-10-21 12:48:19 -05:00
# print(self.c_stop_container_response)
2022-10-18 14:14:53 -05:00
self.assertTrue(self.c_stop_container_response, "No c_start_container_resonse returned by c_start_container.")
2022-10-21 12:48:19 -05:00
def test_process_cont_list(self):
self.cont_list = build_cont_list(self.cont_obj, self.hypercare_containers)
self.process_cont_list_response = process_cont_list(self.cont_list, c_start_container, self.req_obj, self.host, self.port, self.jwt, self.endpoint)
self.assertTrue(self.process_cont_list_response, "No c_start_container_resonse returned by c_start_container.")
def test_z_tear_down(self):
c_stop_container(self.req_obj, self.host, self.port, self.jwt, self.endpoint, self.cid)
2022-10-17 17:18:17 -05:00
if __name__ == '__main__':
unittest.main()