| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- import unittest
- class CreativeReviewScanTests(unittest.TestCase):
- def test_parse_rejected_result_collects_reasons_and_locations(self):
- from tools.creative_review import parse_review_result
- parsed = parse_review_result({
- "dynamic_creative_id": 123,
- "reject_message_list": ["整体拒绝"],
- "site_set_result_list": [
- {
- "site_set": "SITE_SET_MOMENTS",
- "system_status": "DYNAMIC_CREATIVE_STATUS_DENIED",
- "reject_message": "朋友圈拒绝",
- }
- ],
- "element_result_list": [
- {
- "element_name": "image",
- "element_type": "ELEMENT_TYPE_IMAGE",
- "review_status": "REVIEW_STATUS_REJECTED",
- "element_reject_detail_info": [
- {
- "reason": "图片含违规信息",
- "reject_info_location": [
- {"x": 1, "y": 2, "width": 3, "height": 4}
- ],
- }
- ],
- }
- ],
- })
- self.assertEqual(parsed.review_status, "rejected")
- self.assertIn("整体拒绝", parsed.reject_messages)
- self.assertIn("朋友圈拒绝", parsed.reject_messages)
- self.assertIn("图片含违规信息", parsed.reject_messages)
- self.assertEqual(len(parsed.rejection_facts), 2)
- def test_parse_pending_result(self):
- from tools.creative_review import parse_review_result
- parsed = parse_review_result({
- "dynamic_creative_id": 456,
- "is_all_component_compose_pending": True,
- "delay_message_list": ["审核延迟"],
- })
- self.assertEqual(parsed.review_status, "pending")
- self.assertIn("审核延迟", parsed.delay_messages)
- def test_chunk_ids_by_account_limits_to_100(self):
- from tools.creative_review import group_review_tasks
- tasks = [
- {"account_id": 1, "dynamic_creative_id": i}
- for i in range(250)
- ] + [{"account_id": 2, "dynamic_creative_id": 999}]
- groups = list(group_review_tasks(tasks, batch_size=100))
- self.assertEqual(len(groups), 4)
- self.assertEqual(groups[0][0], 1)
- self.assertEqual(len(groups[0][1]), 100)
- self.assertEqual(len(groups[1][1]), 100)
- self.assertEqual(len(groups[2][1]), 50)
- self.assertEqual(groups[3], (2, [999]))
- if __name__ == "__main__":
- unittest.main()
|