From 04e108c31edb33a2714e3bcebc3c12b8b96ad8cc Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sun, 28 Feb 2021 16:04:31 +0000 Subject: [PATCH] Fix API crash due to missing upper() in enum coercion --- app/models/__init__.py | 2 +- app/models/packages.py | 6 +++--- app/models/users.py | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/models/__init__.py b/app/models/__init__.py index f625462..49a4f0b 100644 --- a/app/models/__init__.py +++ b/app/models/__init__.py @@ -72,7 +72,7 @@ class AuditSeverity(enum.Enum): @classmethod def coerce(cls, item): - return item if type(item) == AuditSeverity else AuditSeverity[item] + return item if type(item) == AuditSeverity else AuditSeverity[item.upper()] class AuditLogEntry(db.Model): diff --git a/app/models/packages.py b/app/models/packages.py index 34759e3..10c9d28 100644 --- a/app/models/packages.py +++ b/app/models/packages.py @@ -68,7 +68,7 @@ class PackageType(enum.Enum): @classmethod def coerce(cls, item): - return item if type(item) == PackageType else PackageType[item] + return item if type(item) == PackageType else PackageType[item.upper()] class PackageState(enum.Enum): @@ -107,7 +107,7 @@ class PackageState(enum.Enum): @classmethod def coerce(cls, item): - return item if type(item) == PackageState else PackageState[item] + return item if type(item) == PackageState else PackageState[item.upper()] PACKAGE_STATE_FLOW = { @@ -965,7 +965,7 @@ class PackageUpdateTrigger(enum.Enum): @classmethod def coerce(cls, item): - return item if type(item) == PackageUpdateTrigger else PackageUpdateTrigger[item] + return item if type(item) == PackageUpdateTrigger else PackageUpdateTrigger[item.upper()] class PackageUpdateConfig(db.Model): diff --git a/app/models/users.py b/app/models/users.py index fe461d3..68e18f2 100644 --- a/app/models/users.py +++ b/app/models/users.py @@ -54,7 +54,7 @@ class UserRank(enum.Enum): @classmethod def coerce(cls, item): - return item if type(item) == UserRank else UserRank[item] + return item if type(item) == UserRank else UserRank[item.upper()] class Permission(enum.Enum): @@ -376,7 +376,7 @@ class NotificationType(enum.Enum): @classmethod def coerce(cls, item): - return item if type(item) == NotificationType else NotificationType[item] + return item if type(item) == NotificationType else NotificationType[item.upper()] class Notification(db.Model):