#!/usr/bin/env python3 """ Teszt szkript az R0 spider számára. Csak egy járművet dolgoz fel, majd leáll. """ import asyncio import logging import sys import os # Add the backend to the path sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'backend')) from app.workers.vehicle.ultimatespecs.vehicle_ultimate_r0_spider import UltimateSpecsSpider logging.basicConfig( level=logging.INFO, format='%(asctime)s [TEST-R0] %(message)s', datefmt='%Y-%m-%d %H:%M:%S' ) logger = logging.getLogger("TEST-R0") class TestSpider(UltimateSpecsSpider): """Teszt spider, amely csak egy iterációt fut.""" async def run_test(self): """Run a single test iteration.""" logger.info("Teszt spider indítása...") try: await self.init_browser() # Process just one vehicle processed = await self.process_single_vehicle() if processed: logger.info("Teszt sikeres - egy jármű feldolgozva") else: logger.info("Teszt sikeres - nincs feldolgozandó jármű") except Exception as e: logger.error(f"Teszt hiba: {e}") import traceback traceback.print_exc() return False finally: await self.close_browser() return True async def main(): """Main test function.""" spider = TestSpider() try: success = await spider.run_test() if success: print("\n✅ TESZT SIKERES") sys.exit(0) else: print("\n❌ TESZT SIKERTELEN") sys.exit(1) except KeyboardInterrupt: print("\n⏹️ Teszt megszakítva") sys.exit(0) except Exception as e: print(f"\n💥 Váratlan hiba: {e}") import traceback traceback.print_exc() sys.exit(1) if __name__ == "__main__": asyncio.run(main())