mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-11-14 22:13:47 -06:00
feat: profile amiberry 8.0.0 built by EmuELEC
EmuELEC 4.8 builds amiberry 452783a (CMakeLists.txt declares 8.0.0). Same paths as 7.1.1, a ROM database with the PPC flash images, which the scan hashes with their config bytes cleared, so no file hash is declared for them. Tests check that ROCKNIX, AmberELEC and EmuELEC resolve their own build, the other platforms the 8.5.0 profile, and that ROCKNIX places its kickstarts at the BIOS root.
This commit is contained in:
1 parent
c182cfa948
commit
bc386e0561
2 files changed
+3311
No files matched your search
File diff suppressed because it is too large.
Load diff
@@ -652,3 +652,48 @@ class AmiberryOnEachPlatform(unittest.TestCase):
|
||||
with self.subTest(platform=platform, name=entry["name"]):
|
||||
self.assertEqual(entry["standalone_path"], f"amiga/{layout}")
|
||||
self.assertNotIn("/", layout.removeprefix("mt32-roms/"))
|
||||
|
||||
|
||||
class AmiberryBuildEachPlatformShips(unittest.TestCase):
|
||||
"""ROCKNIX, AmberELEC and EmuELEC compile older Amiberry revisions: on each
|
||||
the name amiberry is that build, never the 8.5.0 profile."""
|
||||
|
||||
OWN = {"rocknix": "amiberry-5.6.5", "amberelec": "amiberry-7.1.1", "emuelec": "amiberry-8.0.0"}
|
||||
|
||||
@classmethod
|
||||
def setUpClass(cls) -> None:
|
||||
cls.profiles = load_emulator_profiles(str(REPO_ROOT / "emulators"))
|
||||
|
||||
def resolved(self, platform: str) -> set[str]:
|
||||
from common import resolve_platform_cores
|
||||
|
||||
cfg = load_platform_config(platform, str(REPO_ROOT / "platforms"))
|
||||
return {p for p in resolve_platform_cores(cfg, self.profiles) if p.startswith("amiberry")}
|
||||
|
||||
def test_each_platform_resolves_its_own_build(self) -> None:
|
||||
for platform, own in self.OWN.items():
|
||||
with self.subTest(platform=platform):
|
||||
self.assertEqual(self.resolved(platform), {own})
|
||||
|
||||
def test_the_others_keep_the_main_profile(self) -> None:
|
||||
for platform in ("batocera", "knulli", "retrobat", "retropie", "recalbox"):
|
||||
with self.subTest(platform=platform):
|
||||
self.assertEqual(self.resolved(platform), {"amiberry"})
|
||||
|
||||
def test_rocknix_reads_kickstarts_through_the_copied_link(self) -> None:
|
||||
# amiberry 5.6.5 reads <cwd>/kickstarts. ROCKNIX runs it in
|
||||
# /storage/.config/amiberry, the copy of /usr/config/amiberry whose
|
||||
# kickstarts link points at the BIOS root.
|
||||
profile = self.profiles["amiberry-5.6.5"]
|
||||
cfg = load_platform_config("rocknix", str(REPO_ROOT / "platforms"))
|
||||
self.assertEqual(
|
||||
standalone_bindings_for("amiberry-5.6.5", profile, standalone_set(cfg)),
|
||||
{"kickstarts": ("", "")},
|
||||
)
|
||||
((view, _standalone),) = platform_layouts("amiberry-5.6.5", profile, standalone_set(cfg))
|
||||
for entry in view["files"]:
|
||||
with self.subTest(name=entry["name"]):
|
||||
if entry["path"].startswith("kickstarts/"):
|
||||
self.assertEqual(entry["standalone_path"], entry["path"][len("kickstarts/"):])
|
||||
else:
|
||||
self.assertEqual(entry.get("unplaced"), "outside_bios_folder")
|
||||
Reference in new issue
Block a user