mirror of
https://github.com/OpenHands/OpenHands.git
synced 2025-12-26 05:48:36 +08:00
* action deserializing * add observation deserialization * add tests * refactor agents with serialization * fix some errors * fix lint * fix json parser
17 lines
822 B
Python
17 lines
822 B
Python
import pytest
|
|
from opendevin.action import action_from_dict, Action, AgentThinkAction
|
|
|
|
def test_action_serialization_deserialization():
|
|
original_action_dict = {
|
|
'action': 'think',
|
|
'args': {'thought': 'This is a test.'}
|
|
}
|
|
action_instance = action_from_dict(original_action_dict)
|
|
assert isinstance(action_instance, Action), 'The action instance should be an instance of Action.'
|
|
assert isinstance(action_instance, AgentThinkAction), 'The action instance should be an instance of AgentThinkAction.'
|
|
serialized_action_dict = action_instance.to_dict()
|
|
serialized_action_dict.pop('message')
|
|
assert serialized_action_dict == original_action_dict, 'The serialized action should match the original action dict.'
|
|
|
|
# Additional tests for various action subclasses can be included here
|