From 7433c95471a427f679ebf38e91c24357fa8e2b51 Mon Sep 17 00:00:00 2001 From: Patrick McDermott Date: Mon, 24 Dec 2018 21:24:51 -0500 Subject: tests/ob_parse_dep.sh: Convert to TAP --- (limited to 'tests/ob_parse_dep.sh') diff --git a/tests/ob_parse_dep.sh b/tests/ob_parse_dep.sh index 2b4a074..1278533 100644..100755 --- a/tests/ob_parse_dep.sh +++ b/tests/ob_parse_dep.sh @@ -17,37 +17,136 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -. ./common.sh +srcdir="$(dirname "${0}")" +top_builddir="${PWD}" -ret=0 -dep= -pkg= -archqual= -rel= -ver= -arches= - -main() -{ - . ./ob_parse_dep.rc - - exit ${ret} -} +. "${srcdir}/aux/tap-functions.sh" +. "${top_builddir}/lib/libopkbuild.shso.1" testcase() { + local dep="${1}" + local pkg="${2}" + local archqual="${3}" + local rel="${4}" + local ver="${5}" + local arches="${6}" + shift 6 + local result= + ob_parse_dep -p test_pkg -q test_archqual -r test_rel -v test_ver \ -A test_arches "${dep}" >/dev/null + result='ok_' for comp in pkg archqual rel ver arches; do test_comp="$(eval echo \"\$\{test_${comp}\}\")" good_comp="$(eval echo \"\$\{${comp}\}\")" if [ "${test_comp}" != "${good_comp}" ]; then - printf 'Dependency "%s", component "%s":\n "%s" != "%s"\n' \ - "${dep}" "${comp}" "${test_comp}" "${good_comp}" >&2 - ret=1 + diag_ "$(printf 'Dependency "%s", component "%s":' \ + "${dep}" "${comp}")" + diag_ "$(printf ' "%s" != "%s"\n' \ + "${test_comp}" "${good_comp}")" + result='not_ok_' fi done + + "${result}" -- "PARSE DEPENDENCY \"${dep}\"" } -main "${@}" +plan_ 12 + +testcase \ + 'foo' \ + 'foo' \ + '' \ + '' \ + '' \ + '' + +testcase \ + 'foo:core-linux-eglibc' \ + 'foo' \ + 'core-linux-eglibc' \ + '' \ + '' \ + '' + +testcase \ + 'foo (>= 1.0)' \ + 'foo' \ + '' \ + '>=' \ + '1.0' \ + '' + +testcase \ + 'foo(>=1.0)' \ + 'foo' \ + '' \ + '>=' \ + '1.0' \ + '' + +testcase \ + 'foo (>= 1.0)' \ + 'foo' \ + '' \ + '>=' \ + '1.0' \ + '' + +testcase \ + 'foo [core-linux-eglibc]' \ + 'foo' \ + '' \ + '' \ + '' \ + 'core-linux-eglibc' + +testcase \ + 'foo[core-linux-eglibc]' \ + 'foo' \ + '' \ + '' \ + '' \ + 'core-linux-eglibc' + +testcase \ + 'foo [core-linux-eglibc]' \ + 'foo' \ + '' \ + '' \ + '' \ + 'core-linux-eglibc' + +testcase \ + 'foo:core-linux-eglibc (>= 1.0) [core-linux-eglibc]' \ + 'foo' \ + 'core-linux-eglibc' \ + '>=' \ + '1.0' \ + 'core-linux-eglibc' + +testcase \ + 'foo:core-linux-eglibc(>=1.0)[core-linux-eglibc]' \ + 'foo' \ + 'core-linux-eglibc' \ + '>=' \ + '1.0' \ + 'core-linux-eglibc' + +testcase \ + 'foo:core-linux-eglibc (>= 1.0) [core-linux-eglibc]' \ + 'foo' \ + 'core-linux-eglibc' \ + '>=' \ + '1.0' \ + 'core-linux-eglibc' + +testcase \ + 'busybox (<< 1.21.1.12)' \ + 'busybox' \ + '' \ + '<<' \ + '1.21.1.12' \ + '' -- cgit v0.9.1