mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-20 18:59:07 -05:00
Profiles, the wiki, comments, docstrings, command output and schema descriptions carried em-dashes, clause-joining semicolons, unicode arrows, box-drawing banners and check-mark glyphs. Each sentence was rewritten rather than having its character swapped. Hashes, paths, source_ref values and every cited file:line are unchanged, which a comparison of each parsed profile against the previous revision confirms. validate_pr comments now say PASS and FAIL in words, and source_ref values in a profile's structured blocks render as code. test_prose_style fails if any of these comes back, in tracked files or in the generated site.
37 lines
1.2 KiB
Python
37 lines
1.2 KiB
Python
"""A pack limited to some systems carries those systems' core extras.
|
|
|
|
With --platform and --system, the full source emptied the core extras, so
|
|
`--source full` and `--source platform` built the same pack under two
|
|
names, while the split packs, built per system, carried them.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
import sys
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
REPO_ROOT = Path(__file__).resolve().parents[1]
|
|
sys.path.insert(0, str(REPO_ROOT / "scripts"))
|
|
|
|
from generate_pack import _extras_for_systems # noqa: E402
|
|
|
|
|
|
class SystemExtras(unittest.TestCase):
|
|
def test_extras_follow_their_system(self):
|
|
extras = [
|
|
{"name": "a", "source_system": "sony-playstation"},
|
|
{"name": "b", "source_system": "sega-saturn"},
|
|
{"name": "c", "source_systems": ["sony-playstation", "sony-psp"]},
|
|
]
|
|
picked = [e["name"] for e in _extras_for_systems(extras, ["sony-playstation"])]
|
|
self.assertEqual(picked, ["a", "c"])
|
|
|
|
def test_full_source_does_not_empty_them(self):
|
|
source = (REPO_ROOT / "scripts" / "generate_pack.py").read_text(encoding="utf-8")
|
|
self.assertNotIn('elif system_filter and source != "truth":\n core_files = []', source)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|