mirror of
https://github.com/aclist/dztui.git
synced 2026-10-30 22:52:42 +01:00
feat: dzgui 7 alpha
This commit is contained in:
1 parent
1acdbd58c5
commit
2e5b771137
150 files changed
+10359
No files matched your search
@@ -0,0 +1,79 @@
|
||||
import json
|
||||
import pytest
|
||||
|
||||
from dzgui.config.query import get_config
|
||||
from dzgui.config.xdg import get_xdg_paths, parse_filepaths
|
||||
from dzgui.config import convert
|
||||
from tests.fixtures import fixture_path
|
||||
|
||||
pytestmark = pytest.mark.config
|
||||
|
||||
@pytest.fixture
|
||||
def legacy_config():
|
||||
return fixture_path("dztuirc_one")
|
||||
|
||||
@pytest.fixture
|
||||
def keys():
|
||||
return [
|
||||
"bm_api",
|
||||
"fav_server",
|
||||
"fav_label",
|
||||
"name",
|
||||
"debug",
|
||||
"branch",
|
||||
"fullscreen",
|
||||
"steam_api",
|
||||
"auto_install",
|
||||
"default_steam_path",
|
||||
"client",
|
||||
"ip_list",
|
||||
"use_miles"
|
||||
]
|
||||
|
||||
@pytest.fixture
|
||||
def config():
|
||||
paths = get_xdg_paths()
|
||||
xdg = parse_filepaths(paths)
|
||||
return get_config(xdg.config)
|
||||
|
||||
|
||||
@pytest.mark.post_install
|
||||
def test_invalid_config_value(config):
|
||||
with pytest.raises(Exception):
|
||||
assert config["foo"] is None
|
||||
|
||||
|
||||
@pytest.mark.post_install
|
||||
def test_default_config_values(keys, config):
|
||||
for key in keys:
|
||||
assert config[key] is not None
|
||||
|
||||
|
||||
@pytest.mark.post_install
|
||||
def test_contains_invalid_values(keys, config):
|
||||
for key in config:
|
||||
assert key in keys
|
||||
|
||||
|
||||
@pytest.mark.parametrize("fixture, expect", [
|
||||
("dztuirc_one", (False, True, True)),
|
||||
("dztuirc_two", (False, False, False)),
|
||||
])
|
||||
def test_bool_conversion(fixture, expect):
|
||||
fixture = fixture_path(fixture)
|
||||
j = convert.rc2json(fixture)
|
||||
j = json.loads(j)
|
||||
assert j["fullscreen"] == expect[0]
|
||||
assert j["debug"] == expect[1]
|
||||
assert j["auto_install"] == expect[2]
|
||||
assert not j["use_miles"]
|
||||
|
||||
|
||||
def test_key_conversion(legacy_config):
|
||||
j = convert.rc2json(legacy_config)
|
||||
j = json.loads(j)
|
||||
keys = ["api_key", "staging_dir", "src_path", "steam_path", "preferred_client"]
|
||||
for key in keys:
|
||||
assert key not in j
|
||||
|
||||
# TODO: test that when a config file is created from scratch, it contains all values
|
||||
Reference in new issue
Block a user