summaryrefslogtreecommitdiff
path: root/test/lib/common.inc
diff options
context:
space:
mode:
Diffstat (limited to 'test/lib/common.inc')
-rw-r--r--test/lib/common.inc78
1 files changed, 31 insertions, 47 deletions
diff --git a/test/lib/common.inc b/test/lib/common.inc
index b9a2f9d..d0c7fec 100644
--- a/test/lib/common.inc
+++ b/test/lib/common.inc
@@ -1,23 +1,9 @@
+#!/hint/bash
set -E
-# override the default TMPDIR
-init_tmpdir() {
- [[ -n $MASTER_TMPDIR ]] || export MASTER_TMPDIR="$(mktemp -dqt ${0##*/}.XXXXXXXXXX)"
- export TMPDIR=$MASTER_TMPDIR
-}
-
-_TMPDIR=$TMPDIR
-. "$(dirname ${BASH_SOURCE[0]})/../../config"
-TMPDIR=$_TMPDIR
-init_tmpdir
-
-. "$(dirname ${BASH_SOURCE[0]})/../../db-functions"
-
-arches() (
- . $(librelib conf.sh)
- load_files libretools
- printf '%s\n' "${ARCHES[*]}"
-)
+. "$(dirname "${BASH_SOURCE[0]}")/../../config"
+. "$(dirname "${BASH_SOURCE[0]}")/../../config.testing"
+. "$(dirname "${BASH_SOURCE[0]}")/../../db-functions"
arch_svn() {
/usr/bin/svn "$@"
@@ -42,7 +28,6 @@ oneTimeSetUp() {
local p
local d
local a
- local arches=($(arches))
local pkgname
local pkgarch
local pkgversion
@@ -51,10 +36,10 @@ oneTimeSetUp() {
cp -Lr "$(dirname "${BASH_SOURCE[0]}")"/../packages/* "${pkgdir}"
msg 'Building packages...'
for d in "${pkgdir}"/*; do
- pushd $d >/dev/null
+ pushd "$d" >/dev/null
pkgname=($(. PKGBUILD; echo "${pkgname[@]}"))
pkgarch=($(. PKGBUILD; echo "${arch[@]}"))
- pkgversion=$(. PKGBUILD; get_full_version)
+ pkgversion=$(. PKGBUILD; get_full_version "${epoch:-0}" "${pkgver}" "${pkgrel}")
build=true
for a in "${pkgarch[@]}"; do
@@ -65,10 +50,10 @@ oneTimeSetUp() {
if ! "${build}"; then
if [ "${pkgarch[0]}" == 'any' ]; then
- sudo libremakepkg || die 'libremakepkg failed'
+ sudo libremakepkg || die 'libremakepkg failed'
else
for a in "${pkgarch[@]}"; do
- if in_array "$a" "${arches[@]}"; then
+ if in_array "$a" "${ARCH_BUILD[@]}"; then
sudo setarch "$a" libremakepkg -n "$a" || die "setarch ${a} libremakepkg -n ${a} failed"
for p in "${pkgname[@]}"; do
cp "${p}-${pkgversion}-${a}"${PKGEXT} "$(dirname "${BASH_SOURCE[0]})/../packages/${d##*/}")"
@@ -94,7 +79,6 @@ setUp() {
local a
[ -f "$(dirname "${BASH_SOURCE[0]}")/../../config.local" ] && die "$(dirname "${BASH_SOURCE[0]}")/../../config.local exists"
- init_tmpdir
TMP="$(mktemp -dt "${0##*/}.XXXXXXXXXX")"
#msg "Using ${TMP}"
@@ -129,13 +113,13 @@ setUp() {
printf '%s\n' \
'SVNURL=foo' \
"SVNREPO=\"${TMP}/svn-packages-copy\"" \
- "ARCHES=($(arches))" \
+ "ARCHES=($(printf '%q ' "${BUILD_ARCHES[@]}"))" \
> "$XDG_CONFIG_HOME/libretools/xbs-abs.conf"
printf '%s\n' 'BUILDSYSTEM=abs' > "$XDG_CONFIG_HOME/xbs.conf"
cat <<eot > "$(dirname "${BASH_SOURCE[0]}")/../../config.local"
FTP_BASE="${TMP}/ftp"
- SVNREPO="${TMP}/svn-packages-copy"
+ SVNREPO="file://${TMP}/svn-packages-repo"
PKGREPOS=("${PKGREPOS[@]}")
PKGPOOL="${PKGPOOL}"
SRCPOOL="${SRCPOOL}"
@@ -169,7 +153,7 @@ releasePackage() {
pushd "${TMP}/svn-packages-copy/${pkgbase}/trunk/" >/dev/null
xbs release "${repo}" "${arch}" >/dev/null 2>&1
- pkgver=$(. PKGBUILD; get_full_version)
+ pkgver=$(. PKGBUILD; get_full_version "${epoch:-0}" "${pkgver}" "${pkgrel}")
pkgname=($(. PKGBUILD; echo "${pkgname[@]}"))
popd >/dev/null
cp "${pkgdir}/${pkgbase}"/*-"${pkgver}-${arch}"${PKGEXT} "${STAGING}/${repo}/"
@@ -194,32 +178,32 @@ checkAnyPackageDB() {
[ -r "${FTP_BASE}/${PKGPOOL}/${pkg}.sig" ] || fail "${PKGPOOL}/${pkg}.sig not found"
fi
- for arch in $(arches); do
+ for arch in "${ARCH_BUILD[@]}"; do
[ -L "${FTP_BASE}/${repo}/os/${arch}/${pkg}" ] || fail "${repo}/os/${arch}/${pkg} is not a symlink"
[ "$(readlink -e "${FTP_BASE}/${repo}/os/${arch}/${pkg}")" == "$(readlink -e "${FTP_BASE}/${PKGPOOL}/${pkg}")" ] \
|| fail "${repo}/os/${arch}/${pkg} does not link to ${PKGPOOL}/${pkg}"
- if ${REQUIRE_SIGNATURE}; then
+ if "${REQUIRE_SIGNATURE}"; then
[ -L "${FTP_BASE}/${repo}/os/${arch}/${pkg}.sig" ] || fail "${repo}/os/${arch}/${pkg}.sig is not a symlink"
[ "$(readlink -e "${FTP_BASE}/${repo}/os/${arch}/${pkg}.sig")" == "$(readlink -e "${FTP_BASE}/${PKGPOOL}/${pkg}.sig")" ] \
|| fail "${repo}/os/${arch}/${pkg}.sig does not link to ${PKGPOOL}/${pkg}.sig"
fi
- for db in ${DBEXT} ${FILESEXT}; do
+ for db in "${DBEXT}" "${FILESEXT}"; do
( [ -r "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" ] \
- && bsdtar -xf "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" -O | grep ${pkg} &>/dev/null) \
+ && bsdtar -xf "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" -O | grep "${pkg}" &>/dev/null) \
|| fail "${pkg} not in ${repo}/os/${arch}/${repo}${db%.tar.*}"
done
done
- [ -r "${STAGING}"/${repo}/${pkg} ] && fail "${repo}/${pkg} found in staging dir"
- [ -r "${STAGING}"/${repo}/${pkg}.sig ] && fail "${repo}/${pkg}.sig found in staging dir"
+ [ -r "${STAGING}/${repo}/${pkg}" ] && fail "${repo}/${pkg} found in staging dir"
+ [ -r "${STAGING}/${repo}/${pkg}".sig ] && fail "${repo}/${pkg}.sig found in staging dir"
}
checkAnyPackage() {
local repo=$1
local pkg=$2
- checkAnyPackageDB $repo $pkg
+ checkAnyPackageDB "$repo" "$pkg"
local pkgbase=$(getpkgbase "${FTP_BASE}/${PKGPOOL}/${pkg}")
arch_svn up -q "${TMP}/svn-packages-copy/${pkgbase}"
@@ -235,23 +219,23 @@ checkPackageDB() {
[ -r "${FTP_BASE}/${PKGPOOL}/${pkg}" ] || fail "${PKGPOOL}/${pkg} not found"
[ -L "${FTP_BASE}/${repo}/os/${arch}/${pkg}" ] || fail "${repo}/os/${arch}/${pkg} not a symlink"
- [ -r "${STAGING}"/${repo}/${pkg} ] && fail "${repo}/${pkg} found in staging dir"
+ [ -r "${STAGING}/${repo}/${pkg}" ] && fail "${repo}/${pkg} found in staging dir"
[ "$(readlink -e "${FTP_BASE}/${repo}/os/${arch}/${pkg}")" == "$(readlink -e "${FTP_BASE}/${PKGPOOL}/${pkg}")" ] \
|| fail "${repo}/os/${arch}/${pkg} does not link to ${PKGPOOL}/${pkg}"
- if ${REQUIRE_SIGNATURE}; then
+ if "${REQUIRE_SIGNATURE}"; then
[ -r "${FTP_BASE}/${PKGPOOL}/${pkg}.sig" ] || fail "${PKGPOOL}/${pkg}.sig not found"
[ -L "${FTP_BASE}/${repo}/os/${arch}/${pkg}.sig" ] || fail "${repo}/os/${arch}/${pkg}.sig is not a symlink"
- [ -r "${STAGING}"/${repo}/${pkg}.sig ] && fail "${repo}/${pkg}.sig found in staging dir"
+ [ -r "${STAGING}/${repo}/${pkg}.sig" ] && fail "${repo}/${pkg}.sig found in staging dir"
[ "$(readlink -e "${FTP_BASE}/${repo}/os/${arch}/${pkg}.sig")" == "$(readlink -e "${FTP_BASE}/${PKGPOOL}/${pkg}.sig")" ] \
|| fail "${repo}/os/${arch}/${pkg}.sig does not link to ${PKGPOOL}/${pkg}.sig"
fi
- for db in ${DBEXT} ${FILESEXT}; do
+ for db in "${DBEXT}" "${FILESEXT}"; do
( [ -r "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" ] \
- && bsdtar -xf "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" -O | grep ${pkg} &>/dev/null) \
+ && bsdtar -xf "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" -O | grep "${pkg}" &>/dev/null) \
|| fail "${pkg} not in ${repo}/os/${arch}/${repo}${db%.tar.*}"
done
}
@@ -261,7 +245,7 @@ checkPackage() {
local pkg=$2
local arch=$3
- checkPackageDB $repo $pkg $arch
+ checkPackageDB "$repo" "$pkg" "$arch"
local pkgbase=$(getpkgbase "${FTP_BASE}/${PKGPOOL}/${pkg}")
arch_svn up -q "${TMP}/svn-packages-copy/${pkgbase}"
@@ -275,9 +259,9 @@ checkRemovedPackageDB() {
local arch=$3
local db
- for db in ${DBEXT} ${FILESEXT}; do
+ for db in "${DBEXT}" "${FILESEXT}"; do
( [ -r "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" ] \
- && bsdtar -xf "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" -O | grep ${pkgbase} &>/dev/null) \
+ && bsdtar -xf "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" -O | grep "${pkgbase}" &>/dev/null) \
&& fail "${pkgbase} should not be in ${repo}/os/${arch}/${repo}${db%.tar.*}"
done
}
@@ -287,7 +271,7 @@ checkRemovedPackage() {
local pkgbase=$2
local arch=$3
- checkRemovedPackageDB $repo $pkgbase $arch
+ checkRemovedPackageDB "$repo" "$pkgbase" "$arch"
arch_svn up -q "${TMP}/svn-packages-copy/${pkgbase}"
[ -d "${TMP}/svn-packages-copy/${pkgbase}/repos/${repo}-${arch}" ] \
@@ -300,10 +284,10 @@ checkRemovedAnyPackageDB() {
local arch
local db
- for db in ${DBEXT} ${FILESEXT}; do
- for arch in $(arches); do
+ for db in "${DBEXT}" "${FILESEXT}"; do
+ for arch in "${ARCH_BUILD[@]}"; do
( [ -r "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" ] \
- && bsdtar -xf "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" -O | grep ${pkgbase} &>/dev/null) \
+ && bsdtar -xf "${FTP_BASE}/${repo}/os/${arch}/${repo}${db%.tar.*}" -O | grep "${pkgbase}" &>/dev/null) \
&& fail "${pkgbase} should not be in ${repo}/os/${arch}/${repo}${db%.tar.*}"
done
done
@@ -313,7 +297,7 @@ checkRemovedAnyPackage() {
local repo=$1
local pkgbase=$2
- checkRemovedAnyPackageDB $repo $pkgbase
+ checkRemovedAnyPackageDB "$repo" "$pkgbase"
arch_svn up -q "${TMP}/svn-packages-copy/${pkgbase}"
[ -d "${TMP}/svn-packages-copy/${pkgbase}/repos/${repo}-any" ] \