# opkbuild # tests/common # Common functions for unit tests. # # Copyright (C) 2012 Patrick "P. J." McDermott # # This program 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 2 of the License, or # (at your option) any later version. # # This program 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 this program. If not, see . BUILDDIR="${PWD}/.." # The "common" module is used by all library modules. # We have to manually load the "common" module so we can use it in ob_use. . "${BUILDDIR}/lib/common.sm" ob_use() { _ob_local _obu_module if [ "${#}" -eq 1 ]; then _obu_module="${1}" else _ob_return 125 return ${?} fi _obu_module="${BUILDDIR}/lib/${_obu_module}.sm" if [ -r "${_obu_module}" ]; then . "${_obu_module}" else _ob_return 1 return ${?} fi _ob_return 0 return ${?} } test_assert() { eval "${*}" es="${?}" if [ "${es}" -ne 0 ]; then printf 'Assertion failed with exit status %d:\n %s\n' \ "${es}" "${*}" fi return "${es}" }