File size: 1,990 Bytes
3374e90 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | #!/bin/bash
# End-to-end test script for BEX Plugin Engine v2.0
set -e
export PATH="$HOME/.cargo/bin:$PATH"
BEX="./target/debug/bex"
DATA_DIR="/tmp/bex-test-$$"
echo "=== BEX Plugin Engine v2.0 E2E Test ==="
echo ""
# Clean up any previous test data
rm -rf "$DATA_DIR"
mkdir -p "$DATA_DIR"
echo "[1] Packing plugins..."
$BEX --data-dir "$DATA_DIR" pack dist/bex-imdb.yaml dist/bex_imdb.wasm /tmp/bex-imdb.bex
$BEX --data-dir "$DATA_DIR" pack dist/bex-kaianime.yaml dist/bex_kaianime.wasm /tmp/bex-kaianime.bex
$BEX --data-dir "$DATA_DIR" pack dist/bex-kisskh.yaml dist/bex_kisskh.wasm /tmp/bex-kisskh.bex
echo " -> All 3 plugins packed successfully"
echo ""
echo "[2] Inspecting packages..."
$BEX --data-dir "$DATA_DIR" inspect /tmp/bex-imdb.bex
echo ""
$BEX --data-dir "$DATA_DIR" inspect /tmp/bex-kaianime.bex
echo ""
$BEX --data-dir "$DATA_DIR" inspect /tmp/bex-kisskh.bex
echo ""
echo "[3] Installing plugins..."
$BEX --data-dir "$DATA_DIR" install /tmp/bex-imdb.bex
$BEX --data-dir "$DATA_DIR" install /tmp/bex-kaianime.bex
$BEX --data-dir "$DATA_DIR" install /tmp/bex-kisskh.bex
echo ""
echo "[4] Listing plugins..."
$BEX --data-dir "$DATA_DIR" list
echo ""
echo "[5] Testing stats..."
$BEX --data-dir "$DATA_DIR" stats
echo ""
echo "[6] Testing KaiAnime get-home..."
$BEX --data-dir "$DATA_DIR" home bex.kaianime | head -30
echo ""
echo "[7] Testing KaiAnime search..."
$BEX --data-dir "$DATA_DIR" search bex.kaianime "one piece" | head -20
echo ""
echo "[8] Testing enable/disable..."
$BEX --data-dir "$DATA_DIR" disable bex.imdb
$BEX --data-dir "$DATA_DIR" list
$BEX --data-dir "$DATA_DIR" enable bex.imdb
$BEX --data-dir "$DATA_DIR" list
echo ""
echo "[9] Testing uninstall..."
$BEX --data-dir "$DATA_DIR" uninstall bex.imdb
$BEX --data-dir "$DATA_DIR" list
echo ""
echo "[10] Testing reinstall..."
$BEX --data-dir "$DATA_DIR" install /tmp/bex-imdb.bex
$BEX --data-dir "$DATA_DIR" list
echo ""
# Clean up
rm -rf "$DATA_DIR"
echo ""
echo "=== ALL TESTS PASSED ==="
|