From 05bd6e9076d03006358c6862bfb2d95d78eb93b9 Mon Sep 17 00:00:00 2001 From: Kevin Morris Date: Tue, 30 Nov 2021 20:48:01 -0800 Subject: [PATCH] housekeep(fastapi): rewrite test_package_vote with fixtures Signed-off-by: Kevin Morris --- test/test_package_vote.py | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/test/test_package_vote.py b/test/test_package_vote.py index d1ec203b..08edb92d 100644 --- a/test/test_package_vote.py +++ b/test/test_package_vote.py @@ -5,24 +5,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_vote import PackageVote 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=str(), + 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_vote_creation(): +def test_package_vote_creation(user: User, pkgbase: PackageBase): ts = int(datetime.utcnow().timestamp()) with db.begin(): @@ -34,16 +44,16 @@ def test_package_vote_creation(): assert package_vote.VoteTS == ts -def test_package_vote_null_user_raises_exception(): +def test_package_vote_null_user_raises(pkgbase: PackageBase): with pytest.raises(IntegrityError): PackageVote(PackageBase=pkgbase, VoteTS=1) -def test_package_vote_null_pkgbase_raises_exception(): +def test_package_vote_null_pkgbase_raises(user: User): with pytest.raises(IntegrityError): PackageVote(User=user, VoteTS=1) -def test_package_vote_null_votets_raises_exception(): +def test_package_vote_null_votets_raises(user: User, pkgbase: PackageBase): with pytest.raises(IntegrityError): PackageVote(User=user, PackageBase=pkgbase)