Files
nvfp4-megamoe-kernel/tests/run_test.sh

42 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# Test harness: runs a test in screen, logs to kernel-test.log
# Usage: ./run_test.sh <test_file>
# Example: ./run_test.sh tests/unit/test_fmha_v3.py
set -e
TEST_FILE="${1:?Usage: $0 <test_file>"
# --- CLEANUP ---
# Kill existing screen and all its processes
if screen -list | grep -q kernel-test; then
echo "Killing existing kernel-test screen..."
screen -S kernel-test -X quit 2>/dev/null || true
sleep 2
# Nuclear option: kill any lingering python test processes
pkill -f "python.*test_fmha" 2>/dev/null || true
sleep 1
fi
# Remove old log
rm -f /tmp/kernel-test.log
# --- START ---
cd /root/dsv4-nvfp4-workspace/kernel
source /root/dsv4-nvfp4-workspace/venv/bin/activate
export PYTHONPATH=/root/dsv4-nvfp4-workspace/kernel
echo "Running: python -u $TEST_FILE"
echo "Log: /tmp/kernel-test.log"
screen -dmS kernel-test bash -c "python -u $TEST_FILE > /tmp/kernel-test.log 2>&1"
sleep 2
# Verify it started
if screen -list | grep -q kernel-test; then
echo "OK: screen 'kernel-test' is running"
else
echo "FAIL: screen did not start. Check /tmp/kernel-test.log"
cat /tmp/kernel-test.log 2>/dev/null
exit 1
fi