JobData/tests/test_company_storage.py
2026-03-22 23:22:30 +08:00

88 lines
3.5 KiB
Python

import unittest
from app.services.company_storage import extract_company_fields, normalize_company_id
class CompanyStorageTests(unittest.TestCase):
def test_normalize_qcwy_company_id(self):
self.assertEqual(normalize_company_id("qcwy", "co123"), "123")
self.assertEqual(normalize_company_id("qcwy", "123"), "123")
self.assertEqual(normalize_company_id("boss", "co123"), "co123")
def test_extract_boss_fields(self):
payload = {
"zpData": {
"brandComInfoVO": {
"encryptBrandId": "boss-1",
"brandName": "Boss公司",
"industryName": "互联网",
"scaleName": "100-499人",
"stageName": "B轮",
"logo": "https://example.com/logo.png",
"introduce": "品牌简介",
},
"companyFullInfoVO": {
"name": "Boss公司",
"typeName": "民营",
"cityName": "上海",
"address": "上海市徐汇区",
"website": "https://boss.example.com",
},
}
}
result = extract_company_fields("boss", payload, "boss-1")
self.assertEqual(result["source_company_id"], "boss-1")
self.assertEqual(result["company_name"], "Boss公司")
self.assertEqual(result["industry"], "互联网")
self.assertEqual(result["financing_stage"], "B轮")
def test_extract_qcwy_fields(self):
payload = {
"coinfo": {
"coid": "123",
"coname": "前程公司",
"cotype": "民营",
"indtype1": "制造业",
"cosize": "500-999人",
"areaString": "广州",
"caddr": "广州市天河区",
"webUrl": "https://qcwy.example.com",
"logourl": "https://qcwy.example.com/logo.png",
"coinfo": "公司简介",
},
"financingStage": {"name": "未融资"},
}
result = extract_company_fields("qcwy", payload, "co123")
self.assertEqual(result["source_company_id"], "123")
self.assertEqual(result["company_name"], "前程公司")
self.assertEqual(result["company_size"], "500-999人")
self.assertEqual(result["website"], "https://qcwy.example.com")
def test_extract_zhilian_fields(self):
payload = {
"data": {
"companyBase": {
"companyNumber": "zl-1",
"companyName": "智联公司",
"companyTypeName": "上市公司",
"industryName": "教育",
"companySize": "1000-9999人",
"financingStage": {"name": "已上市"},
"cityName": "北京",
"address": "北京市海淀区",
"companyUrl": "https://zl.example.com",
"logoUrl": "https://zl.example.com/logo.png",
"companyDescWithHtml": "<p>公司简介</p>",
}
}
}
result = extract_company_fields("zhilian", payload, "zl-1")
self.assertEqual(result["source_company_id"], "zl-1")
self.assertEqual(result["company_name"], "智联公司")
self.assertEqual(result["company_type"], "上市公司")
self.assertEqual(result["description"], "<p>公司简介</p>")
if __name__ == "__main__":
unittest.main()