#!/usr/bin/env bash
set -euo pipefail
export TZ=UTC
out=${1:-out}
mkdir -p "$out"
go version > "$out/environment.txt"
go test -v . > "$out/test.txt"
go test -race . >> "$out/test.txt"
go vet . >> "$out/test.txt"
go build -o "$out/app" .
go build -gcflags='all=-N -l' -o "$out/app.debug" .
go tool nm "$out/app.debug" | grep ' main.total$' > "$out/symbol.txt"
GOMAXPROCS=2 GOGC=off GODEBUG=gctrace=1,schedtrace=1000,scheddetail=0 "$out/app" > "$out/run.txt" 2> "$out/godebug.txt"
python3 check.py "$out" > "$out/assertions.txt"
go version -m "$out/app" > "$out/buildinfo.txt"
