dev: add deterministic demo dataset
This commit is contained in:
1 parent
60a831950c
commit
d06ee7bcc6
5 files changed
+810
No files matched your search
@@ -1,3 +1,4 @@
|
||||
import re
|
||||
import unittest
|
||||
from pathlib import Path
|
||||
from unittest.mock import patch
|
||||
@@ -157,6 +158,31 @@ class FrontendShellTests(unittest.TestCase):
|
||||
self.assertIn(value, response.text)
|
||||
self.assertNotIn("Live layout and telemetry data are not", response.text)
|
||||
|
||||
def test_map_script_dom_contract_matches_rendered_page(self):
|
||||
self.authenticate()
|
||||
response = self.client.get("/monitoring/map")
|
||||
javascript = (STATIC_ROOT / "mine-map.js").read_text(encoding="utf-8")
|
||||
declared_ids = re.search(
|
||||
r"const ids = \[(.*?)\];",
|
||||
javascript,
|
||||
re.DOTALL,
|
||||
)
|
||||
self.assertIsNotNone(declared_ids)
|
||||
required = set(
|
||||
re.findall(
|
||||
r'"([A-Za-z][A-Za-z0-9]+)"',
|
||||
declared_ids.group(1),
|
||||
)
|
||||
)
|
||||
required.update(
|
||||
re.findall(
|
||||
r'document\.getElementById\("([^"]+)"\)',
|
||||
javascript,
|
||||
)
|
||||
)
|
||||
rendered = set(re.findall(r'\bid="([^"]+)"', response.text))
|
||||
self.assertEqual(required - rendered, set())
|
||||
|
||||
def test_data_views_include_all_request_states(self):
|
||||
self.authenticate()
|
||||
for path in ("/operations/repairs", "/assets/miners"):
|
||||
|
||||
Reference in new issue
Block a user