diff --git a/aurweb/models/package_dependency.py b/aurweb/models/package_dependency.py index 0bd84073..b7bee246 100644 --- a/aurweb/models/package_dependency.py +++ b/aurweb/models/package_dependency.py @@ -1,4 +1,4 @@ -from sqlalchemy import Column, ForeignKey, Integer +from sqlalchemy import Column, ForeignKey, Integer, String from sqlalchemy.exc import IntegrityError from sqlalchemy.orm import backref, relationship @@ -16,7 +16,7 @@ class PackageDependency(Base): nullable=False) Package = relationship( "Package", backref=backref("package_dependencies", lazy="dynamic"), - foreign_keys=[PackageID], lazy="select") + foreign_keys=[PackageID]) DepTypeID = Column( Integer, ForeignKey("DependencyTypes.ID", ondelete="NO ACTION"), @@ -24,9 +24,11 @@ class PackageDependency(Base): DependencyType = relationship( "DependencyType", backref=backref("package_dependencies", lazy="dynamic"), - foreign_keys=[DepTypeID], lazy="select") + foreign_keys=[DepTypeID]) - __mapper_args__ = {"primary_key": [PackageID, DepTypeID]} + DepName = Column(String(255), nullable=False) + + __mapper_args__ = {"primary_key": [PackageID, DepName]} def __init__(self, Package: aurweb.models.package.Package = None, diff --git a/test/test_package_dependency.py b/test/test_package_dependency.py index fc21a08c..d39091aa 100644 --- a/test/test_package_dependency.py +++ b/test/test_package_dependency.py @@ -2,7 +2,7 @@ import pytest from sqlalchemy.exc import IntegrityError -from aurweb.db import create, query +from aurweb.db import commit, create, query from aurweb.models.account_type import AccountType from aurweb.models.dependency_type import DependencyType from aurweb.models.package import Package @@ -49,9 +49,8 @@ def test_package_dependencies(): makedepends = query(DependencyType, DependencyType.Name == "makedepends").first() - pkgdep = create(PackageDependency, Package=package, - DependencyType=makedepends, - DepName="test-dep") + pkgdep.DependencyType = makedepends + commit() assert pkgdep.DepName == "test-dep" assert pkgdep.Package == package assert pkgdep.DependencyType == makedepends @@ -60,9 +59,8 @@ def test_package_dependencies(): checkdepends = query(DependencyType, DependencyType.Name == "checkdepends").first() - pkgdep = create(PackageDependency, Package=package, - DependencyType=checkdepends, - DepName="test-dep") + pkgdep.DependencyType = checkdepends + commit() assert pkgdep.DepName == "test-dep" assert pkgdep.Package == package assert pkgdep.DependencyType == checkdepends @@ -71,9 +69,8 @@ def test_package_dependencies(): optdepends = query(DependencyType, DependencyType.Name == "optdepends").first() - pkgdep = create(PackageDependency, Package=package, - DependencyType=optdepends, - DepName="test-dep") + pkgdep.DependencyType = optdepends + commit() assert pkgdep.DepName == "test-dep" assert pkgdep.Package == package assert pkgdep.DependencyType == optdepends