From: Mike Frysinger Date: Wed, 4 Jan 2012 08:25:05 +0000 (+0000) Subject: add tests for savedconfig.eclass:restore_config too X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=c70d501d2c83e9abbcc295c29a69484365fc1aeb;p=gentoo.git add tests for savedconfig.eclass:restore_config too --- diff --git a/eclass/tests/savedconfig.sh b/eclass/tests/savedconfig.sh index 997255150ca9..8149cd33c1ca 100755 --- a/eclass/tests/savedconfig.sh +++ b/eclass/tests/savedconfig.sh @@ -4,28 +4,73 @@ source tests-common.sh inherit savedconfig -sc() { EBUILD_PHASE=install save_config "$@" ; } -rc() { EBUILD_PHASE=prepare restore_config "$@" ; } - -tbegin "simple save_config" -sc $0 >/dev/null -ret=$? -[[ -f ${ED}/etc/portage/savedconfig/${CATEGORY}/${PF} ]] -tend $(( ret + $? )) -rm -rf "${ED}/etc" - -tbegin "multi save_config" -sc *.sh >/dev/null -ret=$? -[[ -d ${ED}/etc/portage/savedconfig/${CATEGORY}/${PF} ]] -tend $(( ret + $? )) -rm -rf "${ED}/etc" - -tbegin "dir save_config" -sc CVS >/dev/null -ret=$? -[[ -d ${ED}/etc/portage/savedconfig/${CATEGORY}/${PF} ]] -tend $(( ret + $? )) -rm -rf "${ED}/etc" +quiet() { + local out ret + out=$("$@" 2>&1) + ret=$? + [[ ${ret} -eq 0 ]] || echo "${out}" + return ${ret} +} +sc() { EBUILD_PHASE=install quiet save_config "$@" ; } +rc() { EBUILD_PHASE=prepare quiet restore_config "$@" ; } + +cleanup() { rm -rf "${ED}"/* "${T}"/* "${WORKDIR}"/* ; } +test-it() { + local ret=0 + tbegin "$@" + mkdir -p "${ED}"/etc/portage/savedconfig + : $(( ret |= $? )) + pushd "${WORKDIR}" >/dev/null + : $(( ret |= $? )) + test + : $(( ret |= $? )) + popd >/dev/null + : $(( ret |= $? )) + tend ${ret} + cleanup +} + +test() { + touch f || return 1 + sc f || return 1 + [[ -f ${ED}/etc/portage/savedconfig/${CATEGORY}/${PF} ]] +} +test-it "simple save_config" + +test() { + touch a b c || return 1 + sc a b c || return 1 + [[ -d ${ED}/etc/portage/savedconfig/${CATEGORY}/${PF} ]] +} +test-it "multi save_config" + +test() { + mkdir dir || return 1 + touch dir/{a,b,c} || return 1 + sc dir || return 1 + [[ -d ${ED}/etc/portage/savedconfig/${CATEGORY}/${PF} ]] +} +test-it "dir save_config" + +PORTAGE_CONFIGROOT=${D} + +test() { + echo "ggg" > f || return 1 + rc f || return 1 + [[ $( f || return 1 + rc f || return 1 + [[ $( f || return 1 + rc f || return 1 + [[ $(&2 @@ -107,9 +109,12 @@ t() { } tmpdir="${PWD}/tmp" -D="${tmpdir}/$0/${RANDOM}" +pkg_root="${tmpdir}/$0/${RANDOM}" +T="${pkg_root}/temp" +D="${pkg_root}/image" +WORKDIR="${pkg_root}/work" ED=${D} -mkdir -p "${D}" +mkdir -p "${D}" "${T}" "${WORKDIR}" dodir() { mkdir -p "${@/#/${ED}/}" @@ -117,6 +122,7 @@ dodir() { elog() { einfo "$@" ; } +IUSE="" CATEGORY="dev-eclass" PN="tests" PV="0"