#!./common/bats/bin/bats
# -*-sh-*-

load ./common/test_helper_functions || exit 1
source ./common/functions           || exit 1

setup() {
    source ./common/TEST_ENV

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

    # Create out-of-tree build directory
    BUILD="$(mktemp --directory)"
}

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

@test "[dev-tools/cmake] running cmake --system-information" {
    cmake --system-information | grep ohpc
}

@test "[dev-tools/cmake] run cmake" {
    cmake -S "${BATS_TEST_DIRNAME}"/test -B "${BUILD}"
}

@test "[dev-tools/cmake] run make on generated Makefile" {
    cmake -S "${BATS_TEST_DIRNAME}"/test -B "${BUILD}"
    cd "${BUILD}"
    VERBOSE=1 make
}

@test "[dev-tools/cmake] run compiled binary" {
    cmake -S "${BATS_TEST_DIRNAME}"/test -B "${BUILD}"
    cd "${BUILD}"
    make
    "${BUILD}"/COnly
}
