File size: 758 Bytes
e6583bf
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import pytest
from graph_article.critic import critic_node

@pytest.mark.parametrize(

    "mock_content,expected_abstract",

    [

        ("ACCEPTED", "A valid abstract"),

        ("REJECTED", None),

    ]

)
def test_critic_node(mock_content, expected_abstract, mocker):
    class FakeResponse:
        def __init__(self, content):
            self.content = content

    mock_chain = mocker.Mock()
    mock_chain.invoke.return_value = FakeResponse(mock_content)

    mocker.patch("graph_article.critic.critic_chain", mock_chain)

    class DummyState:
        abstract = "A valid abstract"

    result = critic_node(DummyState())
    assert result["critique"] == mock_content
    assert result["final_abstract"] == expected_abstract