mirror of
https://github.com/Quad4-Software/MeshChatX.git
synced 2026-08-18 09:49:09 -04:00
57 lines
2.1 KiB
Bash
Executable file
57 lines
2.1 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
# Smoke tests for verify-package-contents.sh (no full freeze required).
|
|
set -euo pipefail
|
|
|
|
ROOT="$(CDPATH='' cd -- "$(dirname "$0")/../.." && pwd)"
|
|
SCRIPT="$ROOT/scripts/ci/verify-package-contents.sh"
|
|
tmp="$(mktemp -d "${TMPDIR:-/tmp}/pkg-bloat-test.XXXXXX")"
|
|
trap 'rm -rf "$tmp"' EXIT INT
|
|
|
|
mkdir -p "$tmp/clean/lib/meshchatx/src/backend"
|
|
echo ok >"$tmp/clean/lib/meshchatx/src/backend/x.py"
|
|
|
|
mkdir -p "$tmp/dirty/lib/meshchatx/src/frontend/components"
|
|
mkdir -p "$tmp/dirty/lib/numpy/tests"
|
|
mkdir -p "$tmp/dirty/node_modules/left-pad"
|
|
echo vue >"$tmp/dirty/lib/meshchatx/src/frontend/components/App.vue"
|
|
echo junk >"$tmp/dirty/lib/numpy/tests/test_x.py"
|
|
echo junk >"$tmp/dirty/node_modules/left-pad/index.js"
|
|
|
|
echo "expect clean dir to pass"
|
|
bash "$SCRIPT" dir "$tmp/clean"
|
|
|
|
echo "expect clean frozen tree to pass"
|
|
bash "$SCRIPT" frozen "$tmp/clean"
|
|
|
|
echo "expect dirty frozen tree to fail"
|
|
if bash "$SCRIPT" frozen "$tmp/dirty"; then
|
|
echo "expected failure for dirty frozen tree" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "expect dirty dir (node_modules) to fail"
|
|
if bash "$SCRIPT" dir "$tmp/dirty"; then
|
|
echo "expected failure for dirty dir" >&2
|
|
exit 1
|
|
fi
|
|
|
|
mkdir -p "$tmp/lxst-android/lib/python3.14/site-packages/LXST/Platforms/android"
|
|
echo ok >"$tmp/lxst-android/lib/python3.14/site-packages/LXST/Platforms/android/soundcard.py"
|
|
echo "expect LXST Platforms/android paths to pass dir scan (APK-relevant)"
|
|
bash "$SCRIPT" dir "$tmp/lxst-android"
|
|
|
|
echo "expect MeshChatX android/app denylist to match app tree only"
|
|
if ! printf '%s\n' "android/app/build.gradle" | grep -Eq '(^|/)android/(app|gradle)(/|$)'; then
|
|
echo "expected android/app denylist match" >&2
|
|
exit 1
|
|
fi
|
|
if printf '%s\n' "lib/python3.14/site-packages/LXST/Platforms/android/soundcard.py" | grep -Eq '(^|/)android/(app|gradle)(/|$)|(^)android(/|$)'; then
|
|
echo "LXST Platforms/android must not match ANDROID_APP_DENY_RE" >&2
|
|
exit 1
|
|
fi
|
|
if ! printf '%s\n' "lib/python3.14/site-packages/LXST/Platforms/android/soundcard.py" | grep -Eq '(^|/)LXST/Platforms/android(/|$)'; then
|
|
echo "expected LXST Platforms/android docker denylist match" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "verify-package-contents smoke OK"
|