mirror of
https://github.com/bryanthaboi/gen1recomp.git
synced 2026-08-12 16:31:05 +02:00
44bfb1b93f
platform_nx_* and rom_importer_nx_* run with the love stub and must execute in CI's ROM-free lane via tests/run_engine.lua, not only T3. Co-authored-by: Cursor <cursoragent@cursor.com>
48 lines
1.9 KiB
Lua
48 lines
1.9 KiB
Lua
-- NX RomImporter must not inherit Android mobile-file-bridge semantics (SWNX-03).
|
|
package.path = "./?.lua;./?/init.lua;" .. package.path
|
|
if not _G.love then _G.love = require("tests.love_stub") end
|
|
|
|
local S = require("tests.harness").suite("rom importer NX flags")
|
|
local eq = S.eq
|
|
local check = S.check
|
|
|
|
love.system = love.system or {}
|
|
love.filesystem = love.filesystem or {}
|
|
local saved = {
|
|
getOS = love.system.getOS,
|
|
getSaveDirectory = love.filesystem.getSaveDirectory,
|
|
createDirectory = love.filesystem.createDirectory,
|
|
}
|
|
|
|
love.system.getOS = function() return "NX" end
|
|
love.filesystem.getSaveDirectory = function() return "sdmc:/switch/gen1recomp/pokemon-love2d" end
|
|
love.filesystem.createDirectory = function() return true end
|
|
|
|
package.loaded["src.core.Platform"] = nil
|
|
package.loaded["src.import.RomImporter"] = nil
|
|
local RomImporter = require("src.import.RomImporter")
|
|
|
|
local ri = RomImporter.new(function() end, { launcher = true })
|
|
eq(ri.isNX, true, "NX importer sets isNX")
|
|
eq(ri.android, false, "NX importer does not set android")
|
|
eq(ri.mobileFileBridge, false, "NX importer does not set mobileFileBridge")
|
|
eq(ri.romImportMode, "save-directory", "NX importer exposes save-directory mode")
|
|
check(ri.pickPending == nil, "NX importer does not arm mobile pick polling")
|
|
|
|
love.system.getOS = function() return "Android" end
|
|
package.loaded["src.core.Platform"] = nil
|
|
package.loaded["src.import.RomImporter"] = nil
|
|
RomImporter = require("src.import.RomImporter")
|
|
ri = RomImporter.new(function() end, { launcher = true })
|
|
eq(ri.isNX, false, "Android importer is not NX")
|
|
eq(ri.android, true, "Android importer keeps android mobile path")
|
|
eq(ri.mobileFileBridge, true, "Android importer sets mobileFileBridge")
|
|
|
|
love.system.getOS = saved.getOS
|
|
love.filesystem.getSaveDirectory = saved.getSaveDirectory
|
|
love.filesystem.createDirectory = saved.createDirectory
|
|
package.loaded["src.core.Platform"] = nil
|
|
package.loaded["src.import.RomImporter"] = nil
|
|
|
|
S.finish()
|