#11 REFACTOR: Moved all tests into test classes
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import pytest
|
||||
import sqlite3
|
||||
from tests.unit.database.database_test_class import TestDatabase
|
||||
from controllers.database.user import UserController
|
||||
from models.users.customer import Customer
|
||||
from models.users.seller import Seller
|
||||
@@ -22,53 +23,53 @@ seller = Seller(
|
||||
"987654321"
|
||||
)
|
||||
|
||||
# Tests a new user can be created
|
||||
|
||||
class TestUsers(TestDatabase):
|
||||
""" Class to encapsulate all of the user
|
||||
datbase tests
|
||||
"""
|
||||
|
||||
def test_create_user():
|
||||
db = UserController()
|
||||
db.create(customer)
|
||||
|
||||
# Tests the database maintains integrity when we try
|
||||
# and add a user with the same details
|
||||
|
||||
|
||||
def test_duplicate_user():
|
||||
db = UserController()
|
||||
with pytest.raises(sqlite3.IntegrityError):
|
||||
def test_create_user(self):
|
||||
""" Tests a new user can be created """
|
||||
db = UserController()
|
||||
db.create(customer)
|
||||
|
||||
# Test we the same user details get returned from the database
|
||||
def test_duplicate_user(self):
|
||||
""" Tests the database maintains integrity when we try
|
||||
and add a user with the same details
|
||||
"""
|
||||
db = UserController()
|
||||
with pytest.raises(sqlite3.IntegrityError):
|
||||
db.create(customer)
|
||||
|
||||
def test_read_user(self):
|
||||
""" Test we the same user details get returned from the database """
|
||||
db = UserController()
|
||||
|
||||
def test_read_user():
|
||||
db = UserController()
|
||||
# Test the same user is returned
|
||||
user = db.read(customer.username)
|
||||
assert isinstance(user, Customer)
|
||||
|
||||
# Test the same user is returned
|
||||
user = db.read(customer.username)
|
||||
assert isinstance(user, Customer)
|
||||
# Update the ID on the item as database assigns new id
|
||||
customer.id = user.id
|
||||
assert user.__dict__ == customer.__dict__
|
||||
|
||||
# Update the ID on the item as database assigns new id
|
||||
customer.id = user.id
|
||||
assert user.__dict__ == customer.__dict__
|
||||
def test_create_seller(self):
|
||||
""" Tests a new seller can be created """
|
||||
db = UserController()
|
||||
db.create(seller)
|
||||
|
||||
def test_read_seller(self):
|
||||
""" Test that the same seller details get
|
||||
returned from the database
|
||||
"""
|
||||
db = UserController()
|
||||
|
||||
# Tests a new seller can be created
|
||||
def test_create_seller():
|
||||
db = UserController()
|
||||
db.create(seller)
|
||||
# Test the same user is returned
|
||||
user = db.read(seller.username)
|
||||
assert isinstance(user, Seller)
|
||||
|
||||
# Test that the same seller details get returned from the database
|
||||
|
||||
|
||||
def test_read_seller():
|
||||
db = UserController()
|
||||
|
||||
# Test the same user is returned
|
||||
user = db.read(seller.username)
|
||||
assert isinstance(user, Seller)
|
||||
|
||||
# Update the ID on the item as database assigns new id
|
||||
seller.id = user.id
|
||||
user.store = ""
|
||||
assert user.__dict__ == seller.__dict__
|
||||
# Update the ID on the item as database assigns new id
|
||||
seller.id = user.id
|
||||
user.store = ""
|
||||
assert user.__dict__ == seller.__dict__
|
||||
|
||||
Reference in New Issue
Block a user