mirror of
https://github.com/multica-ai/multica.git
synced 2026-07-26 12:35:35 +02:00
42 lines
930 B
Bash
42 lines
930 B
Bash
#!/usr/bin/env bash
|
|
set -eu
|
|
|
|
SCRIPT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
|
|
REPO_ROOT=$(CDPATH= cd -- "$SCRIPT_DIR/.." && pwd)
|
|
GUARD_SCRIPT="$SCRIPT_DIR/go-test-with-agent-cli-guard.sh"
|
|
|
|
usage() {
|
|
echo "usage: $0 [--race]" >&2
|
|
}
|
|
|
|
go_test_args=(test)
|
|
case "$#" in
|
|
0) ;;
|
|
1)
|
|
if [ "$1" != "--race" ]; then
|
|
usage
|
|
exit 2
|
|
fi
|
|
go_test_args+=(-race)
|
|
;;
|
|
*)
|
|
usage
|
|
exit 2
|
|
;;
|
|
esac
|
|
|
|
cd "$REPO_ROOT/server"
|
|
packages=$(go list ./...)
|
|
regular_packages=()
|
|
for package in $packages; do
|
|
case "$package" in
|
|
*/pkg/agent|*/pkg/agent/*) ;;
|
|
*) regular_packages+=("$package") ;;
|
|
esac
|
|
done
|
|
|
|
"$GUARD_SCRIPT" -- go "${go_test_args[@]}" "${regular_packages[@]}"
|
|
# Subprocess-backed agent tests have hard deadlines. Limit both package and
|
|
# within-package parallelism so race builds do not starve their parent loops.
|
|
"$GUARD_SCRIPT" -- go "${go_test_args[@]}" -p 2 -parallel 2 ./pkg/agent/...
|