myxce/src/scheduler/testsuite
Rongsong Shen 8abab049f4
feat(scheduler): show event time/session in sim echo, total sessions on replay load
repl_print_event_summary() (interactive REPL event echo) now prefixes
each echoed event with "[sim] t=<ns> (<human>) session=<N>", using the
same xce_core_now()/repl_format_ts_human()/session_count sources "info
session" already reports. Uses session_count+1, not the raw count:
events stream in and are echoed individually before the ReplaySession/
begin_round message that increments session_count is even read (file
order is event, event, ..., ReplaySession), so an echoed event always
belongs to the session about to begin.

Add sim_prescan_session_count() (sim.c): scans the replay file from the
current position via shape-only classification (mirroring sim_loop.c's
own ReplayEvent/ReplaySession/SnapshotEntry dispatch), counts
ReplaySession messages, then rewinds via fseek back to the exact ftell()
position -- same rewind technique sim_locate_and_load_snapshot() already
uses. Wired into sched_sim_driver_start(): prints "[sim] replay file
contains N sessions" once at load, non-fatal on scan failure.

Add test_replay_load_reports_total_session_count; extend
test_step_echoes_events_before_session_decisions with t=/session=1
assertions.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-20 07:48:43 +00:00
..
meson.build fix(scheduler): sim_print_decision() bypassed tlog, producing inconsistent PEND/DISPATCH/PREEMPT output 2026-08-20 03:02:48 +00:00
test.c feat(scheduler-core): extract xce_sched_core_t from monolithic scheduler struct (task 4.1) 2026-08-03 10:55:58 +00:00
test_admin_request.c test(scheduler-core): recording lifecycle integration tests (task 9.5) 2026-08-05 14:35:52 +00:00
test_clock.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_core_events.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_core_full_cycle.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_core_isolation.c fix(scheduler): extend core-isolation nm-audit to core_events.c/core_session.c/core_clock.c (Req 5 AC 1/2) 2026-08-19 11:00:41 +00:00
test_core_jbuf_capacity_pin.c feat(scheduler-core): pin jbuf capacity + record kvmgr determinism audit (task 4.2) 2026-08-03 14:09:42 +00:00
test_core_session.c feat(scheduler-core): implement clock virtualization and session timing (task 4.5) 2026-08-04 03:38:58 +00:00
test_driver_decision_cb.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_driver_session_ordering.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_driver_translate.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_handlers.c feat(scheduler-core): implement scheduler-side admin request handler (task 9.4) 2026-08-05 14:11:43 +00:00
test_job_array_expand.c feat(scheduler-core): implement scheduler-side admin request handler (task 9.4) 2026-08-05 14:11:43 +00:00
test_job_array_wire_e2e.c feat(scheduler-core): implement scheduler-side admin request handler (task 9.4) 2026-08-05 14:11:43 +00:00
test_job_update.c feat(scheduler-core): extract xce_sched_core_t from monolithic scheduler struct (task 4.1) 2026-08-03 10:55:58 +00:00
test_no_bare_printf.c fix(scheduler): sim_print_decision() bypassed tlog, producing inconsistent PEND/DISPATCH/PREEMPT output 2026-08-20 03:02:48 +00:00
test_picker_config_fields.c feat(scheduler-core): extract xce_sched_core_t from monolithic scheduler struct (task 4.1) 2026-08-03 10:55:58 +00:00
test_picker_core_loop_boundary.c test(scheduler-core): guard core scheduling loop against ordering-logic regressions (task 2.5) 2026-08-03 09:11:55 +00:00
test_picker_fcfs.c feat(scheduler-core): wire builtin_fcfs as registered default picker (task 2.4) 2026-08-03 08:51:45 +00:00
test_picker_fcfs_session.c feat(scheduler-core): wire builtin_fcfs as registered default picker (task 2.4) 2026-08-03 08:51:45 +00:00
test_picker_iface.c feat(scheduler-core): define job picker plugin contract (task 1.1) 2026-08-03 04:49:55 +00:00
test_picker_pendreason_factory_audit.c feat(scheduler-core): implement session-start signal + decision callback (task 4.4) 2026-08-04 03:08:18 +00:00
test_picker_wiring.c feat(scheduler-core): implement core event batch push interface (task 4.3) 2026-08-03 16:05:33 +00:00
test_plugin_picker_registration.c feat(scheduler-core): extract xce_sched_core_t from monolithic scheduler struct (task 4.1) 2026-08-03 10:55:58 +00:00
test_record_lifecycle.c feat(scheduler-core): implement scheduler-side admin request handler (task 9.4) 2026-08-05 14:11:43 +00:00
test_recording_path_validation.c feat(scheduler-core): implement record start/stop lifecycle (task 9.2) 2026-08-05 09:07:51 +00:00
test_repl_breakpoints_inspection.c feat(scheduler): show event time/session in sim echo, total sessions on replay load 2026-08-20 07:48:43 +00:00
test_repl_equivalence.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_repl_execution_control.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_repl_snapshot_params.c fix(scheduler): sim mode picker never learns about the initial snapshot's own jobs/queues (bug-1567) 2026-08-17 10:21:11 +00:00
test_resval_ownership.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_scheduler_backpressure.c feat(component-failover-adoption): validate scheduler backpressure, fix candidate-name diagnostics 2026-08-11 14:00:02 +00:00
test_scheduler_connect.c feat(component-failover-adoption): validate scheduler backpressure, fix candidate-name diagnostics 2026-08-11 14:00:02 +00:00
test_scheduler_decision_publish_retry.c feat(component-failover-adoption): add scheduler decision-publish retry-until-success-or-shutdown 2026-08-11 12:03:21 +00:00
test_scheduler_decision_redelivery.c test(component-failover-adoption): add scheduler decision-redelivery queue coverage 2026-08-11 23:50:20 +00:00
test_sim_alt_events.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_sim_equivalence.c fix(scheduler): sim mode picker never learns about the initial snapshot's own jobs/queues (bug-1567) 2026-08-17 10:21:11 +00:00
test_sim_event_loop.c fix(scheduler): activate virtual-clock logging for sim/REPL sessions (Req 5 AC 3) 2026-08-19 11:00:33 +00:00
test_sim_isolation.c fix(scheduler): sim mode picker never learns about the initial snapshot's own jobs/queues (bug-1567) 2026-08-17 10:21:11 +00:00
test_sim_record_output.c fix(scheduler): sim mode picker never learns about the initial snapshot's own jobs/queues (bug-1567) 2026-08-17 10:21:11 +00:00
test_sim_startup.c fix(scheduler): activate virtual-clock logging for sim/REPL sessions (Req 5 AC 3) 2026-08-19 11:00:33 +00:00
test_sim_verify.c fix(scheduler): clock/resval/jobid-format fixes plus REPL live-operator gaps (task 12.5) 2026-08-19 09:48:46 +00:00
test_snapshot_save_load.c test(scheduler-core): prove snapshot -EBUSY guard against a genuine active session (task 8.2) 2026-08-05 04:18:01 +00:00