#!/bin/bash -eu

function unset_env_vars() {
  echo "Unsetting BBL environment variables"
  unset BBL_IAAS
  unset BBL_AWS_ACCESS_KEY_ID
  unset BBL_AWS_REGION
  unset BBL_AWS_SECRET_ACCESS_KEY
  unset BBL_AWS_BOSH_AZ
  unset BBL_GCP_SERVICE_ACCOUNT_KEY
  unset BBL_GCP_REGION
  unset BBL_GCP_ZONE
  unset BBL_AZURE_CLIENT_ID
  unset BBL_AZURE_CLIENT_SECRET
  unset BBL_AZURE_REGION
  unset BBL_AZURE_SUBSCRIPTION_ID
  unset BBL_AZURE_TENANT_ID
  unset BBL_DEBUG
}

function main() {
  unset_env_vars

	local root_dir
	root_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"

	pushd "${root_dir}" > /dev/null
    echo "Unit tests"
		ginkgo -p -r -race -randomizeAllSpecs -randomizeSuites -skipPackage acceptance-test ${@}

    if [ -z ${@} ]
    then
      echo "No-IAAS integration tests"
      ginkgo -p -r -race -randomizeAllSpecs -randomizeSuites acceptance-tests/no-iaas ${@}
    fi

    echo "Test compilation of acceptance-tests"
    ginkgo -r -p -dryRun acceptance-tests
	popd > /dev/null
}

main "${@:-""}"
