#!/usr/bin/env -S bats --report-formatter junit --formatter tap
# -*-sh-*-

setup_file() {
	TESTNAME="dev-tools/cmake"

	source "${BATS_TEST_DIRNAME}"/../../common/TEST_ENV

	# Load required modules
	module purge
	module load cmake
	module load "${GCC_DEFAULT}"

	# Create build directory
	BUILD="$(mktemp --directory)"

	export TESTNAME BUILD
}

teardown_file() {
	# Clean up build directory
	rm -rf "${BUILD}"
}

@test "[$TESTNAME] running cmake --system-information" {
	cmake --system-information | grep ohpc
}

@test "[$TESTNAME] run cmake" {
	cd "${BUILD}"
	cmake "${BATS_TEST_DIRNAME}"/test
}

@test "[$TESTNAME] run make on generated Makefile" {
	cd "${BUILD}"
	VERBOSE=1 make
}

@test "[$TESTNAME] run compiled binary" {
	"${BUILD}"/COnly
}
