#!/bin/sh
set -eu

entrypoint="$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)/docker-entrypoint.sh"

actual="$(
  env -i PATH="$PATH" "$entrypoint" sh -c \
    'printf "%s|%s" "$LISTEN_MODE" "$GIT_REPO_DIR"'
)"
test "$actual" = "production|/data/repos"

actual="$(
  env -i PATH="$PATH" AGS_CONFIG_FILE=/etc/agent-git-service/config.yaml \
    "$entrypoint" sh -c \
    'printf "%s|%s" "${LISTEN_MODE-unset}" "${GIT_REPO_DIR-unset}"'
)"
test "$actual" = "unset|unset"

actual="$(
  env -i PATH="$PATH" AGS_CONFIG_FILE=/etc/agent-git-service/config.yaml \
    LISTEN_MODE=development GIT_REPO_DIR=/tmp/repos \
    "$entrypoint" sh -c \
    'printf "%s|%s" "$LISTEN_MODE" "$GIT_REPO_DIR"'
)"
test "$actual" = "development|/tmp/repos"

echo "container entrypoint contract passed"
