mirror of
https://github.com/arcan1s/ahriman.git
synced 2025-07-30 22:29:56 +00:00
This mr improves implicit dependencies processing by reducing tree leaves by using the following algorithm: * remove paths which belong to any base package * remove packages which are (opt)dependencies of one of the package which provides same path. It also tries to handle circular dependencies by excluding them from being "satisfied" * remove packages which are already satisfied by any children path
17 lines
473 B
Python
17 lines
473 B
Python
from ahriman.models.dependencies import Dependencies
|
|
|
|
|
|
def test_post_init() -> None:
|
|
"""
|
|
must remove empty leaves
|
|
"""
|
|
assert Dependencies({"path": ["package"], "empty": []}) == Dependencies({"path": ["package"]})
|
|
|
|
|
|
def test_from_json_view() -> None:
|
|
"""
|
|
must construct and serialize dependencies to json
|
|
"""
|
|
dependencies = Dependencies({"/usr/bin/python3": ["python"]})
|
|
assert Dependencies.from_json(dependencies.view()) == dependencies
|