[hal,tests] Use waitForProgramStart in tests (#8429)

Change setProgramStarted to accept a boolean so it can be set back to
false by tests. This allows properly waiting for program start in tests.
This commit is contained in:
Peter Johnson
2025-11-29 10:10:01 -08:00
committed by GitHub
parent 32d3ec0218
commit a4aad63dd4
23 changed files with 84 additions and 49 deletions

View File

@@ -68,8 +68,8 @@ double GetFPGATimestamp() {
return GetFPGATime() * 1.0e-6;
}
void SetProgramStarted() {
programStarted = true;
void SetProgramStarted(bool started) {
programStarted = started;
}
bool GetProgramStarted() {
return programStarted;
@@ -83,13 +83,15 @@ void HALSIM_WaitForProgramStart(void) {
int count = 0;
while (!programStarted) {
count++;
wpi::util::print("Waiting for program start signal: {}\n", count);
std::this_thread::sleep_for(std::chrono::milliseconds(500));
if (count % 10 == 0) {
wpi::util::print("Waiting for program start signal: {}\n", count);
}
std::this_thread::sleep_for(std::chrono::milliseconds(1));
}
}
void HALSIM_SetProgramStarted(void) {
SetProgramStarted();
void HALSIM_SetProgramStarted(HAL_Bool started) {
SetProgramStarted(started);
}
HAL_Bool HALSIM_GetProgramStarted(void) {