From 08c02683a5dd2041d42498e7bb2c696e964d69f2 Mon Sep 17 00:00:00 2001
From: DAVID Axel <axel.david@etu.univ-amu.fr>
Date: Wed, 3 May 2023 04:43:50 +0200
Subject: [PATCH] refactor: :recycle: Use LowercaseStrEnum instead of Enum

---
 src/vigenere_api/api/app.py                         |  1 -
 src/vigenere_api/api/utils/open_api_handler.py      |  1 -
 src/vigenere_api/api/utils/open_api_route_filter.py |  2 --
 src/vigenere_api/api/v1/controllers/caesar/docs.py  | 10 +++++-----
 src/vigenere_api/helpers/__init__.py                |  1 +
 src/vigenere_api/models/caesar.py                   |  2 ++
 src/vigenere_api/version/version.py                 |  3 +--
 7 files changed, 9 insertions(+), 11 deletions(-)

diff --git a/src/vigenere_api/api/app.py b/src/vigenere_api/api/app.py
index ef2af34..7dfd7f2 100644
--- a/src/vigenere_api/api/app.py
+++ b/src/vigenere_api/api/app.py
@@ -73,7 +73,6 @@ def __fallback() -> str:
     error_text
         str
     """
-
     return "OOPS! Nothing was found here!"
 
 
diff --git a/src/vigenere_api/api/utils/open_api_handler.py b/src/vigenere_api/api/utils/open_api_handler.py
index 4b46366..33c6911 100644
--- a/src/vigenere_api/api/utils/open_api_handler.py
+++ b/src/vigenere_api/api/utils/open_api_handler.py
@@ -47,7 +47,6 @@ class VigenereAPIOpenAPIHandler(OpenAPIHandler):
         VersionTypeError
             Thrown if 'version' is not a Version object.
         """
-
         if not isinstance(version, Version):
             raise VersionTypeError(version)
 
diff --git a/src/vigenere_api/api/utils/open_api_route_filter.py b/src/vigenere_api/api/utils/open_api_route_filter.py
index f8b9fee..28c88a4 100644
--- a/src/vigenere_api/api/utils/open_api_route_filter.py
+++ b/src/vigenere_api/api/utils/open_api_route_filter.py
@@ -44,7 +44,6 @@ def get_route_filter(excluded: Collection[str]) -> Callable[[str, Route], bool]:
     filter
         Callable[[str, Route], bool]
     """
-
     if not isinstance(excluded, Collection):
         raise ExcludedPathsTypeError(excluded)
 
@@ -78,7 +77,6 @@ def get_route_filter(excluded: Collection[str]) -> Callable[[str, Route], bool]:
         route_shown
             bool
         """
-
         if not isinstance(path, str):
             raise PathTypeError(path)
 
diff --git a/src/vigenere_api/api/v1/controllers/caesar/docs.py b/src/vigenere_api/api/v1/controllers/caesar/docs.py
index e7f5cf4..118bb44 100644
--- a/src/vigenere_api/api/v1/controllers/caesar/docs.py
+++ b/src/vigenere_api/api/v1/controllers/caesar/docs.py
@@ -18,7 +18,7 @@
 """The caesar controller's documentation."""
 
 from dataclasses import dataclass
-from enum import Enum, unique
+from enum import auto, unique
 from http import HTTPStatus
 from typing import final
 
@@ -30,17 +30,17 @@ from blacksheep.server.openapi.common import (
     ResponseInfo,
 )
 
+from strenum import LowercaseStrEnum
 from vigenere_api.models import CaesarData
 
 
 @final
 @unique
-class CaesarOperation(Enum):
+class CaesarOperation(LowercaseStrEnum):
     """All Caesar operations."""
 
-    value: str
-    CIPHER = "cipher"
-    DECIPHER = "decipher"
+    CIPHER = auto()
+    DECIPHER = auto()
 
 
 CAESAR_DATA1 = (
diff --git a/src/vigenere_api/helpers/__init__.py b/src/vigenere_api/helpers/__init__.py
index 5590ebf..36255b6 100644
--- a/src/vigenere_api/helpers/__init__.py
+++ b/src/vigenere_api/helpers/__init__.py
@@ -19,4 +19,5 @@
 from .errors import VigenereAPITypeError
 from .model import Model
 
+
 __all__ = ["Model", "VigenereAPITypeError"]
diff --git a/src/vigenere_api/models/caesar.py b/src/vigenere_api/models/caesar.py
index 9455ef4..e56f246 100644
--- a/src/vigenere_api/models/caesar.py
+++ b/src/vigenere_api/models/caesar.py
@@ -23,6 +23,7 @@ from typing import final, Union
 from pydantic import StrictInt, StrictStr, validator
 
 from vigenere_api.helpers import Model
+
 from .errors import (
     AlgorithmKeyTypeError,
     AlgorithmTextTypeError,
@@ -35,6 +36,7 @@ from .errors import (
 )
 from .helper import move_char
 
+
 Key = Union[StrictInt, StrictStr]
 
 
diff --git a/src/vigenere_api/version/version.py b/src/vigenere_api/version/version.py
index e18282a..775fa33 100644
--- a/src/vigenere_api/version/version.py
+++ b/src/vigenere_api/version/version.py
@@ -21,6 +21,7 @@ from typing import final
 from pydantic import validator
 
 from vigenere_api.helpers import Model
+
 from .errors import (
     InvalidMajorValueError,
     InvalidMinorValueError,
@@ -141,7 +142,6 @@ class Version(Model):
         version
             str
         """
-
         return f"{self.major}.{self.minor}.{self.patch}"
 
 
@@ -154,5 +154,4 @@ def get_version() -> Version:
     version
         Version
     """
-
     return Version(major=1, minor=0, patch=0)
-- 
GitLab