Bladeren bron

refactor(app): move to dedicated module and split helpers/exceptions

Librellium 1 week geleden
bovenliggende
commit
8d4c6e35da
4 gewijzigde bestanden met toevoegingen van 30 en 24 verwijderingen
  1. 3 0
      anonflow/app/__init__.py
  2. 7 24
      anonflow/app/app.py
  3. 1 0
      anonflow/app/exceptions.py
  4. 19 0
      anonflow/app/helpers.py

+ 3 - 0
anonflow/app/__init__.py

@@ -0,0 +1,3 @@
+from .app import Application
+
+__all__ = ["Application"]

+ 7 - 24
anonflow/app.py → anonflow/app/app.py

@@ -1,16 +1,11 @@
 import logging
-from contextlib import contextmanager
-from typing import Any, Generator, Optional
+from typing import Optional
 
 from aiogram import Bot, Dispatcher
 from aiogram.client.bot import DefaultBotProperties
 from aiogram.fsm.storage.memory import MemoryStorage
 
-from anonflow import __version_str__
-from anonflow.bot.builders import (
-    build_middlewares,
-    build_routers
-)
+from anonflow import __version_str__, paths
 from anonflow.bot.transport import (
     DeliveryService,
     ResponsesRouter
@@ -34,24 +29,12 @@ from anonflow.services import (
 )
 from anonflow.translator import Translator
 
-from . import paths
-
-
-class NotInitializedError(RuntimeError): ...
-
-@contextmanager
-def require(obj, *names) -> Generator[Any, Any, None]:
-    values = []
-    for name in names:
-        value = getattr(obj, name, None)
-        if value is None:
-            raise NotInitializedError(name)
-        values.append(value)
+from .builders import (
+    build_middlewares,
+    build_routers
+)
+from .helpers import require
 
-    if len(values) == 1:
-        yield values[0]
-    else:
-        yield tuple(values)
 
 class Application:
     def __init__(self):

+ 1 - 0
anonflow/app/exceptions.py

@@ -0,0 +1 @@
+class NotInitializedError(RuntimeError): ...

+ 19 - 0
anonflow/app/helpers.py

@@ -0,0 +1,19 @@
+from contextlib import contextmanager
+from typing import Any, Generator
+
+from .exceptions import NotInitializedError
+
+
+@contextmanager
+def require(obj, *names) -> Generator[Any, Any, None]:
+    values = []
+    for name in names:
+        value = getattr(obj, name, None)
+        if value is None:
+            raise NotInitializedError(name)
+        values.append(value)
+
+    if len(values) == 1:
+        yield values[0]
+    else:
+        yield tuple(values)