Преглед на файлове

Add tests for user database.

cixo преди 8 месеца
родител
ревизия
7537453986
променени са 4 файла, в които са добавени 36 реда и са изтрити 2 реда
  1. BIN
      002-test.db
  2. 2 1
      assets/__init__.py
  3. 1 1
      assets/user_loader.py
  4. 33 0
      tests/002-users.py

BIN
002-test.db


+ 2 - 1
assets/__init__.py

@@ -1,5 +1,6 @@
 from .password import password
 from .user import user
 from .user import user_builder
+from .user_loader import user_loader
 from .database import database
-from .apikey import apikey
+from .apikey import apikey

+ 1 - 1
assets/user_loader.py

@@ -160,4 +160,4 @@ class user_loader(sqlmodel.Session):
         if target.id is None:
             return False
 
-        return self.get_by_id(target.id) is not None
+        return self.get_by_id(target.id) is not None

+ 33 - 0
tests/002-users.py

@@ -0,0 +1,33 @@
+import pathlib
+
+current = pathlib.Path(__file__).parent
+root = current.parent
+
+import sys
+sys.path.append(str(root))
+
+import assets
+import sqlmodel
+
+builder = assets.user_builder()
+builder.nick = "test1"
+builder.password = "qwerty"
+
+test1 = builder.result
+
+connection = sqlmodel.create_engine("sqlite:///002-test.db")
+sqlmodel.SQLModel.metadata.create_all(connection)
+
+with assets.user_loader(connection) as loader:
+    print("Register: " + str(loader.register(test1)))
+
+    logged = loader.login("test1", "qwerty")
+    print("Logged user apikey: " + str(logged.apikey))
+
+    bad_psk = loader.login("test1", "qweee")
+    print("Bad password user: " + str(bad_psk))
+
+    logged.apikey = assets.apikey()
+    loader.save(logged)
+    print("Logged user apikey after change: " + str(logged.apikey))
+