From d370d9b0160634d311563b82f18b2020a897a964 Mon Sep 17 00:00:00 2001 From: Chris White Date: Tue, 13 Oct 2020 12:03:18 -0700 Subject: [PATCH] Allow for None as labels attribute of clocks --- src/prefect/schedules/clocks.py | 4 ++-- tests/schedules/test_clocks.py | 16 ++++++++-------- tests/serialization/test_schedules.py | 1 + 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/prefect/schedules/clocks.py b/src/prefect/schedules/clocks.py index 12140669b05e..5b6527f4e50d 100644 --- a/src/prefect/schedules/clocks.py +++ b/src/prefect/schedules/clocks.py @@ -19,7 +19,7 @@ def __init__( ) -> None: self.start_time = start_time self.parameter_defaults = parameter_defaults or dict() - self.labels = labels or [] + self.labels = labels def __eq__(self, other: Any) -> bool: if not isinstance(other, (ClockEvent, datetime)): @@ -82,7 +82,7 @@ def __init__( self.start_date = start_date self.end_date = end_date self.parameter_defaults = parameter_defaults or dict() - self.labels = labels or [] + self.labels = labels def events(self, after: datetime = None) -> Iterable[ClockEvent]: """ diff --git a/tests/schedules/test_clocks.py b/tests/schedules/test_clocks.py index 84649a70a5c3..2d05c4b47f85 100644 --- a/tests/schedules/test_clocks.py +++ b/tests/schedules/test_clocks.py @@ -33,7 +33,7 @@ def test_clock_event_requires_start_time(self): assert e.start_time == now assert e.parameter_defaults == dict() - assert e.labels == [] + assert e.labels is None def test_clock_event_accepts_parameters(self): now = pendulum.now("UTC") @@ -41,7 +41,7 @@ def test_clock_event_accepts_parameters(self): assert e.start_time == now assert e.parameter_defaults == dict(x=42, z=[1, 2, 3]) - assert e.labels == [] + assert e.labels is None def test_clock_event_accepts_labels(self): now = pendulum.now("UTC") @@ -117,7 +117,7 @@ def test_create_interval_clock(self): start_date=pendulum.now("UTC"), interval=timedelta(days=1) ) assert c.parameter_defaults == dict() - assert c.labels == [] + assert c.labels is None def test_create_interval_clock_with_parameters(self): c = clocks.IntervalClock( @@ -145,7 +145,7 @@ def test_start_date_can_be_none(self): assert c.interval == timedelta(hours=1) assert c.end_date is None assert c.parameter_defaults == dict() - assert c.labels == [] + assert c.labels is None def test_end_date(self): c = clocks.IntervalClock( @@ -155,7 +155,7 @@ def test_end_date(self): assert c.interval == timedelta(hours=1) assert c.end_date == pendulum.datetime(2020, 1, 1) assert c.parameter_defaults == dict() - assert c.labels == [] + assert c.labels is None def test_interval_clock_interval_must_be_positive(self): with pytest.raises(ValueError, match="greater than 0"): @@ -384,7 +384,7 @@ class TestCronClock: def test_create_cron_clock(self): c = clocks.CronClock("* * * * *") assert c.parameter_defaults == dict() - assert c.labels == [] + assert c.labels is None def test_create_cron_clock_with_parameters(self): c = clocks.CronClock("* * * * *", parameter_defaults=dict(x=42)) @@ -625,7 +625,7 @@ def test_create_dates_clock_one_date(self): clock = clocks.DatesClock(dates=[now]) assert clock.start_date == clock.end_date == now assert clock.parameter_defaults == dict() - assert clock.labels == [] + assert clock.labels is None def test_create_dates_clock_multiple_dates(self): now = pendulum.now("UTC") @@ -633,7 +633,7 @@ def test_create_dates_clock_multiple_dates(self): assert clock.start_date == now assert clock.end_date == now.add(days=2) assert clock.parameter_defaults == dict() - assert clock.labels == [] + assert clock.labels is None def test_create_dates_clock_multiple_dates_with_parameters(self): now = pendulum.now("UTC") diff --git a/tests/serialization/test_schedules.py b/tests/serialization/test_schedules.py index db8deea9c1ed..e86806b9a343 100644 --- a/tests/serialization/test_schedules.py +++ b/tests/serialization/test_schedules.py @@ -37,6 +37,7 @@ def test_serialize_schedule_with_parameters(): output = s2.next(3, after=dt, return_events=True) + assert all([e.labels is None for e in output]) assert all([isinstance(e, clocks.ClockEvent) for e in output])