With the new preset nesting support, `__preset__` would have lower precedence which isn't ideal since it's meant to serve as a 'apply to all presets in this file'. Now the order of priority is: `inherited presets (top-to-bottom) -> preset itself -> nested subscription presets -> __preset__ -> subscription values`
60 lines
1.8 KiB
Python
60 lines
1.8 KiB
Python
from typing import Dict
|
|
|
|
import pytest
|
|
|
|
from ytdl_sub.config.config_file import ConfigFile
|
|
|
|
|
|
@pytest.fixture
|
|
def config_file() -> ConfigFile:
|
|
return ConfigFile(
|
|
name="config",
|
|
value={
|
|
"configuration": {"working_directory": "."},
|
|
"presets": {
|
|
"parent_preset_0": {
|
|
"nfo_tags": {"tags": {"key-1": "preset_0"}},
|
|
"overrides": {"current_override": "parent_preset_0"},
|
|
},
|
|
"parent_preset_1": {
|
|
"preset": "parent_preset_0",
|
|
"nfo_tags": {
|
|
"nfo_name": "{uid}.nfo",
|
|
"nfo_root": "root",
|
|
"tags": {"key-2": "preset_1"},
|
|
},
|
|
"overrides": {"current_override": "parent_preset_1"},
|
|
},
|
|
"parent_preset_2": {
|
|
"nfo_tags": {
|
|
"nfo_name": "{uid}.nfo",
|
|
"nfo_root": "root",
|
|
"tags": {"key-2": "preset_2", "key-3": "preset_2"},
|
|
},
|
|
"overrides": {"current_override": "parent_preset_2"},
|
|
},
|
|
"parent_preset_3": {
|
|
"preset": ["parent_preset_1", "parent_preset_2"],
|
|
"overrides": {"current_override": "parent_preset_3"},
|
|
},
|
|
"preset_self_loop": {"preset": "preset_self_loop"},
|
|
"preset_loop_0": {"preset": "preset_loop_1"},
|
|
"preset_loop_1": {"preset": "preset_loop_0"},
|
|
},
|
|
},
|
|
)
|
|
|
|
|
|
@pytest.fixture
|
|
def output_options() -> Dict:
|
|
return {
|
|
"output_directory": "some dir",
|
|
"file_name": "{uid}",
|
|
}
|
|
|
|
|
|
@pytest.fixture
|
|
def youtube_video() -> Dict:
|
|
return {
|
|
"url": "youtube.com/watch?v=123abc",
|
|
}
|