aboutsummaryrefslogtreecommitdiff
path: root/test/manual/daemon-transport-test.ts
diff options
context:
space:
mode:
authoramankumarsingh77 <amankumarsingh7702@gmail.com>2026-07-28 20:32:57 +0530
committerAman Kumar <145339995+amankumarsingh77@users.noreply.github.com>2026-08-02 19:12:46 +0530
commit34e5cfdcbe29bbb5f2f46ba54eb67903abd9274d (patch)
treef7b421652a7664d97362a308f4a1288cce2ef5b0 /test/manual/daemon-transport-test.ts
parent91a2fdeff796bae8e87d9146e2d540550f54dd74 (diff)
refactor(test): strip comment noise
Removes suite banners, section dividers, and test-id markers that restate the test names. Keeps one-line notes for the deleted-binary fixture order, the never-arriving event consumer, the absent-vs-undefined key distinction, the unexpected-method-echo rationale, and the real-browser teardown and Local State flush quirks. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'test/manual/daemon-transport-test.ts')
-rw-r--r--test/manual/daemon-transport-test.ts23
1 files changed, 1 insertions, 22 deletions
diff --git a/test/manual/daemon-transport-test.ts b/test/manual/daemon-transport-test.ts
index e9660c8..5738e23 100644
--- a/test/manual/daemon-transport-test.ts
+++ b/test/manual/daemon-transport-test.ts
@@ -1,10 +1,3 @@
-/**
- * Integration test: IpcServer + DaemonTransport end-to-end.
- * Starts a real IpcServer, connects a DaemonTransport, sends CDP requests.
- * No Chrome required — the server simulates CDP responses.
- *
- * Run: npx tsx test/manual/daemon-transport-test.ts
- */
import { createIpcServer } from "../../src/daemon/server";
import { createDaemonTransport } from "../../src/cdp/daemon-transport";
import { DAEMON_SOCKET_PATH } from "../../src/daemon/protocol";
@@ -19,17 +12,13 @@ const check = (cond: boolean, label: string) => {
};
async function main() {
- // Clean up any stale socket
try { unlinkSync(DAEMON_SOCKET_PATH); } catch {}
- // ── Start IpcServer ────────────────────────────────────────────────────
console.log("Starting IpcServer...");
const server = createIpcServer();
- // When a request arrives, reply with a fake CDP response
server.onMessage((msg, client) => {
if (msg.type === "request") {
- // Simulate a CDP response
const reply: WireMessage = {
type: "response",
id: msg.id,
@@ -42,15 +31,12 @@ async function main() {
await server.start();
console.log("Server started ✓");
- // ── Create DaemonTransport ─────────────────────────────────────────────
const transport = createDaemonTransport("pi-test-transport");
- // ── Test 1: Connect ────────────────────────────────────────────────────
const connResult = await transport.connect("");
check(connResult.success, `Connect: ${connResult.success ? "ok" : connResult.error.message}`);
check(transport.state() === "open", `State is "open" (actual: "${transport.state()}")`);
- // ── Test 2: Send a request ─────────────────────────────────────────────
const reqResult = await transport.request("Page.navigate", { url: "https://example.com" });
check(reqResult.success, `Request succeeded: ${reqResult.success}`);
if (reqResult.success) {
@@ -59,11 +45,9 @@ async function main() {
check(data?.method === "Page.navigate", "Response echoes method");
}
- // ── Test 3: Send request with sessionId ────────────────────────────────
const req2 = await transport.request("Runtime.evaluate", { expression: "1+1" }, { sessionId: "abc123" });
check(req2.success, "Request with sessionId succeeded");
- // ── Test 4: Events ─────────────────────────────────────────────────────
const eventPromise = new Promise<boolean>((resolve) => {
const timeout = setTimeout(() => resolve(false), 2000);
(async () => {
@@ -75,7 +59,6 @@ async function main() {
})();
});
- // Simulate server sending an event
server.broadcast({
type: "event",
method: "Target.targetCreated",
@@ -85,7 +68,6 @@ async function main() {
const gotEvent = await eventPromise;
check(gotEvent, "Event received via transport.events()");
- // ── Test 5: Close transport ────────────────────────────────────────────
let closeFired = false;
transport.onClose(() => { closeFired = true; });
@@ -93,16 +75,13 @@ async function main() {
check(transport.state() === "closed", "State is closed after close()");
check(closeFired, "onClose handler fired");
- // ── Test 6: Reconnect ──────────────────────────────────────────────────
- await new Promise(r => setTimeout(r, 500)); // let server process socket close
+ await new Promise(r => setTimeout(r, 500));
const reconnectResult = await transport.connect("");
check(reconnectResult.success, `Reconnect: ${reconnectResult.success ? "ok" : reconnectResult.error.message}`);
- // ── Test 7: Request after reconnect ────────────────────────────────────
const req3 = await transport.request("Browser.getVersion", {});
check(req3.success, "Request after reconnect succeeded");
- // ── Cleanup ────────────────────────────────────────────────────────────
await transport.close();
await server.stop();
console.log("Cleanup complete ✓");