#! /usr/bin/env bash
set +e

DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)"
ENVIRONMENT="${ENVIRONMENT:-test}"

GREEN="\033[0;32m"
RED="\033[0;31m"
NONE="\033[0m"

# shellcheck source=./env/test
source "$DIR/env/$ENVIRONMENT"

function run() {
  set +e
  ginkgo --randomize-all=true --randomize-suites=true -succinct=true "$@"
  EXIT_CODE=$?
  if [[ $EXIT_CODE != 0 ]]; then
    fail
  fi
  set -e
}

function fail() {
  echo
  echo -e "${RED}INTEGRATION SUITE FAIL${NONE}"
  exit $EXIT_CODE
}

if [[ -z "$1" ]]; then
    run ./v1/models ./gobble ./db
else
    run "$@"
fi

echo -e "${GREEN}INTEGRATION SUITE PASS${NONE}"
exit $EXIT_CODE
