Add regression tests for previously untested subsystems - #68
Merged
Conversation
Expands coverage from 13 to 19 tests, locking in the behaviour of subsystems that had no tests (and where several of the bugs fixed in the prior cleanup had been hiding): - free_memory: single-segment allocate/free and double-free error path - signals: SIGSTOP/SIGCONT/SIGTERM handling and signal consumption - ipc: channel write/read draining and the user mailbox; missing-channel error - semaphore_wait: cross-process semaphore wait/wake (park a waiter, wake on release) - scheduler: schedule_processes drives a ready process to terminated and schedule_threads drains ready threads without looping forever - power: set_power_state records valid states and rejects unknown ones Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ty3Rkif9Vfe95w8TMiKB4b
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Expands the regression suite from 13 → 19 tests, covering subsystems that previously had no tests at all (and where several of the bugs fixed in #67 had been hiding):
SIGSTOP→ waiting,SIGCONT→ ready,SIGTERM→ terminated, and signal consumptionschedule_processesdrives a ready process toterminated;schedule_threadsdrains ready threads without looping forever (regression guard for the infinite-loop fix in Refactor pg_os into single SQL file and improve documentation #67)set_power_staterecords valid states and rejects unknown onesAll tests are deterministic and pass via
make installcheck(19/19).🤖 Generated with Claude Code
Generated by Claude Code