mirror of
https://github.com/aclist/dztui.git
synced 2026-08-25 17:32:36 +02:00
chore: update tests
This commit is contained in:
parent
77505db621
commit
f849cbc183
@ -17,22 +17,28 @@ def has_new_config(config: Path) -> bool:
|
|||||||
return config.exists()
|
return config.exists()
|
||||||
|
|
||||||
|
|
||||||
|
def convert_cols_file(res: Path) -> dict[str, int] | None:
|
||||||
|
j = read_json(res)
|
||||||
|
cols = j["cols"]
|
||||||
|
# NOTE: implies prior conversion
|
||||||
|
if "View" in cols:
|
||||||
|
return None
|
||||||
|
# NOTE: user may not have changed these widths in API 6
|
||||||
|
try:
|
||||||
|
cols["View"] = cols.pop("Perspective")
|
||||||
|
cols["Max"] = cols.pop("Maximum")
|
||||||
|
except Exception:
|
||||||
|
pass
|
||||||
|
return j
|
||||||
|
|
||||||
|
|
||||||
def migrate_cols_file(res: Path) -> None:
|
def migrate_cols_file(res: Path) -> None:
|
||||||
# NOTE: filename "dzg.columns.json" is API 7 spec
|
# NOTE: filename "dzg.columns.json" is API 7 spec
|
||||||
old_res = Path.home() / LEGACY_COLS_PATH
|
old_res = Path.home() / LEGACY_COLS_PATH
|
||||||
if old_res.is_file():
|
if old_res.is_file():
|
||||||
j = read_json(old_res)
|
j = convert_cols_file(old_res)
|
||||||
cols = j["cols"]
|
if j is not None:
|
||||||
# NOTE: implies prior conversion
|
write_json(j, res)
|
||||||
if "View" in cols:
|
|
||||||
return
|
|
||||||
# NOTE: user may not have changed these widths in API 6
|
|
||||||
try:
|
|
||||||
cols["View"] = cols.pop("Perspective")
|
|
||||||
cols["Max"] = cols.pop("Maximum")
|
|
||||||
except Exception:
|
|
||||||
pass
|
|
||||||
write_json(j, res)
|
|
||||||
|
|
||||||
|
|
||||||
def copy_state_files(state_path: Path) -> None:
|
def copy_state_files(state_path: Path) -> None:
|
||||||
|
|||||||
14
tests/fixtures/columns_1
vendored
Normal file
14
tests/fixtures/columns_1
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
"cols": {
|
||||||
|
"Name": 1,
|
||||||
|
"Map": 1,
|
||||||
|
"Gametime": 1,
|
||||||
|
"Players": 1,
|
||||||
|
"Queue": 1,
|
||||||
|
"IP": 1,
|
||||||
|
"Qport": 1,
|
||||||
|
"Ping": 1,
|
||||||
|
"Maximum": 1,
|
||||||
|
"Perspective": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
12
tests/fixtures/columns_2
vendored
Normal file
12
tests/fixtures/columns_2
vendored
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"cols": {
|
||||||
|
"Name": 398,
|
||||||
|
"Map": 181,
|
||||||
|
"Gametime": 151,
|
||||||
|
"Players": 119,
|
||||||
|
"Queue": 96,
|
||||||
|
"IP": 247,
|
||||||
|
"Qport": 94,
|
||||||
|
"Ping": 253
|
||||||
|
}
|
||||||
|
}
|
||||||
13
tests/fixtures/columns_3
vendored
Normal file
13
tests/fixtures/columns_3
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"cols": {
|
||||||
|
"Name": 1,
|
||||||
|
"Map": 1,
|
||||||
|
"Gametime": 1,
|
||||||
|
"Players": 1,
|
||||||
|
"Queue": 1,
|
||||||
|
"IP": 1,
|
||||||
|
"Qport": 1,
|
||||||
|
"Ping": 1,
|
||||||
|
"View": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
33
tests/test_columns.py
Normal file
33
tests/test_columns.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
import pytest
|
||||||
|
|
||||||
|
from dzgui.init.migrate import convert_cols_file
|
||||||
|
from tests.fixtures import fixture_path
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def columns_with_perspective():
|
||||||
|
return fixture_path("columns_1")
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def columns_without_perspective():
|
||||||
|
return fixture_path("columns_2")
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def columns_with_view():
|
||||||
|
return fixture_path("columns_3")
|
||||||
|
|
||||||
|
@pytest.mark.config
|
||||||
|
def test_columns_with_perspective(columns_with_perspective):
|
||||||
|
j = convert_cols_file(columns_with_perspective)
|
||||||
|
assert "View" in j["cols"]
|
||||||
|
assert "Max" in j["cols"]
|
||||||
|
|
||||||
|
@pytest.mark.config
|
||||||
|
def test_columns_without_perspective(columns_without_perspective):
|
||||||
|
j = convert_cols_file(columns_without_perspective)
|
||||||
|
assert "View" not in j["cols"]
|
||||||
|
assert "Max" not in j["cols"]
|
||||||
|
|
||||||
|
@pytest.mark.config
|
||||||
|
def test_columns_with_view(columns_with_view):
|
||||||
|
j = convert_cols_file(columns_with_view)
|
||||||
|
assert j is None
|
||||||
Loading…
Reference in New Issue
Block a user