#2 Added ability for user to login as seller and added test to verify functionality

This commit is contained in:
2024-01-18 21:11:01 +00:00
parent e7ca108b7f
commit 19165220fa
3 changed files with 43 additions and 3 deletions

View File

@ -26,6 +26,10 @@ class DatabaseController(ABC):
self._conn.close()
print(e)
def __del__(self):
if self._conn != None:
self._conn.close()
""" Takes a dictionary of fields and returns the object
with those fields populated """
def new_instance(self, of: type, with_fields: Mapping[str, Any]):

View File

@ -1,6 +1,7 @@
from .database import DatabaseController
from models.users.user import User
from models.users.customer import Customer
from models.users.seller import Seller
class UserController(DatabaseController):
FIELDS = ['id', 'username', 'password', 'firstName', 'lastName', 'email', 'phone', 'role']
@ -38,7 +39,13 @@ class UserController(DatabaseController):
if row != None:
params = dict(zip(self.FIELDS, row))
obj = self.new_instance(Customer, params)
# Is user a seller
type = Customer
if row[7] == "Seller":
type = Seller
obj = self.new_instance(type, params)
return obj
return None