按提示词结论补 INI 命名参数桥
This commit is contained in:
@@ -240,6 +240,8 @@ int main() {
|
||||
std::ofstream ini_file(rs274_ini_path);
|
||||
ini_file << "[RS274NGC]\n";
|
||||
ini_file << "PARAMETER_FILE = " << ini_parameter_var_path << "\n";
|
||||
ini_file << "[SETUP]\n";
|
||||
ini_file << "XPOS = 12\n";
|
||||
}
|
||||
std::vector<CncSimEvent> ini_events;
|
||||
CncSimHandle *ini_sim = cnc_sim_create();
|
||||
@@ -255,23 +257,33 @@ int main() {
|
||||
const char ini_parameter_check_program[] =
|
||||
"G21 G90 G17\n"
|
||||
"F100\n"
|
||||
"G1 X#5001\n";
|
||||
"G1 X#5001\n"
|
||||
"G1 X#<_ini[setup]xpos>\n";
|
||||
ini_ok &= expect(cnc_sim_parse_program(ini_sim,
|
||||
ini_parameter_check_program,
|
||||
sizeof(ini_parameter_check_program) - 1) == 0,
|
||||
cnc_sim_last_error(ini_sim));
|
||||
bool saw_ini_parameter_restore = false;
|
||||
bool saw_ini_named_parameter = false;
|
||||
for (const auto &event : ini_events) {
|
||||
saw_ini_parameter_restore = saw_ini_parameter_restore ||
|
||||
(event.type == CNC_SIM_EVENT_LINEAR_FEED &&
|
||||
event.line == 3 &&
|
||||
near(event.end.x, 44.0));
|
||||
saw_ini_named_parameter = saw_ini_named_parameter ||
|
||||
(event.type == CNC_SIM_EVENT_LINEAR_FEED &&
|
||||
event.line == 4 &&
|
||||
near(event.end.x, 12.0));
|
||||
}
|
||||
// LinuxCNC source basis: emctask.cc calls interp.ini_load(), and
|
||||
// rs274ngc_pre.cc ini_load() maps [RS274NGC] PARAMETER_FILE through
|
||||
// SET_PARAMETER_FILE_NAME before rs274_ngc_init() restores parameters.
|
||||
ini_ok &= expect(saw_ini_parameter_restore,
|
||||
"expected LinuxCNC INI PARAMETER_FILE to restore numbered parameters");
|
||||
// LinuxCNC source basis: rs274ngc_pre.cc and interp_namedparams.cc
|
||||
// read INI_FILE_NAME for #<_ini[section]key> lookups.
|
||||
ini_ok &= expect(saw_ini_named_parameter,
|
||||
"expected LinuxCNC config INI_FILE_NAME to back #<_ini[]> named parameters");
|
||||
cnc_sim_destroy(ini_sim);
|
||||
if (!ini_ok) {
|
||||
return 1;
|
||||
|
||||
Reference in New Issue
Block a user