feat: complete program platform experience

This commit is contained in:
admin committed 2026-08-19 17:25:00 +08:00
1 parent e50b8b480b
commit 383c066d86
9 files changed
+419 -67

No files matched your search

+33
View File
@@ -0,0 +1,33 @@
import asyncio
import unittest
from pydantic import ValidationError
from routes.settings_route import TranscodeQuality, get_system_metrics
class SettingsRouteTest(unittest.TestCase):
def test_transcode_quality_accepts_supported_values(self):
quality = TranscodeQuality(label="高清", width=1920, height=1080, bitrate="5000k")
self.assertEqual(quality.width, 1920)
self.assertEqual(quality.bitrate, "5000k")
def test_transcode_quality_rejects_invalid_bitrate_and_dimensions(self):
invalid_values = [
dict(label="高清", width=100, height=1080, bitrate="5000k"),
dict(label="高清", width=1920, height=1080, bitrate="5000"),
dict(label="", width=1920, height=1080, bitrate="5M"),
]
for value in invalid_values:
with self.subTest(value=value), self.assertRaises(ValidationError):
TranscodeQuality(**value)
def test_system_metrics_contains_bounded_resource_values(self):
metrics = asyncio.run(get_system_metrics(True))
self.assertGreaterEqual(metrics["cpu"]["count"], 1)
self.assertGreaterEqual(metrics["cpu"]["load_percent"], 0)
self.assertLessEqual(metrics["cpu"]["load_percent"], 100)
self.assertGreaterEqual(metrics["memory"]["used_percent"], 0)
self.assertLessEqual(metrics["memory"]["used_percent"], 100)
self.assertGreater(metrics["disk"]["total"], 0)
self.assertGreaterEqual(metrics["disk"]["free"], 0)