fix: open no System.dat section libretro lacks

libretro titles each section with the system as it spells it,
"Commodore - Amiga". An addition for a system it has no section for
opened one under our slug: 21 sections came out as commodore-c64,
quake, laseractive or xrick, which no libretro DAT carries. An addition
now lands only in a section the original holds and is otherwise counted
as left out, so the export keeps the original's 66 sections. A platform
entry is always written, under its own section.
This commit is contained in:
Abdessamad Derraz committed 2026-10-20 17:21:16 +02:00
1 parent a8226dd367
commit f957b5f893
4 files changed
+61 -6

No files matched your search

+3 -1
View File
@@ -275,7 +275,9 @@ class PureDataExportsKeepWhatWeDoNotModel(unittest.TestCase):
for api, digest in (("vulkan", "a"), ("opengl", "b"))
]
systems = {"Sony - PlayStation 2": NativeSystem("Sony - PlayStation 2", files=shaders)}
produced = SystemDat().render(systems, Report(), {})["System.dat"]
original = ('clrmamepro (\n\tname "System"\n)\n\ngame (\n\tname "System"\n'
'\tcomment "Sony - PlayStation 2"\n)\n')
produced = SystemDat().render(systems, Report(), {"System.dat": original})["System.dat"]
self.assertIn("name pcsx2/resources/shaders/vulkan/convert.glsl md5 " + "a" * 32, produced)
self.assertIn("name pcsx2/resources/shaders/opengl/convert.glsl md5 " + "b" * 32, produced)
self.assertEqual(SystemDat().validate(systems, {"System.dat": produced}), [])