Skip to content

Commit 10b102b

Browse files
Fix frequency validation error for scheduled messages (#395)
1 parent 85f321f commit 10b102b

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

modules/models/scheduled_message_models.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
from datetime import datetime
33
from enum import Enum
44

5-
from pydantic import Field, validator
5+
from pydantic import Field, field_validator
6+
from pydantic_core.core_schema import FieldValidationInfo
67

78
from modules.models.shared_models import AirtableRowBaseModel
89

@@ -60,17 +61,19 @@ class ScheduledMessageInfo(AirtableRowBaseModel):
6061
description="When to send the message - this is calculated using a formula on the Airtable table",
6162
)
6263

63-
@validator("frequency")
64-
def frequency_must_be_valid( # noqa: N805, RUF100
64+
@field_validator("frequency")
65+
def frequency_must_be_valid(
6566
cls: "ScheduledMessageInfo", # noqa: N805
6667
frequency: str,
68+
info: FieldValidationInfo, # noqa: ARG002
6769
) -> str:
68-
"""Validate that the passed in frequency is valid.
70+
"""Validate that the passed in frequency is a valid option.
6971
7072
:param frequency: The frequency to validate.
73+
:param info: The field validation info.
7174
:return: The frequency if it is valid.
7275
"""
73-
if frequency not in FrequencyEnum.__members__:
76+
if frequency.lower() not in FrequencyEnum.__members__:
7477
exception_message = f"Frequency must be one of {FrequencyEnum.__members__.keys()}"
7578
raise ValueError(exception_message)
76-
return frequency
79+
return frequency.lower()

0 commit comments

Comments
 (0)