Big-Link-Man/test_tiered_links.py

35 lines
1.2 KiB
Python

from src.database.session import db_manager
from src.database.repositories import GeneratedContentRepository, ProjectRepository, SiteDeploymentRepository
from src.interlinking.tiered_links import find_tiered_links
from src.generation.job_config import JobConfig
session = db_manager.get_session()
content_repo = GeneratedContentRepository(session)
project_repo = ProjectRepository(session)
site_repo = SiteDeploymentRepository(session)
# Get tier2 articles
tier2_articles = content_repo.get_by_project_and_tier(1, "tier2")
print(f"Found {len(tier2_articles)} tier2 articles")
# Load job config
job_config = JobConfig("jobs/test_shaft_machining.json")
job = job_config.get_jobs()[0]
print(f"\nJob config:")
print(f" tiered_link_count_range: {job.tiered_link_count_range}")
print(f" interlinking: {job.interlinking}")
# Test the function
print(f"\nCalling find_tiered_links()...")
result = find_tiered_links(tier2_articles, job, project_repo, content_repo, site_repo)
print(f"\nResult:")
print(f" tier: {result.get('tier')}")
print(f" lower_tier: {result.get('lower_tier')}")
print(f" Number of URLs selected: {len(result.get('lower_tier_urls', []))}")
print(f" URLs: {result.get('lower_tier_urls', [])}")
session.close()