#!/usr/bin/env python3
"""
main.py 버전 파싱 테스트
"""

import os
import re

def test_version_parsing():
    """main.py에서 버전 정보 파싱 테스트"""
    print("=" * 60)
    print("Main.py Version Parsing Test")
    print("=" * 60)
    
    main_py_path = "/mnt/c/Users/Administrator/Desktop/help_/main.py"
    
    if not os.path.exists(main_py_path):
        print(f"✗ main.py not found: {main_py_path}")
        return
    
    try:
        with open(main_py_path, 'r', encoding='utf-8') as f:
            content = f.read()
        
        print(f"✓ main.py loaded: {len(content)} characters")
        
        # MAIN_VERSION 파싱
        version_pattern = r'MAIN_VERSION\s*=\s*["\']([^"\']+)["\']'
        build_date_pattern = r'MAIN_BUILD_DATE\s*=\s*["\']([^"\']+)["\']'
        
        version_matches = re.findall(version_pattern, content)
        build_date_matches = re.findall(build_date_pattern, content)
        
        print(f"\nFound MAIN_VERSION matches: {len(version_matches)}")
        for i, version in enumerate(version_matches):
            print(f"  {i+1}. MAIN_VERSION = \"{version}\"")
        
        print(f"\nFound MAIN_BUILD_DATE matches: {len(build_date_matches)}")
        for i, build_date in enumerate(build_date_matches):
            print(f"  {i+1}. MAIN_BUILD_DATE = \"{build_date}\"")
        
        # 첫 번째 매치 사용 (일반적으로 실제 변수)
        if version_matches:
            final_version = version_matches[0]
            final_build_date = build_date_matches[0] if build_date_matches else "Unknown"
            
            print(f"\n--- Final Result ---")
            print(f"Version: {final_version}")
            print(f"Build Date: {final_build_date}")
            
            # 해시 계산 시뮬레이션
            import hashlib
            hash_input = final_version + final_build_date
            hash_value = hashlib.md5(hash_input.encode()).hexdigest()[:8]
            print(f"Hash: {hash_value}")
            
            return {
                'version': final_version,
                'build_date': final_build_date,
                'hash': hash_value
            }
        else:
            print("✗ No MAIN_VERSION found in main.py")
            return None
            
    except Exception as e:
        print(f"✗ Error reading main.py: {e}")
        return None

if __name__ == "__main__":
    result = test_version_parsing()
    
    if result:
        print(f"\n✅ Version parsing successful!")
        print(f"Current main.py version: {result['version']}")
    else:
        print(f"\n❌ Version parsing failed!")