26 using std::this_thread::sleep_for;
27 using namespace std::chrono_literals;
32 using Dur = std::chrono::duration<double, std::milli>;
68 bool has_commands_in_queue =
false;
73 return Looper([&](){
return has_commands_in_queue; });
122 setup.has_commands_in_queue =
true;
159 setup.has_commands_in_queue =
true;
166 setup.has_commands_in_queue =
false;
167 looper.markStateProcessed();
173 looper.markStateProcessed();
203 setup.has_commands_in_queue =
true;
219 setup.has_commands_in_queue =
false;
227 setup.has_commands_in_queue =
true;
250 setup.has_commands_in_queue =
true;
259 looper.enableProcessing(
false);
268 setup.has_commands_in_queue =
false;
277 setup.has_commands_in_queue =
true;
286 looper.enableProcessing();
295 looper.enableProcessing(
false);
336 setup.has_commands_in_queue =
true;
344 looper.markStateProcessed();
355 looper.markStateProcessed();
371 looper.markStateProcessed();
380 setup.has_commands_in_queue =
false;
392 looper.markStateProcessed();
403 setup.has_commands_in_queue =
true;
411 setup.has_commands_in_queue =
false;
412 looper.markStateProcessed();
423 looper.enableProcessing(
false);
434 looper.enableProcessing(
true);
444 looper.enableProcessing(
false);
445 looper.markStateProcessed();
456 looper.enableProcessing(
true);
466 looper.markStateProcessed();
477 setup.has_commands_in_queue =
true;
478 looper.markStateProcessed();
497 setup.has_commands_in_queue =
false;
498 looper.markStateProcessed();
Encapsulated control logic for the session thread loop.
void verifyDisabling_stops_processing()
void verifyWakeupActivity()
void verifyShutdown_stops_processing()
void verifyBuilderStart()
Implementation building block of SteamDispatcher to control waiting and timing.
std::chrono::duration< double, std::milli > Dur
bool isSlow(milliseconds timeoutDelay)
const uint EXPECTED_BUILDER_DELAY_ms
bool isFast(milliseconds timeoutDelay)
bool isDisabled(milliseconds timeoutDelay)
Steam-Layer implementation namespace root.
Test runner and basic definitions for tests.
Simplistic test class runner.
#define LAUNCHER(_TEST_CLASS_, _GROUPS_)