#!/usr/bin/env python3 """ Test script to check if all dependencies can be imported for Hugging Face deployment """ import sys def test_imports(): """Test all required imports""" print("๐Ÿงช Testing deployment readiness...") failed_imports = [] # Test core dependencies try: import gradio print("โœ… gradio") except ImportError as e: failed_imports.append(f"gradio: {e}") print("โŒ gradio") try: import groq print("โœ… groq") except ImportError as e: failed_imports.append(f"groq: {e}") print("โŒ groq") try: import whisper print("โœ… openai-whisper") except ImportError as e: failed_imports.append(f"openai-whisper: {e}") print("โŒ openai-whisper") try: import pydub print("โœ… pydub") except ImportError as e: failed_imports.append(f"pydub: {e}") print("โŒ pydub") try: import soundfile print("โœ… soundfile") except ImportError as e: failed_imports.append(f"soundfile: {e}") print("โŒ soundfile") try: import fitz # PyMuPDF print("โœ… PyMuPDF") except ImportError as e: failed_imports.append(f"PyMuPDF: {e}") print("โŒ PyMuPDF") try: import docx print("โœ… python-docx") except ImportError as e: failed_imports.append(f"python-docx: {e}") print("โŒ python-docx") try: import reportlab print("โœ… reportlab") except ImportError as e: failed_imports.append(f"reportlab: {e}") print("โŒ reportlab") try: import speech_recognition print("โœ… speechrecognition") except ImportError as e: failed_imports.append(f"speechrecognition: {e}") print("โŒ speechrecognition") try: import matplotlib print("โœ… matplotlib") except ImportError as e: failed_imports.append(f"matplotlib: {e}") print("โŒ matplotlib") try: import numpy print("โœ… numpy") except ImportError as e: failed_imports.append(f"numpy: {e}") print("โŒ numpy") # Test module imports print("\n๐Ÿ“ฆ Testing custom modules...") try: import config print("โœ… config") except ImportError as e: failed_imports.append(f"config: {e}") print("โŒ config") try: from modules.llm_handler import generate_coaching_question print("โœ… modules.llm_handler") except ImportError as e: failed_imports.append(f"modules.llm_handler: {e}") print("โŒ modules.llm_handler") try: from modules.doc_processor import extract_text_from_document print("โœ… modules.doc_processor") except ImportError as e: failed_imports.append(f"modules.doc_processor: {e}") print("โŒ modules.doc_processor") try: from modules.report_generator import generate_pdf_report print("โœ… modules.report_generator") except ImportError as e: failed_imports.append(f"modules.report_generator: {e}") print("โŒ modules.report_generator") # Summary print("\n" + "="*50) if failed_imports: print(f"โŒ {len(failed_imports)} import failures found:") for failure in failed_imports: print(f" - {failure}") print("\n๐Ÿšจ App may not work properly on Hugging Face!") return False else: print("โœ… All imports successful!") print("๐Ÿš€ Ready for Hugging Face deployment!") return True if __name__ == "__main__": success = test_imports() sys.exit(0 if success else 1)