Skip to content

planning: add issue render-instruction-files-before-processing to 2.1 #48

planning: add issue render-instruction-files-before-processing to 2.1

planning: add issue render-instruction-files-before-processing to 2.1 #48

name: Integration Tests
on:
push:
branches:
- '**'
paths:
- '.codex/skills/cat-update/SKILL.md'
- '.github/workflows/integration-tests.yml'
- 'client/**'
- 'tests/**'
workflow_dispatch:
inputs:
ref:
description: 'Git ref to test'
required: false
default: ''
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.inputs.ref || github.ref }}
- name: Set up JDK 26
uses: actions/setup-java@v4
with:
java-version: '26'
distribution: 'temurin'
cache: maven
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
cache: npm
cache-dependency-path: client/plugin/package-lock.json
- name: Install Bats
run: npm ci --prefix client/plugin
- name: Run Maven verification
run: ./client/mvnw -f client/pom.xml verify -Djlink.extra.args=--enable-assertions
- name: Run Bats tests
shell: bash
run: |
set -euo pipefail
BATS_PROJECT="$(mktemp -d)"
trap 'rm -rf "${BATS_PROJECT}"' EXIT
cp -a "${GITHUB_WORKSPACE}/." "${BATS_PROJECT}/"
rm -rf "${BATS_PROJECT}/.git" "${BATS_PROJECT}"/client/*/target
npm run --prefix "${BATS_PROJECT}/client/plugin" test
- name: Upload test results
uses: actions/upload-artifact@v4
if: always()
with:
name: test-results
path: client/**/target/surefire-reports/