Skip to content

Conversation

@jserv
Copy link
Member

@jserv jserv commented Jan 25, 2026

This introduces a machine-parseable test framework for automated CI/CD testing under QEMU emulation. It validates core functionality including thread management, IPC, timers, and KIP access.

Test categories:

  • Thread tests: identity, global ID, pager verification
  • Timer tests: period creation, sleep functionality
  • KIP tests: access validation, processor info
  • IPC tests: basic send/receive, timeout handling
  • Safety tests: timer edge cases, thread priority/yield

Fault tests (separate invocation):

  • MPU fault: write to code memory (expected fail on QEMU)
  • Stack canary: overflow detection validation

Usage:
make run-tests # Run 14-test suite
make run-tests FAULT=mpu # MPU protection test
make run-tests FAULT=canary # Stack canary test

This introduces a machine-parseable test framework for automated CI/CD
testing under QEMU emulation. It validates core functionality including
thread management, IPC, timers, and KIP access.

Test categories:
- Thread tests: identity, global ID, pager verification
- Timer tests: period creation, sleep functionality
- KIP tests: access validation, processor info
- IPC tests: basic send/receive, timeout handling
- Safety tests: timer edge cases, thread priority/yield

Fault tests (separate invocation):
- MPU fault: write to code memory (expected fail on QEMU)
- Stack canary: overflow detection validation

Usage:
  make run-tests              # Run 14-test suite
  make run-tests FAULT=mpu    # MPU protection test
  make run-tests FAULT=canary # Stack canary test
@jserv jserv merged commit 1ebc316 into master Jan 25, 2026
4 checks passed
@jserv jserv deleted the test-suite branch January 25, 2026 16:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants