blob: ba255ab1f70e50d575d8bd6ab32d7e9f53ea554f [file]
from burr.core import Action, State
from burr.tracking.common.models import ActionModel
class ActionWithCustomSource(Action):
def __init__(self):
super().__init__()
@property
def reads(self) -> list[str]:
return []
def run(self, state: State, **run_kwargs) -> dict:
return {}
@property
def writes(self) -> list[str]:
return []
def update(self, result: dict, state: State) -> State:
return state
def get_source(self) -> str:
return "custom source code"
def test_action_with_custom_source():
model = ActionModel.from_action(ActionWithCustomSource().with_name("foo"))
assert model.code == "custom source code"