import pytest
from krrkt.engine.pipeline import proofread


class TestPipelineFastOnly:
    @pytest.mark.asyncio
    async def test_corporate_stamps_detected(self):
        result = await proofread(
            "Наша компания предлагает широкий спектр услуг высочайшего качества.",
            skip_llm=True
        )
        rules = [f.rule for f in result.findings]
        assert any("штамп" in r.lower() or "оценка" in r.lower() for r in rules)

    @pytest.mark.asyncio
    async def test_bureaucratic_text(self):
        result = await proofread(
            "В связи с вышеизложенным, принимая во внимание все факторы, считаем целесообразным принять решение.",
            skip_llm=True
        )
        assert result.score < 7
        rules = [f.rule for f in result.findings]
        assert "Канцеляризм" in rules

    @pytest.mark.asyncio
    async def test_pleonasm_detected(self):
        result = await proofread("Это бесплатный подарок для клиента.", skip_llm=True)
        rules = [f.rule for f in result.findings]
        assert "Плеоназм" in rules
