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()