mirror of
https://github.com/arcan1s/ahriman.git
synced 2025-07-18 00:09:56 +00:00
* add models tests (#1) also replace single quote to double one to confort PEP docstring + move _check_output to class properties to make it available for mocking * alpm tests implementation * try to replace os with pathlib * update tests for pathlib * fix includes glob and trim version from dependencies * build_tools package tests * repository component tests * add sign tests * complete status tests * handle exceptions in actual_version calls * complete core tests * move configuration to root conftest * application tests * complete application tests * change copyright to more generic one * base web tests * complete web tests * complete testkit also add argument parsers test
24 lines
657 B
Python
24 lines
657 B
Python
from pytest_mock import MockerFixture
|
|
from unittest import mock
|
|
|
|
from ahriman.models.repository_paths import RepositoryPaths
|
|
|
|
|
|
def test_create_tree(repository_paths: RepositoryPaths, mocker: MockerFixture) -> None:
|
|
"""
|
|
must create whole tree
|
|
"""
|
|
paths = {
|
|
prop
|
|
for prop in dir(repository_paths)
|
|
if not prop.startswith("_") and prop not in ("architecture", "create_tree", "root")
|
|
}
|
|
mkdir_mock = mocker.patch("pathlib.Path.mkdir")
|
|
|
|
repository_paths.create_tree()
|
|
mkdir_mock.assert_has_calls(
|
|
[
|
|
mock.call(mode=0o755, parents=True, exist_ok=True)
|
|
for _ in paths
|
|
])
|