-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest-menu.sh
More file actions
61 lines (56 loc) · 1.45 KB
/
test-menu.sh
File metadata and controls
61 lines (56 loc) · 1.45 KB
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
#!/bin/bash
# Test each menu option
options=(
"1:Browse Projects"
"2:Quick Actions"
"3:Create Project"
"4:Recent Projects"
"H:Health Dashboard"
"B:Batch Operations"
"T:Template Library"
"M:MCP Marketplace"
"G:Project Graph"
"P:Analytics Hub"
"/:Universal Search"
"?:Learning Center"
"A:AI Config Builder"
"O:Model Optimizer"
"D:Command Designer"
"X:Diagnostics"
"S:Share & Sync"
"K:Package Manager"
"Y:Git Integration"
"N:Network Monitor"
"Z:Time Machine"
"E:Environments"
"L:Quick Launcher"
"R:Live Dashboard"
"V:Voice Control"
"W:Project Wizard"
"C:Configure Projects"
"J:AI Assistant"
"q:Quit"
)
echo "Testing menu options..."
echo "========================"
for option in "${options[@]}"; do
IFS=':' read -r key name <<< "$option"
echo -n "Testing $key ($name): "
# Run with timeout and capture stderr
output=$(echo -e "$key\nq" | timeout 2 bash install-ultimate.sh 2>&1)
exit_code=$?
if [ $exit_code -eq 124 ]; then
echo "TIMEOUT"
elif [ $exit_code -ne 0 ]; then
echo "CRASHED (exit code: $exit_code)"
# Check for specific errors
if echo "$output" | grep -q "not found"; then
echo " -> Missing function/command"
fi
if echo "$output" | grep -q "unbound variable"; then
echo " -> Unbound variable error"
fi
else
echo "OK"
fi
done