aboutsummaryrefslogtreecommitdiff
path: root/gn_auth/auth/errors.py
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2024-04-24 11:34:09 +0300
committerFrederick Muriuki Muriithi2024-04-24 11:34:09 +0300
commit6d61ef8de94fa87cb6ee31cc57f1f37dd04d097d (patch)
tree24234aa8fa1c4b6227322aa3c58e130697cb96bb /gn_auth/auth/errors.py
parentb317cd7e3684bf7c034ad0a1bb208d55fb87b164 (diff)
downloadgn-auth-6d61ef8de94fa87cb6ee31cc57f1f37dd04d097d.tar.gz
Move the errors module up one level to break circular dependencies.
Diffstat (limited to 'gn_auth/auth/errors.py')
-rw-r--r--gn_auth/auth/errors.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/gn_auth/auth/errors.py b/gn_auth/auth/errors.py
new file mode 100644
index 0000000..60d6a22
--- /dev/null
+++ b/gn_auth/auth/errors.py
@@ -0,0 +1,41 @@
+"""Authorisation exceptions"""
+
+class AuthorisationError(Exception):
+ """
+ Top-level exception for the `gn3.auth.authorisation` package.
+
+ All exceptions in this package should inherit from this class.
+ """
+ error_code: int = 400
+
+class ForbiddenAccess(AuthorisationError):
+ """Raised for forbidden access."""
+ error_code: int = 403
+
+class UserRegistrationError(AuthorisationError):
+ """Raised whenever a user registration fails"""
+
+class NotFoundError(AuthorisationError):
+ """Raised whenever we try fetching (a/an) object(s) that do(es) not exist."""
+ error_code: int = 404
+
+class InvalidData(AuthorisationError):
+ """
+ Exception if user requests invalid data
+ """
+
+class InconsistencyError(AuthorisationError):
+ """
+ Exception raised due to data inconsistencies
+ """
+ error_code: int = 500
+
+class PasswordError(AuthorisationError):
+ """
+ Raise in case of an error with passwords.
+ """
+
+class UsernameError(AuthorisationError):
+ """
+ Raise in case of an error with a user's name.
+ """