#!/usr/bin/env python3
"""
Test script for Moviesda MCP Server
This script tests the database operations without running the full MCP server
"""
import sys
import os
# Add current directory to path
sys.path.insert(0, os.path.dirname(__file__))
from server import init_database, add_movie, search_movies
def test_database():
"""Test database operations"""
print("π Testing Moviesda MCP Server Database\n")
# Initialize database
print("1. Initializing database...")
init_database()
print(" β
Database initialized\n")
# Add sample movies
print("2. Adding sample movies...")
sample_movies = [
("The Raja Saab", 2026, "/the-raja-saab-2026-tamil-movie/", "Tamil"),
("Parasakthi", 2026, "/parasakthi-2026-tamil-movie/", "Tamil"),
("Kohrra", 2026, "/kohrra-2026-tamil-web-series/", "Tamil"),
("Red Label", 2026, "/red-label-2026-tamil-movie/", "Tamil"),
("Mellisai", 2026, "/mellisai-2026-tamil-movie/", "Tamil"),
]
for title, year, url, category in sample_movies:
result = add_movie(title, year, url, category)
status = "β
Added" if result else "β οΈ Already exists"
print(f" {status}: {title} ({year})")
print()
# Test searches
print("3. Testing search functionality...\n")
# Search 1: Exact match
print(" Search: 'Raja'")
results = search_movies("Raja", limit=5)
for movie in results:
print(f" - {movie['title']} ({movie['year']})")
print(f" π {movie['url']}")
print()
# Search 2: Partial match
print(" Search: 'Kohrra'")
results = search_movies("Kohrra", limit=5)
for movie in results:
print(f" - {movie['title']} ({movie['year']})")
print(f" π {movie['url']}")
print()
# Search 3: No results
print(" Search: 'Nonexistent Movie'")
results = search_movies("Nonexistent Movie", limit=5)
if not results:
print(" β οΈ No results found")
print()
print("β
All tests completed successfully!")
print("\nYou can now run the MCP server with: python server.py")
if __name__ == "__main__":
test_database()