#!/bin/sh
set -eu

project_dir=$(CDPATH= cd "$(dirname "$0")/.." && pwd)
work=$(mktemp -d "${TMPDIR:-/tmp}/tit-m6-6.XXXXXX")
trap 'rm -rf "$work"' EXIT HUP INT TERM

cd "$project_dir"
./scripts/check
./scripts/package-release target/release/tit "$work/dist" >"$work/package.list"

archive=$(sed -n '1p' "$work/package.list")
checksum=$(sed -n '2p' "$work/package.list")
./scripts/verify-release-artifact "$archive" "$checksum"

mkdir "$work/package"
tar -xzf "$archive" -C "$work/package"
set -- "$work"/package/tit-*/bin/tit
if [ "$#" -ne 1 ] || [ ! -x "$1" ]; then
    echo "tit: the release test executable is not available" >&2
    exit 1
fi

TIT_RELEASE_BINARY=$1 \
    cargo test --locked --release --test serve
