feat: introduce Vue Bootstrap interface and scoped router network status
This commit is contained in:
+6
-5
@@ -97,7 +97,7 @@ class WebTests(unittest.TestCase):
|
||||
def test_live_quality_has_only_main_and_sub(self):
|
||||
code, _, body = self.request('/', False)
|
||||
self.assertEqual(code, 200)
|
||||
select = re.search(r'<select id="quality">(.*?)</select>', body.decode()).group(1)
|
||||
select = re.search(r'<select id="quality">(.*?)</select>', (app.ROOT/'frontend/src/components/Workspace.vue').read_text(encoding='utf8')).group(1)
|
||||
self.assertEqual(re.findall(r'<option value="(.*?)">(.*?)</option>', select),
|
||||
[('hd', '主码流'), ('compat', '子码流')])
|
||||
|
||||
@@ -106,12 +106,13 @@ class WebTests(unittest.TestCase):
|
||||
self.assertEqual(code, 200)
|
||||
self.assertEqual(headers['Cache-Control'], 'no-store')
|
||||
self.assertNotIn(b'__ASSET_VERSION__', body)
|
||||
assets = re.findall(r'(?:src|href)="(/[^"?]+\.(?:js|css)\?v=[^"]+)"', body.decode())
|
||||
self.assertEqual(len(assets), 29)
|
||||
version = (app.ROOT / 'VERSION').read_text().strip()
|
||||
assets = re.findall(r'(?:src|href)="(/ui/assets/[^"?]+\.(?:js|css))"', body.decode())
|
||||
self.assertEqual(len(assets), 2)
|
||||
for asset in assets:
|
||||
self.assertTrue(asset.endswith('?v=' + version))
|
||||
self.assertRegex(asset,r'/ui/assets/index-[A-Za-z0-9_-]+\.(js|css)$')
|
||||
self.assertEqual(self.request(asset, False)[0], 200)
|
||||
for path in ['/ui/assets/../../vision.db','/ui/assets/missing.js','/ui/index.html']:
|
||||
self.assertEqual(self.request(path,False)[0],404)
|
||||
|
||||
def test_origin_rejected(self):
|
||||
self.assertEqual(self.request('/api/storage', data={}, origin='https://example.org')[0], 403)
|
||||
|
||||
Reference in New Issue
Block a user