95 lines
2.7 KiB
Python
95 lines
2.7 KiB
Python
#!/usr/bin/env python
|
|
"""Test generate_content for Writer tasks"""
|
|
import os
|
|
import sys
|
|
import django
|
|
|
|
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'igny8_core.settings')
|
|
django.setup()
|
|
|
|
from django.contrib.auth import get_user_model
|
|
from igny8_core.business.content.models import Tasks
|
|
from igny8_core.business.content.services.content_generation_service import ContentGenerationService
|
|
|
|
print("=" * 80)
|
|
print("TESTING WRITER GENERATE_CONTENT")
|
|
print("=" * 80)
|
|
|
|
User = get_user_model()
|
|
user = User.objects.filter(email='dev@igny8.com').first()
|
|
|
|
if not user:
|
|
print("❌ User not found")
|
|
sys.exit(1)
|
|
|
|
account = user.account if hasattr(user, 'account') else None
|
|
|
|
if not account:
|
|
print("❌ No account found for user")
|
|
sys.exit(1)
|
|
|
|
print(f"✓ User: {user.email}")
|
|
print(f"✓ Account: {account.id}")
|
|
|
|
# Get tasks
|
|
tasks = Tasks.objects.filter(account=account, status='queued')[:5]
|
|
print(f"\n✓ Found {tasks.count()} queued tasks")
|
|
|
|
if tasks.exists():
|
|
task = tasks.first()
|
|
print(f"\nTesting with task:")
|
|
print(f" - ID: {task.id}")
|
|
print(f" - Title: {task.title}")
|
|
print(f" - Status: {task.status}")
|
|
print(f" - Cluster: {task.cluster.name if task.cluster else 'None'}")
|
|
|
|
print("\nCalling generate_content service...")
|
|
service = ContentGenerationService()
|
|
|
|
try:
|
|
result = service.generate_content([task.id], account)
|
|
print(f"\n✓ SUCCESS!")
|
|
print(f"Result: {result}")
|
|
except Exception as e:
|
|
print(f"\n❌ ERROR: {e}")
|
|
import traceback
|
|
traceback.print_exc()
|
|
else:
|
|
print("\n⚠️ No queued tasks found. Creating a test task...")
|
|
|
|
from igny8_core.modules.planner.models import Clusters
|
|
cluster = Clusters.objects.filter(account=account).first()
|
|
|
|
if not cluster:
|
|
print("❌ No clusters found. Cannot create test task.")
|
|
sys.exit(1)
|
|
|
|
task = Tasks.objects.create(
|
|
account=account,
|
|
site=cluster.site,
|
|
sector=cluster.sector,
|
|
cluster=cluster,
|
|
title="Test Article: Benefits of Organic Cotton Bedding",
|
|
description="Comprehensive guide covering health benefits, environmental impact, and buying guide",
|
|
content_type='post',
|
|
content_structure='article',
|
|
status='queued'
|
|
)
|
|
print(f"✓ Created test task: {task.id} - {task.title}")
|
|
|
|
print("\nCalling generate_content service...")
|
|
service = ContentGenerationService()
|
|
|
|
try:
|
|
result = service.generate_content([task.id], account)
|
|
print(f"\n✓ SUCCESS!")
|
|
print(f"Result: {result}")
|
|
except Exception as e:
|
|
print(f"\n❌ ERROR: {e}")
|
|
import traceback
|
|
traceback.print_exc()
|
|
|
|
print("\n" + "=" * 80)
|
|
print("TEST COMPLETE")
|
|
print("=" * 80)
|