The comment list output is a JSON array, not an object with a "comments"
key. Changed assertion to check for the comment text we just set.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The comment tests used hardcoded addresses (0x118910, 0x118920, etc.)
that assumed a specific binary layout. These addresses don't have code
units on CI-compiled binaries, causing "No code unit at address" errors.
Now uses get_function_address/get_function_addresses helpers to
dynamically resolve valid addresses.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
BatchArgs was missing --project and --program fields, so batch commands
couldn't specify which project to use. Also fixed argument ordering in
all test files to place --project/--program after the subcommand name,
matching clap's per-subcommand argument parsing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Tests that use DaemonTestHarness or ensure_test_project were missing the
require_ghidra!() macro, causing them to attempt bridge startup in CI
where Ghidra is not installed, resulting in 120s timeouts.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Implemented `install_pyghidra` function to set up PyGhidra in a Python virtual environment for Ghidra installations.
- Enhanced `install_ghidra` to call `install_pyghidra` after Ghidra installation.
- Updated daemon command handling to include program name in start, restart, and stop commands.
- Refactored project path resolution to streamline project management.
- Improved socket path handling to respect `GHIDRA_CLI_SOCKET` environment variable for testing.
- Modified tests to remove ignore flags, allowing for automated testing without Ghidra installation.
- Added analysis step in test project setup to ensure comments and other features work correctly.