Skip to content

Commit a06196e

Browse files
committed
debug: add iwdp connection diagnostics to CI simulator job
1 parent 46a9330 commit a06196e

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

.github/workflows/test.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,39 @@ jobs:
110110
eval "$(./scripts/sim-setup.sh)"
111111
echo "IWDP_SIM_WS_URL=$IWDP_SIM_WS_URL" >> "$GITHUB_ENV"
112112
113+
- name: Debug iwdp connection
114+
run: |
115+
echo "=== iwdp version ==="
116+
ios_webkit_debug_proxy --version || true
117+
echo ""
118+
echo "=== Devices on port 9221 ==="
119+
curl -sf http://localhost:9221/json | python3 -m json.tool || echo "FAILED"
120+
echo ""
121+
echo "=== Pages on port 9222 ==="
122+
curl -sf http://localhost:9222/json | python3 -m json.tool || echo "FAILED"
123+
echo ""
124+
echo "=== Raw WebSocket test (first 5 messages) ==="
125+
python3 -c "
126+
import websocket, json, time
127+
ws = websocket.create_connection('$IWDP_SIM_WS_URL', timeout=5)
128+
for i in range(5):
129+
try:
130+
msg = ws.recv()
131+
print(f'Message {i}: {msg}')
132+
except:
133+
print(f'No more messages after {i}')
134+
break
135+
# Try sending a direct Runtime.evaluate
136+
ws.send(json.dumps({'id': 1, 'method': 'Runtime.evaluate', 'params': {'expression': '1+1'}}))
137+
time.sleep(1)
138+
try:
139+
resp = ws.recv()
140+
print(f'Direct response: {resp}')
141+
except:
142+
print('No response to direct message')
143+
ws.close()
144+
" 2>&1 || echo "Python websocket test failed (may need pip install websocket-client)"
145+
113146
- name: Run simulator tests with coverage
114147
run: go test -tags=simulator ./... -v -count=1 -timeout=300s -coverprofile=coverage-simulator.out
115148

0 commit comments

Comments
 (0)