#!/bin/sh
set -eu

echo "== Testing ruff version =="
ruff --version

DIR=$(mktemp -d)
trap 'rm -rf "$DIR"' EXIT

TESTFILE="$DIR/test_sample.py"

echo "== Testing ruff check detects F401 =="
cat << 'EOF' > "$TESTFILE"
import os
print("hello world")
EOF

if ruff check "$TESTFILE" 2>&1; then
    echo "Expected ruff check to fail on unused import, but succeeded" >&2
    exit 1
fi

echo "== Testing ruff check --fix =="
ruff check --fix "$TESTFILE"
ruff check "$TESTFILE"

echo "== Testing ruff format =="
cat << 'EOF' > "$TESTFILE"
def foo(  a,b,   c ):
    return a+b+c
EOF

ruff format "$TESTFILE"
ruff format --check "$TESTFILE"

echo "PASS: ruff CLI tests completed successfully"
