import pytest
from burr.core import state
from burr.testing import pytest_generate_tests  # noqa: F401
# TODO: import action you're testing, i.e. import researcher.

from lcel_application import research_node

@pytest.mark.file_name("reasearcher-tests.json")
def test_researcher(input_state, expected_state):
    """Function for testing the action"""
    input_state = state.State(input_state)
    expected_state = state.State(expected_state)
    _, output_state = research_node(input_state, None)  # exercise the action
    # TODO: choose appropriate way to evaluate the output
    # e.g. exact match, fuzzy match, LLM grade, etc.
    # this is exact match here on all values in state
    assert output_state == expected_state
    # e.g.
    # assert 'some value' in output_state["response"]["content"]
    # assert llm_evaluator(..., ...) == "Y"
