Skip to content

Commit

Permalink
feat: fixup2
Browse files Browse the repository at this point in the history
  • Loading branch information
ykuksenko committed Mar 30, 2023
1 parent e57cd82 commit 3a8decc
Showing 1 changed file with 85 additions and 0 deletions.
85 changes: 85 additions & 0 deletions api/tacticalrmm/core/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -500,3 +500,88 @@ def test_get_meshagent_url_docker(self):
r,
"http://tactical-meshcentral:4443/meshagents?id=4&meshid=abc123&installflags=0",
)


class TestMonitoring(TacticalTestCase):
url = "/core/status/"

def setUp(self):
self.setup_client()
self.setup_coresettings()

# prometheus tests
def test_prometheus_missing_auth_header_request(self):
r = self.client.get(self.url)
self.assertEqual(r.status_code, 400)

def test_prometheus_missing_token_config(self):
r = self.client.get(self.url, HTTP_Authorization="Bearer MySuperTestSecret")
self.assertEqual(r.status_code, 401)

@override_settings(MON_TOKEN="MySuperTestSecret")
def test_prometheus_incorrect_token_request(self):
r = self.client.get(self.url, HTTP_Authorization="Bearer NotMySuperTestSecret")
self.assertEqual(r.status_code, 401)

@override_settings(DOCKER_BUILD=True)
@override_settings(MON_TOKEN="MySuperTestSecret")
def test_prometheus_correct_docker_build_request(self):
r = self.client.get(self.url, HTTP_Authorization="Bearer MySuperTestSecret")
self.assertEqual(r.status_code, 200)

@override_settings(MON_TOKEN="MySuperTestSecret")
def test_prometheus_correct_request(self):
r = self.client.get(self.url, HTTP_Authorization="Bearer MySuperTestSecret")
self.assertEqual(r.status_code, 200)

# invalid tests
def test_invalid_request(self):
r = self.client.put(self.url)
self.assertEqual(r.status_code, 400)
self.assertEqual(
r.content,
b"Invalid request type\n",
)

# json tests
def test_json_invalid_json_request(self):
r = self.client.post(
self.url,
data="I am not json!",
content_type="application/json",
)
self.assertEqual(r.status_code, 400)

def test_json_invalid_payload_request(self):
r = self.client.post(
self.url, data={"notauth": "NotMySuperTestSecret"}, format="json"
)
self.assertEqual(r.status_code, 400)

def test_json_missing_token_request(self):
r = self.client.post(
self.url, data={"auth": "MySuperTestSecret"}, format="json"
)
self.assertEqual(r.status_code, 401)

@override_settings(MON_TOKEN="MySuperTestSecret")
def test_json_incorrect_token_request(self):
r = self.client.post(
self.url, data={"auth": "NotMySuperTestSecret"}, format="json"
)
self.assertEqual(r.status_code, 401)

@override_settings(MON_TOKEN="MySuperTestSecret")
def test_json_correct_request(self):
r = self.client.post(
self.url, data={"auth": "MySuperTestSecret"}, format="json"
)
self.assertEqual(r.status_code, 200)

@override_settings(DOCKER_BUILD=True)
@override_settings(MON_TOKEN="MySuperTestSecret")
def test_json_correct_docker_build_request(self):
r = self.client.post(
self.url, data={"auth": "MySuperTestSecret"}, format="json"
)
self.assertEqual(r.status_code, 200)

0 comments on commit 3a8decc

Please sign in to comment.