43 lines
1.3 KiB
Bash
43 lines
1.3 KiB
Bash
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
PLUGIN_DIR="$(cd "$(dirname "$0")/.." && pwd)"
|
|
TMP_DIR="$(mktemp -d)"
|
|
trap 'rm -rf "$TMP_DIR"' EXIT
|
|
|
|
fail() {
|
|
echo "FAIL: $*" >&2
|
|
exit 1
|
|
}
|
|
|
|
CPIF="$TMP_DIR/custom_package_items.conf"
|
|
SETTINGS="$TMP_DIR/plugin-settings.conf"
|
|
|
|
ALT_MYSQL_TEST_ASSUME_ROOT=1 \
|
|
ALT_MYSQL_TEST_ONLY_CUSTOM_PACKAGE_ITEMS=1 \
|
|
ALT_MYSQL_CUSTOM_PACKAGE_ITEMS_CONF="$CPIF" \
|
|
ALT_MYSQL_SETTINGS_FILE="$SETTINGS" \
|
|
bash "$PLUGIN_DIR/scripts/install.sh" >/dev/null
|
|
|
|
[ -f "$CPIF" ] || fail "custom package items file was not created"
|
|
if grep -Eq '^(mysql_enabled|mysql|umysql|mysql_max_databases|mysql_unlimited|umysql_max_databases)=' "$CPIF"; then
|
|
cat "$CPIF" >&2
|
|
fail "always_enabled=1 should not add per-user access or database limit custom fields"
|
|
fi
|
|
|
|
cat > "$SETTINGS" <<'EOF'
|
|
always_enabled=0
|
|
EOF
|
|
|
|
ALT_MYSQL_TEST_ASSUME_ROOT=1 \
|
|
ALT_MYSQL_TEST_ONLY_CUSTOM_PACKAGE_ITEMS=1 \
|
|
ALT_MYSQL_CUSTOM_PACKAGE_ITEMS_CONF="$CPIF" \
|
|
ALT_MYSQL_SETTINGS_FILE="$SETTINGS" \
|
|
bash "$PLUGIN_DIR/scripts/install.sh" >/dev/null
|
|
|
|
grep -Fq 'mysql_enabled=' "$CPIF" || fail "always_enabled=0 should add mysql_enabled field"
|
|
grep -Fq 'mysql=type=text' "$CPIF" || fail "always_enabled=0 should add mysql database limit input"
|
|
grep -Fq 'umysql=type=checkbox' "$CPIF" || fail "always_enabled=0 should add unlimited checkbox"
|
|
|
|
echo "custom_package_items_test: OK"
|