#!/usr/bin/env python3
"""
测试Bogner AISHA3货号提取
"""

import sys
import os

# 添加项目根目录到路径
sys.path.insert(0, os.path.join(os.path.dirname(__file__)))

from app.utils.text_parser import ProductCodeExtractor

def test_bogner_aisha3():
    """测试Bogner AISHA3货号提取"""
    extractor = ProductCodeExtractor()
    
    test_case = {
        'name': "小王国Bogner博格纳女款深色条纹拉链夹克AISHA3代购8.16",
        'expected': "AISHA3",
        'brand': "Bogner"
    }
    
    print("=== Bogner AISHA3 货号测试 ===")
    print(f"商品名称: {test_case['name']}")
    print(f"期望货号: {test_case['expected']}")
    print(f"品牌: {test_case['brand']}")
    
    # 提取货号
    current_code = extractor.extract_product_code(test_case['name'], test_case['brand'])
    print(f"实际货号: {current_code}")
    
    if current_code == test_case['expected']:
        print("✅ 测试通过：货号提取正确")
    else:
        print("❌ 测试失败！")
        print(f"  - 期望: {test_case['expected']}")
        print(f"  - 实际: {current_code}")
        
        # 调试处理过程
        print("\n=== 调试过程 ===")
        bracket_result = extractor.bracket_processor.process_bracket_content(test_case['name'])
        print(f"方括号处理: '{bracket_result['cleaned_text']}'")
        
        clean_name = extractor._remove_brand(bracket_result["cleaned_text"], test_case['brand'])
        print(f"品牌移除后: '{clean_name}'")
        
        # 测试AISHA3是否被过滤
        is_filtered = extractor._is_brand_name("AISHA3")
        print(f"AISHA3被过滤: {is_filtered}")

if __name__ == "__main__":
    test_bogner_aisha3()