24d8fbd366
- wizard.sh + connect.conf: TUNNEL_LOCAL_SSH_PORT back to 2223 (Synology SSH port) - port-registry: renamed x6340 → x4662 (matches QuickConnect ID) - port-registry: added MR2200ac mesh satellite note for x4662 - deployment checklist: added kit-connect section, post-deployment rules, incident log, and complete fleet port registry table - memory: added fleet-router-inventory.md with full fleet state - hub README: updated with current status and locations Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
60 lines
1.6 KiB
Bash
60 lines
1.6 KiB
Bash
FIXTURES="$BATS_TEST_DIRNAME/../fixtures"
|
|
|
|
setup() {
|
|
load '../../package/kit-busrouter/files/usr/lib/busrouter/starlink.sh'
|
|
}
|
|
|
|
# Helper: run _starlink_parse on a fixture file
|
|
_parse_fixture() {
|
|
_starlink_parse < "$FIXTURES/$1"
|
|
}
|
|
|
|
@test "starlink: online dish: lat=28 dl=200000000 obstructed=0 outage=0" {
|
|
run _parse_fixture starlink-online.json
|
|
[ "$status" -eq 0 ]
|
|
lat=$(echo "$output" | awk '{print $1}')
|
|
dl=$(echo "$output" | awk '{print $2}')
|
|
obs=$(echo "$output" | awk '{print $3}')
|
|
outage=$(echo "$output" | awk '{print $4}')
|
|
[ "$lat" -eq 28 ]
|
|
[ "$dl" -gt 100000000 ]
|
|
[ "$obs" -eq 0 ]
|
|
[ "$outage" -eq 0 ]
|
|
}
|
|
|
|
@test "starlink: obstructed dish: obstructed=1" {
|
|
run _parse_fixture starlink-obstructed.json
|
|
[ "$status" -eq 0 ]
|
|
obs=$(echo "$output" | awk '{print $3}')
|
|
[ "$obs" -eq 1 ]
|
|
}
|
|
|
|
@test "starlink: obstructed dish: fractionObstructed>0.01 sets obstructed=1" {
|
|
run _parse_fixture starlink-obstructed.json
|
|
[ "$status" -eq 0 ]
|
|
obs=$(echo "$output" | awk '{print $3}')
|
|
[ "$obs" -eq 1 ]
|
|
}
|
|
|
|
@test "starlink: outage dish: outage=1" {
|
|
run _parse_fixture starlink-outage.json
|
|
[ "$status" -eq 0 ]
|
|
outage=$(echo "$output" | awk '{print $4}')
|
|
[ "$outage" -eq 1 ]
|
|
}
|
|
|
|
@test "starlink: outage dish: dl=0 lat=0" {
|
|
run _parse_fixture starlink-outage.json
|
|
[ "$status" -eq 0 ]
|
|
lat=$(echo "$output" | awk '{print $1}')
|
|
dl=$(echo "$output" | awk '{print $2}')
|
|
[ "$lat" -eq 0 ]
|
|
[ "$dl" -eq 0 ]
|
|
}
|
|
|
|
@test "starlink: grpcurl absent returns exit 1" {
|
|
export GRPCURL=/nonexistent/grpcurl
|
|
run starlink_status
|
|
[ "$status" -eq 1 ]
|
|
}
|