# Copyright (C) 2017 Patrick McDermott # # This file is part of the ProteanOS Archive Manager. # # The ProteanOS Archive Manager is free software: you can redistribute # it and/or modify it under the terms of the GNU General Public License # as published by the Free Software Foundation, either version 3 of the # License, or (at your option) any later version. # # The ProteanOS Archive Manager is distributed in the hope that it # will be useful, but WITHOUT ANY WARRANTY; without even the implied # warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with the ProteanOS Archive Manager. If not, see # . set -eu . tests/aux/defs.sh # Defines: # * abs_srcdir: Absolute path to tests/aux/ (used for PATH) # * abs_top_builddir: Absolute path to top build directory (used to find # pro-archman and make test directory) init() { # Find pro-archman executable. PRO_ARCHMAN="${abs_top_builddir}/pro-archman" if ! [ -x "${PRO_ARCHMAN}" ]; then printf 'ERROR: %s: not found\n' "${PRO_ARCHMAN}" >&2 exit 1 fi # Add aux directory in source tree to PATH for "." inclusions. PATH="${abs_srcdir}:${PATH}" # Clean up, make, and change to test directory. testdir="tests/${0##*/}" testdir="${abs_top_builddir}/${testdir%.*}.dir/" rm -Rf "${testdir}" mkdir "${testdir}" cd "${testdir}" # Set EXIT trap action to clean up test directory. trap atexit EXIT return 0 } atexit() { # Clean up test directory. cd "${abs_top_builddir}" rm -Rf "${testdir}" } init