uptime-kuma-api/tests/test_proxy.py

61 lines
1.8 KiB
Python
Raw Permalink Normal View History

2022-08-02 23:47:56 +02:00
import unittest
2022-08-03 12:35:48 +02:00
from uptime_kuma_api import UptimeKumaException, ProxyProtocol
2022-08-03 12:35:48 +02:00
from uptime_kuma_test_case import UptimeKumaTestCase
2022-08-02 23:47:56 +02:00
class TestProxy(UptimeKumaTestCase):
def test_proxy(self):
# get empty list to make sure that future accesses will also work
self.api.get_proxies()
2022-08-02 23:47:56 +02:00
expected_proxy = {
"protocol": ProxyProtocol.HTTP,
2022-08-02 23:47:56 +02:00
"host": "127.0.0.1",
"port": 8080,
"auth": True,
"username": "username",
"password": "password",
"active": True,
"default": False
2022-08-02 23:47:56 +02:00
}
# add proxy
r = self.api.add_proxy(applyExisting=False, **expected_proxy)
2022-08-02 23:47:56 +02:00
self.assertEqual(r["msg"], "Saved")
proxy_id = r["id"]
# get proxy
proxy = self.api.get_proxy(proxy_id)
self.compare(proxy, expected_proxy)
# get proxies
proxies = self.api.get_proxies()
self.assertTrue(type(proxies[0]["protocol"]) == ProxyProtocol)
proxy = self.find_by_id(proxies, proxy_id)
self.assertIsNotNone(proxy)
self.compare(proxy, expected_proxy)
2022-08-02 23:47:56 +02:00
# edit proxy
2022-09-18 19:46:20 +02:00
expected_proxy["protocol"] = ProxyProtocol.HTTPS
2022-08-02 23:47:56 +02:00
expected_proxy["host"] = "127.0.0.2"
expected_proxy["port"] = 8888
r = self.api.edit_proxy(proxy_id, **expected_proxy)
self.assertEqual(r["msg"], "Saved")
proxy = self.api.get_proxy(proxy_id)
self.compare(proxy, expected_proxy)
# delete proxy
r = self.api.delete_proxy(proxy_id)
self.assertEqual(r["msg"], "Deleted")
with self.assertRaises(UptimeKumaException):
self.api.get_proxy(proxy_id)
def test_delete_not_existing_proxy(self):
with self.assertRaises(UptimeKumaException):
self.api.delete_proxy(42)
2022-08-02 23:47:56 +02:00
if __name__ == '__main__':
unittest.main()