From 14d80d756fe73039d7e5b7836ad1c343668a7e9f Mon Sep 17 00:00:00 2001 From: Kevin Morris Date: Tue, 30 Nov 2021 18:18:48 -0800 Subject: [PATCH] housekeep(fastapi): rewrite test_package_comaintainer with fixtures Signed-off-by: Kevin Morris --- test/test_package_comaintainer.py | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/test/test_package_comaintainer.py b/test/test_package_comaintainer.py index ff74cddf..e377edc0 100644 --- a/test/test_package_comaintainer.py +++ b/test/test_package_comaintainer.py @@ -3,24 +3,34 @@ import pytest from sqlalchemy.exc import IntegrityError from aurweb import db +from aurweb.models.account_type import USER_ID from aurweb.models.package_base import PackageBase from aurweb.models.package_comaintainer import PackageComaintainer from aurweb.models.user import User -user = pkgbase = None - @pytest.fixture(autouse=True) def setup(db_test): - global user, pkgbase + return + +@pytest.fixture +def user() -> User: with db.begin(): user = db.create(User, Username="test", Email="test@example.org", - RealName="Test User", Passwd="testPassword") + RealName="Test User", Passwd="testPassword", + AccountTypeID=USER_ID) + yield user + + +@pytest.fixture +def pkgbase(user: User) -> PackageBase: + with db.begin(): pkgbase = db.create(PackageBase, Name="test-package", Maintainer=user) + yield pkgbase -def test_package_comaintainer_creation(): +def test_package_comaintainer_creation(user: User, pkgbase: PackageBase): with db.begin(): package_comaintainer = db.create(PackageComaintainer, User=user, PackageBase=pkgbase, Priority=5) @@ -30,16 +40,17 @@ def test_package_comaintainer_creation(): assert package_comaintainer.Priority == 5 -def test_package_comaintainer_null_user_raises_exception(): +def test_package_comaintainer_null_user_raises(pkgbase: PackageBase): with pytest.raises(IntegrityError): PackageComaintainer(PackageBase=pkgbase, Priority=1) -def test_package_comaintainer_null_pkgbase_raises_exception(): +def test_package_comaintainer_null_pkgbase_raises(user: User): with pytest.raises(IntegrityError): PackageComaintainer(User=user, Priority=1) -def test_package_comaintainer_null_priority_raises_exception(): +def test_package_comaintainer_null_priority_raises(user: User, + pkgbase: PackageBase): with pytest.raises(IntegrityError): PackageComaintainer(User=user, PackageBase=pkgbase)