mirror of
https://github.com/gentoo-mirror/guru.git
synced 2025-04-20 00:08:58 -04:00
98 lines
2.0 KiB
Bash
Executable File
98 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
# Copyright 2024 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
GENTOO_REPO=$(portageq get_repo_path / gentoo) || exit
|
|
source "${GENTOO_REPO}"/eclass/tests/tests-common.sh || exit
|
|
TESTS_ECLASS_SEARCH_PATHS+=( "${GENTOO_REPO}"/eclass )
|
|
|
|
declare -A DATABASES_REQ_USE=(
|
|
[mongod]="ssl"
|
|
[postgres]="xml"
|
|
)
|
|
|
|
inherit databases
|
|
|
|
HELPERS=( ememcached emongod emysql epostgres eredis )
|
|
|
|
test_depend() {
|
|
tbegin "if \${DATABASES_DEPEND} is defined"
|
|
declare -p DATABASES_DEPEND &>/dev/null
|
|
tend $?
|
|
|
|
tbegin "\${DATABASES_DEPEND[memcached]}"
|
|
test "${DATABASES_DEPEND[memcached]}" == "net-misc/memcached"
|
|
tend $?
|
|
|
|
tbegin "\${DATABASES_DEPEND[mongod]}"
|
|
test "${DATABASES_DEPEND[mongod]}" == "dev-db/mongodb[ssl]"
|
|
tend $?
|
|
|
|
tbegin "\${DATABASES_DEPEND[mysql]}"
|
|
test "${DATABASES_DEPEND[mysql]}" == "virtual/mysql[server]"
|
|
tend $?
|
|
|
|
tbegin "\${DATABASES_DEPEND[postgres]}"
|
|
test "${DATABASES_DEPEND[postgres]}" == "dev-db/postgresql[server,xml]"
|
|
tend $?
|
|
|
|
tbegin "\${DATABASES_DEPEND[redis]}"
|
|
test "${DATABASES_DEPEND[redis]}" == "dev-db/redis"
|
|
tend $?
|
|
}
|
|
|
|
test_add_deps() {
|
|
local IUSE= RESTRICT= BDEPEND=
|
|
local helper=${1?}
|
|
|
|
IUSE= RESTRICT= BDEPEND=
|
|
tbegin "'${helper} --add-deps test'"
|
|
${helper} --add-deps test && [[ ${BDEPEND} && ${IUSE} && ${RESTRICT} ]]
|
|
tend $?
|
|
|
|
IUSE= RESTRICT= BDEPEND=
|
|
tbegin "'${helper} --add-deps test-db'"
|
|
${helper} --add-deps test-db && [[ ${BDEPEND} && ${IUSE} && ! ${RESTRICT} ]]
|
|
tend $?
|
|
}
|
|
|
|
test_getters() {
|
|
local helper=${1?}
|
|
local getters=(
|
|
--get-dbpath
|
|
--get-logfile
|
|
--get-pidfile
|
|
--get-sockdir
|
|
--get-sockfile
|
|
)
|
|
|
|
for getter in "${getters[@]}"; do
|
|
tbegin "'${helper} ${getter}'"
|
|
test -n "$(${helper} ${getter})"
|
|
tend $?
|
|
done
|
|
}
|
|
|
|
einfo "Testing dependency strings"
|
|
eindent
|
|
test_depend
|
|
eoutdent
|
|
|
|
einfo "Testing --add-deps helper"
|
|
eindent
|
|
for helper in "${HELPERS[@]}"; do
|
|
test_add_deps ${helper}
|
|
done
|
|
eoutdent
|
|
|
|
einfo "Testing --get-* helpers"
|
|
eindent
|
|
for helper in "${HELPERS[@]}"; do
|
|
test_getters ${helper}
|
|
done
|
|
eoutdent
|
|
|
|
texit
|