From ea8c1fb0680baa2f1e13a283ea36fffc8e15b0e1 Mon Sep 17 00:00:00 2001 From: Sebastiaan Zeeff <33516116+SebastiaanZ@users.noreply.github.com> Date: Thu, 22 Aug 2019 15:49:56 +0200 Subject: Adding missing 'inline' parameter to embed fields attribute validator --- pydis_site/apps/api/models/bot/tag.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pydis_site/apps/api/models/bot/tag.py b/pydis_site/apps/api/models/bot/tag.py index 01b49525..0dc4830c 100644 --- a/pydis_site/apps/api/models/bot/tag.py +++ b/pydis_site/apps/api/models/bot/tag.py @@ -1,4 +1,5 @@ from collections.abc import Mapping +from typing import Any from django.contrib.postgres import fields as pgfields from django.core.exceptions import ValidationError @@ -8,11 +9,18 @@ from django.db import models from pydis_site.apps.api.models.utils import ModelReprMixin +def is_bool_validator(value: Any) -> None: + """Validates if a given value is of type bool.""" + if not isinstance(value, bool): + raise ValidationError(f"This field must be of type bool, not {type(value)}.") + + def validate_tag_embed_fields(fields): """Raises a ValidationError if any of the given embed fields is invalid.""" field_validators = { 'name': (MaxLengthValidator(limit_value=256),), - 'value': (MaxLengthValidator(limit_value=1024),) + 'value': (MaxLengthValidator(limit_value=1024),), + 'inline': (is_bool_validator,), } for field in fields: -- cgit v1.2.3