From d03309a89920ebc8c7f61d7bfcc5b3cc4c7836e5 Mon Sep 17 00:00:00 2001 From: P. J. McDermott Date: Thu, 15 May 2014 13:22:24 -0400 Subject: tests/ob_plat_is_concerned.sh: New test. The last test case is currently expected to fail: FAIL: tests/ob_plat_is_concerned.sh False positive: Host platform: "all" Package platforms: "!dev" (There are also some errors about _ob_local.) --- diff --git a/tests/local.mk b/tests/local.mk index bc68871..30cb38c 100644 --- a/tests/local.mk +++ b/tests/local.mk @@ -19,9 +19,11 @@ tests = \ tests/ob_match_arch.sh \ tests/ob_parse_dep.sh \ - tests/ob_reduce_deps.sh + tests/ob_reduce_deps.sh \ + tests/ob_plat_is_concerned.sh tests_data = \ tests/ob_match_arch.rc \ tests/ob_parse_dep.rc \ - tests/ob_reduce_deps.rc + tests/ob_reduce_deps.rc \ + tests/ob_plat_is_concerned.rc diff --git a/tests/ob_plat_is_concerned.rc b/tests/ob_plat_is_concerned.rc new file mode 100644 index 0000000..d4373df --- /dev/null +++ b/tests/ob_plat_is_concerned.rc @@ -0,0 +1,67 @@ +# Platform: all + +host_plat='dev' +plats='all' +result='false' +testcase + +host_plat='ao751h' +plats='all' +result='false' +testcase + +host_plat='all' +plats='all' +result='true' +testcase + +# Platform: any + +host_plat='dev' +plats='any' +result='true' +testcase + +host_plat='ao751h' +plats='any' +result='true' +testcase + +host_plat='all' +plats='any' +result='false' +testcase + +# Platform: dev + +host_plat='dev' +plats='dev' +result='true' +testcase + +host_plat='ao751h' +plats='dev' +result='false' +testcase + +host_plat='all' +plats='dev' +result='false' +testcase + +# Platform: !dev + +host_plat='dev' +plats='!dev' +result='false' +testcase + +host_plat='ao751h' +plats='!dev' +result='true' +testcase + +host_plat='all' +plats='!dev' +result='false' +testcase diff --git a/tests/ob_plat_is_concerned.sh b/tests/ob_plat_is_concerned.sh new file mode 100644 index 0000000..2fa7339 --- /dev/null +++ b/tests/ob_plat_is_concerned.sh @@ -0,0 +1,55 @@ +# opkbuild +# tests/ob_plat_is_concerned +# Tests for ob_plat_is_concerned. +# +# Copyright (C) 2012, 2014 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 . + +. ./common.sh + +ob_use metadata + +ret=0 +host_plat= +plats= +result= + +main() +{ + . ./ob_plat_is_concerned.rc + + exit ${ret} +} + +testcase() +{ + if ob_plat_is_concerned "${host_plat}" "${plats}"; then + if ! ${result}; then + printf 'False positive:\n' >&2 + printf ' Host platform: "%s"\n' "${host_plat}" >&2 + printf ' Package platforms: "%s"\n' "${plats}" >&2 + ret=1 + fi + else + if ${result}; then + printf 'False negative:\n' >&2 + printf ' Host platform: "%s"\n' "${host_plat}" >&2 + printf ' Package platforms: "%s"\n' "${plats}" >&2 + ret=1 + fi + fi +} + +main "${@}" -- cgit v0.9.1