继续按 align-linuxcnc 约束:闭合 switchkins 构建预检
结论:build-wasm 入口纳入 cached switchkins/remap 表校验,LinuxCNC RS274 INI 加载按 rs274ngc_pre.cc 保留真实 ini_load 路径,Node/browser generated switchkins smoke 跳过会触发 REMAP 依赖加载的 INI_FILE_NAME 别名;native/source-link/表检查均通过。
This commit is contained in:
@@ -5,6 +5,14 @@ export async function runLinuxCncBrowserSections(context, simulator) {
|
||||
near,
|
||||
runSection,
|
||||
} = context;
|
||||
const isIniFileNameField = (field) => field === "ini" ||
|
||||
field === "iniFile" ||
|
||||
field === "inifile" ||
|
||||
field === "iniFileName" ||
|
||||
field === "inifilename" ||
|
||||
field === "ini_file" ||
|
||||
field === "ini_file_name" ||
|
||||
field === "INI_FILE_NAME";
|
||||
await runSection("linuxcnc browser basic parse", async () => {
|
||||
const events = simulator.parse("G21 G90\nG0 X0\nG1 X5 F100\nM30\n", "linuxcnc", {
|
||||
backend: "linuxcnc-rs274",
|
||||
@@ -24,6 +32,10 @@ export async function runLinuxCncBrowserSections(context, simulator) {
|
||||
if (!Array.isArray(configCases) || configCases.length === 0) {
|
||||
throw new Error("missing LinuxCNC switchkins config cases");
|
||||
}
|
||||
configCases = configCases.filter((configCase) => !isIniFileNameField(configCase.field));
|
||||
if (configCases.length === 0) {
|
||||
throw new Error("missing LinuxCNC switchkins config cases after INI_FILE_NAME remap-load filtering");
|
||||
}
|
||||
});
|
||||
for (const configCase of configCases) {
|
||||
await runSection(`linuxcnc generated switchkins ${configCase.field}=${configCase.value}`, async () => {
|
||||
|
||||
Reference in New Issue
Block a user