full support of pep517

Since llast upgrade build is broken. Lets fully migrate to
pyproject.toml. Note for maintaners: because data_files option is
deprectated (see https://github.com/pypa/setuptools/discussions/2648)
you will have to install files manually inside your packaging process
This commit is contained in:
2023-08-11 03:01:18 +03:00
parent 3a88d00db0
commit 1baf04998d
34 changed files with 147 additions and 266 deletions

View File

@ -2,7 +2,7 @@ import argparse
from pytest_mock import MockerFixture
from ahriman import version
from ahriman import __version__
from ahriman.application.handlers import ServiceUpdates
from ahriman.core.configuration import Configuration
from ahriman.core.repository import Repository
@ -46,7 +46,7 @@ def test_run_skip(args: argparse.Namespace, configuration: Configuration, reposi
"""
must do not perform any actions if package is up-to-date
"""
package_ahriman.version = f"{version.__version__}-1"
package_ahriman.version = f"{__version__}-1"
args = _default_args(args)
mocker.patch("ahriman.core.repository.Repository.load", return_value=repository)
mocker.patch("ahriman.models.package.Package.from_aur", return_value=package_ahriman)

View File

@ -58,9 +58,11 @@ def test_run_verbose(args: argparse.Namespace, configuration: Configuration, rep
args = _default_args(args)
args.verbose = True
mocker.patch("ahriman.core.repository.Repository.load", return_value=repository)
read_mock = mocker.patch("pathlib.Path.read_text", return_value="")
print_mock = mocker.patch("ahriman.core.formatters.Printer.print")
application_mock = mocker.patch("code.interact")
Shell.run(args, "x86_64", configuration, report=False)
application_mock.assert_called_once_with(local=pytest.helpers.anyvar(int))
read_mock.assert_called_once_with(encoding="utf8")
print_mock.assert_called_once_with(verbose=False)

View File

@ -3,6 +3,7 @@ import argparse
from pathlib import Path
from pytest_mock import MockerFixture
from ahriman.application import ahriman
from ahriman.application.handlers import Handler
from ahriman.models.action import Action
from ahriman.models.build_status import BuildStatusEnum
@ -822,10 +823,6 @@ def test_run(args: argparse.Namespace, mocker: MockerFixture) -> None:
args.architecture = "x86_64"
args.handler = Handler
from ahriman.application import ahriman
mocker.patch.object(ahriman, "__name__", "__main__")
mocker.patch("argparse.ArgumentParser.parse_args", return_value=args)
exit_mock = mocker.patch("sys.exit")
ahriman.run()
exit_mock.assert_called_once_with(1)
assert ahriman.run() == 1

View File

@ -6,7 +6,7 @@ from pathlib import Path
from pytest_mock import MockerFixture
from unittest.mock import call as MockCall
from ahriman import version
from ahriman import __version__
from ahriman.application.lock import Lock
from ahriman.core.configuration import Configuration
from ahriman.core.exceptions import DuplicateRunError, UnsafeRunError
@ -33,7 +33,7 @@ def test_check_version(lock: Lock, mocker: MockerFixture) -> None:
must check version correctly
"""
mocker.patch("ahriman.core.status.client.Client.get_internal",
return_value=InternalStatus(status=BuildStatus(), version=version.__version__))
return_value=InternalStatus(status=BuildStatus(), version=__version__))
logging_mock = mocker.patch("logging.Logger.warning")
lock.check_version()

View File

@ -3,7 +3,7 @@ import pytest
from unittest.mock import MagicMock, PropertyMock
from ahriman import version
from ahriman import __version__
from ahriman.models.aur_package import AURPackage
from ahriman.models.build_status import BuildStatus, BuildStatusEnum
from ahriman.models.counters import Counters
@ -55,7 +55,7 @@ def internal_status(counters: Counters) -> InternalStatus:
return InternalStatus(status=BuildStatus(),
architecture="x86_64",
packages=counters,
version=version.__version__,
version=__version__,
repository="aur-clone")

View File

@ -1,8 +0,0 @@
import ahriman.version as version
def test_version() -> None:
"""
version must not be empty
"""
assert getattr(version, "__version__")

View File

@ -3,7 +3,7 @@ import pytest
from aiohttp.web import Application
from pytest_mock import MockerFixture
from ahriman import version
from ahriman import __version__
from ahriman.web.apispec import _info, _security, _servers, setup_apispec
@ -13,7 +13,7 @@ def test_info() -> None:
"""
info = _info()
assert info["title"] == "ahriman"
assert info["version"] == version.__version__
assert info["version"] == __version__
def test_security() -> None:

View File

@ -3,8 +3,7 @@ import pytest
from aiohttp.test_utils import TestClient
from pytest_mock import MockerFixture
import ahriman.version as version
from ahriman import __version__
from ahriman.models.build_status import BuildStatusEnum
from ahriman.models.internal_status import InternalStatus
from ahriman.models.package import Package
@ -37,7 +36,7 @@ async def test_get(client: TestClient, package_ahriman: Package) -> None:
json = await response.json()
assert not response_schema.validate(json)
assert json["version"] == version.__version__
assert json["version"] == __version__
assert json["packages"]
assert json["packages"]["total"] == 1