#!/usr/bin/env execlineb
# SPDX-FileCopyrightText: Peter Pentchev <roam@ringlet.net>
# SPDX-License-Identifier: GPL-2.0-only

elgetopt "c:"
importas -D "cargo" default_cargo CARGO
importas -D $default_cargo CARGO ELGETOPT_c
getcwd -E curdir
if {
  shellcheck -- setup
}
if {
  rm -rf obj
}
if {
  ./setup
}
backtick -E -I objdir {
  find -- obj/ -mindepth 1 -maxdepth 1 -type d
}
foreground {
  echo "Checking whether '${objdir}' is a valid prepared directory"
}
if {
  eltest -d $objdir
}
if {
  eltest -f "${objdir}/configure"
}
if {
  eltest -f "${objdir}/Makefile.in"
}
cd $objdir
if {
  pwd
}
if {
  ./configure
}
if {
  make
}
cd $curdir
if {
  pwd
}
define donkey "${curdir}/${objdir}/donkey"
if {
  echo "Checking whether '${donkey}' works"
}
if {
  eltest -f $donkey
}
if {
  eltest -x $donkey
}
if {
  env
    "TEST_DONKEY_PROGRAM=${donkey}"
    $CARGO nextest run -p donkey
}
echo "The tests seem to have passed for ${donkey}"
