summaryrefslogtreecommitdiff
path: root/tests/test-decky-mirror-ujust.sh
diff options
context:
space:
mode:
authortranch <tranch.xiao@gmail.com>2026-09-13 19:18:04 +0800
committertranch <tranch.xiao@gmail.com>2026-09-13 19:18:04 +0800
commit796c6c8a70c92d4675df7c2ec2d25ecda139d723 (patch)
tree06c6d3e7788d7b2ad5ddd0565e2651c0c8d9d151 /tests/test-decky-mirror-ujust.sh
parentab070aec5f1d760a2539e14cb19da61593bded15 (diff)
parentd734f2c746632772b794143762f2fcea78e62011 (diff)
downloadAeroCore-OS-796c6c8a70c92d4675df7c2ec2d25ecda139d723.tar.gz
AeroCore-OS-796c6c8a70c92d4675df7c2ec2d25ecda139d723.zip
Merge testing into main for 44.x stable release44.20260913
Diffstat (limited to 'tests/test-decky-mirror-ujust.sh')
-rwxr-xr-xtests/test-decky-mirror-ujust.sh51
1 files changed, 51 insertions, 0 deletions
diff --git a/tests/test-decky-mirror-ujust.sh b/tests/test-decky-mirror-ujust.sh
new file mode 100755
index 0000000..6950c31
--- /dev/null
+++ b/tests/test-decky-mirror-ujust.sh
@@ -0,0 +1,51 @@
+#!/usr/bin/env bash
+set -euo pipefail
+
+project_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
+recipe="${project_root}/system_files/usr/share/ublue-os/just/92-aerocore-decky-mirror.just"
+
+if [[ ! -f "${recipe}" ]]; then
+ echo "Missing Decky mirror ujust recipe: ${recipe}" >&2
+ exit 1
+fi
+
+if ! rg -q '^setup-decky-mirror ACTION=""' "${recipe}"; then
+ echo "Decky mirror recipe must expose ujust setup-decky-mirror" >&2
+ exit 1
+fi
+
+if ! rg -q 'decky\.mirror\.aerocore\.com\.cn' "${recipe}"; then
+ echo "Decky mirror recipe must default to the AeroCore Decky mirror host" >&2
+ exit 1
+fi
+
+if rg -q 'https://github\.com/SteamDeckHomebrew/decky-installer' "${recipe}"; then
+ echo "Decky mirror recipe must not install from GitHub" >&2
+ exit 1
+fi
+
+if ! rg -q 'configure_plugin_store\(\)' "${recipe}" || \
+ ! rg -q 'plugins\.decky\.mirror\.aerocore\.com\.cn' "${recipe}" || \
+ ! rg -q 'DECKY_PLUGIN_STORE_URL=.*\/plugins' "${recipe}"; then
+ echo "Decky mirror recipe must configure the AeroCore plugin store URL" >&2
+ exit 1
+fi
+
+if ! rg -q 'loader\.json' "${recipe}" || ! rg -q '\.store = 2' "${recipe}" || ! rg -q 'store-url' "${recipe}"; then
+ echo "Decky mirror recipe must persist the custom plugin store in loader.json" >&2
+ exit 1
+fi
+
+if ! rg -q 'rm -rf.*HOMEBREW_FOLDER.*/services/PluginLoader' "${recipe}" ||
+ ! rg -q 'rm -f.*USER_DIR.*/\.steam/steam/\.cef-enable-remote-debugging' "${recipe}" ||
+ ! rg -q 'rm -f.*USER_DIR.*/\.var/app/com\.valvesoftware\.Steam/data/Steam/\.cef-enable-remote-debugging' "${recipe}"; then
+ echo "Decky mirror recipe must make uninstall safe for missing paths" >&2
+ exit 1
+fi
+
+for script_name in install_release.sh install_prerelease.sh uninstall.sh; do
+ if ! rg -q "\\$\\{DECKY_INSTALLER_BASE\\}/${script_name}" "${recipe}"; then
+ echo "Decky mirror recipe does not route ${script_name} through the mirror base" >&2
+ exit 1
+ fi
+done