mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-09-29 18:16:43 +00:00
Merge develop: combine the i18n test fixture with #363
Both message batches seeded locale copies at the same point of test_command_descriptions.py. The two blocks are independent — one seeds the backup messages, the other the storage ones — so they are merged into a single block that reads and writes the fixture once. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -90,18 +90,31 @@ class CommandDescriptionsTests(unittest.TestCase):
|
||||
path = root / lang / "common.json"
|
||||
path.parent.mkdir()
|
||||
shutil.copyfile(ROOT / f"AppImage/messages/{lang}/common.json", path)
|
||||
# Model steady state after automation fills this intentional new key.
|
||||
# Runtime missing-key fallback is tested separately in test_storage_messages.cjs.
|
||||
# This steady-state fixture assumes generation already finished.
|
||||
# Seed only the keys the two message PRs introduce; keep the
|
||||
# recovered command arrays and the repo catalogs exact. Runtime
|
||||
# missing-key fallback is covered by the JSX seam tests and by
|
||||
# test_storage_messages.cjs.
|
||||
if lang != "en":
|
||||
messages = json.loads(path.read_text())
|
||||
messages["storage"].setdefault("savedSmartData", catalog("en")["storage"]["savedSmartData"])
|
||||
report = messages["storage"]["smartReport"]
|
||||
temporary = json.loads(path.read_text())
|
||||
for section, key in (
|
||||
("archives", "emptyMessage"),
|
||||
("destinations", "backupsKeptMessage"),
|
||||
("destinations", "localAttachHelpMessage"),
|
||||
):
|
||||
temporary["backup"][section].setdefault(
|
||||
key, catalog("en")["backup"][section][key])
|
||||
temporary["storage"].setdefault(
|
||||
"savedSmartData", catalog("en")["storage"]["savedSmartData"])
|
||||
report = temporary["storage"]["smartReport"]
|
||||
source_report = catalog("en")["storage"]["smartReport"]
|
||||
for key in ("passedAssessment", "noReallocatedSectorsReported", "passedMeaningTitle", "passedMeaning"):
|
||||
for key in ("passedAssessment", "noReallocatedSectorsReported",
|
||||
"passedMeaningTitle", "passedMeaning"):
|
||||
report.setdefault(key, source_report[key])
|
||||
for key in ("passedTitle", "passedText"):
|
||||
report["recommendations"].setdefault(key, source_report["recommendations"][key])
|
||||
path.write_text(json.dumps(messages))
|
||||
report["recommendations"].setdefault(
|
||||
key, source_report["recommendations"][key])
|
||||
path.write_text(json.dumps(temporary, ensure_ascii=False))
|
||||
before = {p: p.read_bytes() for p in root.glob("*/common.json")}
|
||||
argv = [str(SCRIPT), "--source", str(root / "en/common.json"),
|
||||
"--messages-dir", str(root), "--languages", languages, "--sleep", "0"]
|
||||
|
||||
Reference in New Issue
Block a user