Spaces:
Runtime error
Runtime error
| """Tests for slug generation.""" | |
| from researchlink.services.slugify import make_paper_slug | |
| def test_basic_slug(): | |
| assert make_paper_slug("Attention Is All You Need", 2017) == "2017-attention-is-all-you-need" | |
| def test_slug_strips_subtitle(): | |
| result = make_paper_slug("MARL-IoTP: Heterogeneous Multi-Agent Learning for Perception-Aware Edge Orchestration", 2026) | |
| assert result.startswith("2026-marl-iotp") | |
| def test_slug_no_year(): | |
| result = make_paper_slug("Deep Reinforcement Learning") | |
| assert result == "deep-reinforcement-learning" | |
| assert not result.startswith("-") | |
| def test_slug_max_length(): | |
| long_title = "A " * 40 + "Paper" | |
| result = make_paper_slug(long_title, 2024) | |
| assert len(result) <= 60 # year prefix (5) + 50 slug + buffer | |
| def test_slug_special_chars(): | |
| result = make_paper_slug("BERT: Pre-training of Deep Bidirectional Transformers", 2019) | |
| assert "bert" in result | |
| assert ":" not in result | |
| def test_slug_lowercase(): | |
| result = make_paper_slug("Upper Case Title", 2023) | |
| assert result == result.lower() | |
| def test_slug_no_double_hyphens(): | |
| result = make_paper_slug("Multi--Agent Systems", 2022) | |
| assert "--" not in result | |