mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-09-04 06:56:43 +08:00
feat(media): aggregate aliases from enabled metadata sources
This commit is contained in:
@@ -15,7 +15,6 @@ from app.runtime.extensions.module.contracts import (
|
||||
list_explicit_module_contracts,
|
||||
)
|
||||
|
||||
|
||||
RUNTIME_BASELINE = (
|
||||
Path(__file__).parent / "fixtures" / "architecture" / "runtime-contract-baseline.json"
|
||||
)
|
||||
@@ -284,6 +283,18 @@ def test_recognition_match_and_cache_contracts_share_sync_async_semantics() -> N
|
||||
assert contract.required_parameters
|
||||
|
||||
|
||||
def test_media_auxiliary_contract_merges_every_enabled_provider() -> None:
|
||||
"""附加信息能力应合并全部 provider 列表,不能被首个插件结果短路。"""
|
||||
contract = get_module_method_contract("get_media_auxiliary_info")
|
||||
|
||||
assert contract is get_module_method_contract("async_get_media_auxiliary_info")
|
||||
assert contract.family == "media-recognition"
|
||||
assert contract.aggregation is ModuleResultAggregation.ORDERED_LIST_MERGE
|
||||
assert contract.result_shape is ModuleResultShape.LIST
|
||||
assert contract.plugin_short_circuit is False
|
||||
assert contract.required_parameters == ("mediainfo", "media_source", "metainfo")
|
||||
|
||||
|
||||
def test_torrent_filter_contract_preserves_original_argument_list_merge() -> None:
|
||||
"""种子过滤 provider 应接收原始参数并有序合并结果,不得误用单参数接力。"""
|
||||
contract = get_module_method_contract("filter_torrents")
|
||||
|
||||
Reference in New Issue
Block a user