#!/bin/sh
set -eu

echo "== Testing ty version =="
ty --version

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

TEST_VALID="$DIR/valid.py"
cat << 'EOF' > "$TEST_VALID"
def add(a: int, b: int) -> int:
    return a + b
EOF

echo "== Testing ty check on valid code =="
ty check "$TEST_VALID"

TEST_INVALID="$DIR/invalid.py"
cat << 'EOF' > "$TEST_INVALID"
def add(a: int, b: int) -> int:
    return "not an int"
EOF

echo "== Testing ty check on invalid code =="
if ty check "$TEST_INVALID" 2>&1; then
    echo "Expected ty check to report type error, but succeeded" >&2
    exit 1
fi

echo "PASS: ty CLI tests completed successfully"
