amoghrajesh commented on code in PR #67839:
URL: https://github.com/apache/airflow/pull/67839#discussion_r3433402306
##########
airflow-core/src/airflow/jobs/triggerer_job_runner.py:
##########
@@ -751,11 +753,18 @@ def _create_workload(
render_log_fname: Callable[..., str],
session: Session,
) -> workloads.RunTrigger | None:
+ # Pass the "watched" Assets through for downstream use in
BaseEventTrigger
Review Comment:
```suggestion
```
It's obvious here
##########
airflow-core/src/airflow/triggers/base.py:
##########
@@ -297,6 +298,12 @@ class BaseEventTrigger(BaseTrigger):
supports_triggerer_queue: bool = False
+ def __init__(self, **kwargs):
+ super().__init__(**kwargs)
+
+ # Injected by the triggerer before run() is called; mirrors how
trigger_id is set
Review Comment:
```suggestion
# Injected by the triggerer before run() is called
```
##########
airflow-core/tests/unit/triggers/test_base_trigger.py:
##########
@@ -232,3 +234,25 @@ async def stream():
payloads = [event.payload async for event in
us.filter_shared_stream(stream())]
assert [p["region"] for p in payloads] == ["us", "us"]
+
+
+def test_base_event_trigger_asset_state_store_initialized_to_none():
+ """asset_state_store is None before it is set."""
+ trigger = _PlainEventTrigger()
+ assert trigger.asset_state_store is None
+
+
+def test_base_event_trigger_asset_state_store_can_be_set():
+ """asset_state_store can be set once the Trigger is initialized."""
+ trigger = _PlainEventTrigger()
+ mock_store = MagicMock()
+ trigger.asset_state_store = mock_store
+ assert trigger.asset_state_store is mock_store
+
+
+def test_base_event_trigger_asset_state_store_independent_across_instances():
+ """a.asset_state_store does not impact b.asset_state_store."""
+ a = _PlainEventTrigger(name="a")
+ b = _PlainEventTrigger(name="b")
+ a.asset_state_store = MagicMock()
+ assert b.asset_state_store is None
Review Comment:
Use `spec` or `autospec` for mocks pls.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]