Skip to content

Add pytest test suite and GitHub Actions CI#17

Merged
ricardojrdez merged 1 commit into
masterfrom
add-tests-ci
Jun 23, 2026
Merged

Add pytest test suite and GitHub Actions CI#17
ricardojrdez merged 1 commit into
masterfrom
add-tests-ci

Conversation

@ricardojrdez

Copy link
Copy Markdown
Member

Summary

Adds an automated test suite and continuous integration, so regressions in the recent refactor and bug fixes are caught automatically.

Tests (tests/, 54 cases)

Binary-loader tests build minimal ELFs in memory (see conftest.py), so no binary blobs are committed. An autouse fixture resets the global architecture singleton between tests.

CI (.github/workflows/ci.yml)

Runs pytest on Python 3.11, 3.12 and 3.13 for every push to master and every pull request.

Notes

  • Locally: 54/54 pass on Python 3.11 and 3.13.
  • PE and Mach-O loaders are not yet covered (would require committed fixtures); the ELF path exercises the shared loader logic and the --base fix.

🤖 Generated with Claude Code

54 tests covering the architecture abstraction, address helpers, gadget
model, gadget finder (canary dedup + sorting), ROPLang parser, operation
matching and the ELF loader (including --base relocation). Binary loader
tests build minimal ELFs in memory, so no binary blobs are committed.

CI runs the suite on Python 3.11, 3.12 and 3.13 for every push to master
and every pull request.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@ricardojrdez ricardojrdez merged commit cf0ca9a into master Jun 23, 2026
3 checks passed
@ricardojrdez ricardojrdez deleted the add-tests-ci branch June 23, 2026 17:48
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.

1 participant