| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 | import pytestfrom app.core.runner.memory import find_memory@pytest.mark.parametrize(    "data",    [        [{"type": "naive"}, [], []],        [            {"type": "naive"},            [{"role": "user", "content": "text1"}],            [{"role": "user", "content": "text1"}],        ],        [            {"type": "naive"},            [{"role": "user", "content": "text1"}, {"role": "user", "content": "text2"}],            [{"role": "user", "content": "text1"}, {"role": "user", "content": "text2"}],        ],        [{"type": "zero"}, [], []],        [            {"type": "zero"},            [{"role": "user", "content": "text1"}],            [{"role": "user", "content": "text1"}],        ],        [            {"type": "zero"},            [{"role": "user", "content": "text1"}, {"role": "user", "content": "text2"}],            [{"role": "user", "content": "text2"}],        ],        [            {"type": "zero"},            [{"role": "user", "content": "text1"}, {"role": "assistant", "content": "text2"}],            [{"role": "user", "content": "text1"}, {"role": "assistant", "content": "text2"}],        ],        [{"type": "window"}, [], []],        [            {"type": "window", "window_size": 1, "max_token_size": 100},            [{"role": "user", "content": "text1"}, {"role": "user", "content": "text2"}],            [{"role": "user", "content": "text2"}],        ],        [            {"type": "window", "window_size": 1, "max_token_size": 100},            [{"role": "user", "content": "text1"}],            [{"role": "user", "content": "text1"}],        ],        [            {"type": "window", "window_size": 2, "max_token_size": 6},            [{"role": "user", "content": "text1"}, {"role": "user", "content": "text2"}],            [{"role": "user", "content": "text1"}, {"role": "user", "content": "text2"}],        ],        [            {"type": "window", "window_size": 2, "max_token_size": 5},            [{"role": "user", "content": "text1"}, {"role": "user", "content": "text2"}],            [{"role": "user", "content": "text2"}],        ],        [            {"type": "window", "window_size": 2, "max_token_size": 1},            [{"role": "user", "content": "text1"}, {"role": "user", "content": "text2"}],            [{"role": "user", "content": "text2"}],        ],    ],)def test_memory(data):    (memory, messages, expect_result) = data    memory = find_memory(assistants_metadata=memory)    result = memory.integrate_context(messages=messages)    assert result == expect_result@pytest.mark.parametrize(    "kwargs",    [        {"window_size": 0, "max_token_size": 2000},        {"window_size": -1, "max_token_size": 2000},        {"window_size": 20, "max_token_size": 0},        {"window_size": 20, "max_token_size": -1},        {"window_size": 0, "max_token_size": 0},    ],)def test_window_memory_initial_exception(kwargs):    with pytest.raises(ValueError):        kwargs["type"] = "window"        memory = find_memory(assistants_metadata=kwargs)
 |