Skip to content

Add support for files in reccmp-project detect #107

Add support for files in reccmp-project detect

Add support for files in reccmp-project detect #107

Workflow file for this run

name: Test with Ghidra
on: [push, pull_request]
jobs:
test:
name: 'Ghidra integration tests'
runs-on: 'ubuntu-latest'
container:
image: blacktop/ghidra:12.0.2
env:
# not set by default for some reason
GHIDRA_INSTALL_DIR: '/ghidra'
steps:
- uses: actions/checkout@v4
# We cannot reuse the fetch-deps step from the other unit tests because the cache is not shared if different
# container images are used, see https://github.com/actions/cache/issues/1361#issuecomment-2611294058
- name: Restore original binaries
id: cache
uses: actions/cache@v3
with:
path: binfiles
key: legobin
- name: Download original island binaries
if: ${{ !steps.cache.outputs.cache-hit }}
run: |
wget https://legoisland.org/download/ISLE.EXE --directory-prefix=binfiles
- name: Verify files
run: |
echo "5cf57c284973fce9d14f5677a2e4435fd989c5e938970764d00c8932ed5128ca binfiles/ISLE.EXE" | sha256sum --check
# Install manually because the install action does not work
- name: Install python
shell: bash
run: |
apt-get update
apt-get -y install python3 python3-pip python3-venv
python3 -m venv .venv
- name: Install python libraries
shell: bash
run: |
source .venv/bin/activate
pip install -r requirements.txt -r requirements-tests.txt
- name: Run unit tests
shell: bash
run: |
source .venv/bin/activate
pytest . --binfiles=binfiles --require-ghidra