Files
wehub-resource-sync c56bef871b
Sync docs with Docusaurus / sync (push) Waiting to run
Tests / Check if changed (push) Waiting to run
Tests / format (push) Blocked by required conditions
Tests / check-imports (push) Blocked by required conditions
Tests / Unit / macos-latest (push) Blocked by required conditions
Tests / Unit / ubuntu-latest (push) Blocked by required conditions
Tests / Unit / windows-latest (push) Blocked by required conditions
Tests / mypy (push) Blocked by required conditions
Tests / Integration / ubuntu-latest (push) Blocked by required conditions
Tests / Integration / macos-latest (push) Blocked by required conditions
Tests / Integration / windows-latest (push) Blocked by required conditions
Tests / notify-slack-on-failure (push) Blocked by required conditions
Tests / Mark tests as completed (push) Blocked by required conditions
Docker image release / Build base image (push) Waiting to run
CodeQL / Analyze (python) (push) Has been cancelled
Update Platform Components Table / update (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:22:28 +08:00

75 lines
2.2 KiB
Python

# SPDX-FileCopyrightText: 2022-present deepset GmbH <info@deepset.ai>
#
# SPDX-License-Identifier: Apache-2.0
from haystack.testing.sample_components.accumulate import Accumulate, _default_function
def my_subtract(first, second):
return first - second
def test_to_dict():
accumulate = Accumulate()
res = accumulate.to_dict()
assert res == {
"type": "haystack.testing.sample_components.accumulate.Accumulate",
"init_parameters": {"function": "haystack.testing.sample_components.accumulate._default_function"},
}
def test_to_dict_with_custom_function():
accumulate = Accumulate(function=my_subtract)
res = accumulate.to_dict()
assert res == {
"type": "haystack.testing.sample_components.accumulate.Accumulate",
"init_parameters": {"function": "test_accumulate.my_subtract"},
}
def test_from_dict():
data = {"type": "haystack.testing.sample_components.accumulate.Accumulate", "init_parameters": {}}
accumulate = Accumulate.from_dict(data)
assert accumulate.function == _default_function
def test_from_dict_with_default_function():
data = {
"type": "haystack.testing.sample_components.accumulate.Accumulate",
"init_parameters": {"function": "haystack.testing.sample_components.accumulate._default_function"},
}
accumulate = Accumulate.from_dict(data)
assert accumulate.function == _default_function
def test_from_dict_with_custom_function():
data = {
"type": "haystack.testing.sample_components.accumulate.Accumulate",
"init_parameters": {"function": "test_accumulate.my_subtract"},
}
accumulate = Accumulate.from_dict(data)
assert accumulate.function == my_subtract
def test_accumulate_default():
component = Accumulate()
results = component.run(value=10)
assert results == {"value": 10}
assert component.state == 10
results = component.run(value=1)
assert results == {"value": 11}
assert component.state == 11
def test_accumulate_callable():
component = Accumulate(function=my_subtract)
results = component.run(value=10)
assert results == {"value": -10}
assert component.state == -10
results = component.run(value=1)
assert results == {"value": -11}
assert component.state == -11