Files
cmshoppe/tests/test_cmhub_models.py
T

50 lines
1.6 KiB
Python

import os
import sys
import unittest
sys.path.insert(0, os.path.dirname(os.path.dirname(__file__)))
from app import cmhub_models
class CMHubModelDisplayTests(unittest.TestCase):
def test_alias_label_prefers_display_name_tier_and_points(self):
label = cmhub_models.alias_label(
{
"alias": "image-hq",
"display_name": "商品图高质量",
"operation_type": "image",
"tier": "high_quality",
"requires_image": True,
"prices": [{"resolution": "1K", "points_cost": 5}],
}
)
self.assertIn("高质量档", label)
self.assertIn("商品图高质量", label)
self.assertIn("1K:5点", label)
self.assertIn("需参考图", label)
self.assertNotIn("OpenAI", label)
def test_tier_detection_uses_tags_and_safe_default(self):
self.assertEqual(
cmhub_models.TIER_ECONOMICAL,
cmhub_models.model_tier({"alias": "draft", "tags": ["high-volume", "low-cost"]}),
)
self.assertEqual(
cmhub_models.TIER_HIGH_QUALITY,
cmhub_models.model_tier({"alias": "image-hd"}),
)
self.assertEqual(cmhub_models.TIER_DEFAULT, cmhub_models.model_tier({"alias": "image"}))
def test_configured_alias_summary_is_user_facing(self):
summary = cmhub_models.configured_alias_summary("image-hd")
self.assertIn("cmhub 托管高质量档", summary)
self.assertIn("生图别名 image-hd", summary)
self.assertIn("扣点以返回结果为准", summary)
if __name__ == "__main__":
unittest.main()