diff options
| author | Adam Malczewski <[email protected]> | 2026-06-27 01:12:40 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-06-27 01:12:40 +0900 |
| commit | 98b0638838a8e754927d8c030ce8bded18d63e7d (patch) | |
| tree | 0d4e21c3d4792fcd77e1040373b260e38efa34ce /packages/cli/src/ndjson.test.ts | |
| parent | d92a4af6191d7d20acf861adf605ad0227b6b287 (diff) | |
| parent | 61e45e60d699ed1ca46f94a8f181c92a940317c6 (diff) | |
| download | dispatch-98b0638838a8e754927d8c030ce8bded18d63e7d.tar.gz dispatch-98b0638838a8e754927d8c030ce8bded18d63e7d.zip | |
Merge branch 'dev' into feature/heartbeat
# Conflicts:
# packages/host-bin/package.json
# packages/host-bin/src/main.ts
# packages/session-orchestrator/src/orchestrator.ts
# packages/system-prompt/src/service.test.ts
# packages/system-prompt/src/service.ts
# packages/system-prompt/src/types.ts
# packages/transport-contract/package.json
# packages/transport-http/package.json
# packages/transport-http/src/app.test.ts
# packages/transport-http/src/app.ts
# packages/transport-http/src/extension.ts
# packages/transport-http/tsconfig.json
# tsconfig.json
Diffstat (limited to 'packages/cli/src/ndjson.test.ts')
| -rw-r--r-- | packages/cli/src/ndjson.test.ts | 86 |
1 files changed, 43 insertions, 43 deletions
diff --git a/packages/cli/src/ndjson.test.ts b/packages/cli/src/ndjson.test.ts index 8ed3bff..5c74dfb 100644 --- a/packages/cli/src/ndjson.test.ts +++ b/packages/cli/src/ndjson.test.ts @@ -2,47 +2,47 @@ import { describe, expect, it } from "vitest"; import { splitNdjsonLines } from "./ndjson.js"; describe("splitNdjsonLines", () => { - it("splits complete lines", () => { - const result = splitNdjsonLines('{"a":1}\n{"b":2}\n'); - expect(result.lines).toEqual(['{"a":1}', '{"b":2}']); - expect(result.rest).toBe(""); - }); - - it("keeps incomplete trailing line in rest", () => { - const result = splitNdjsonLines('{"a":1}\n{"b":2'); - expect(result.lines).toEqual(['{"a":1}']); - expect(result.rest).toBe('{"b":2'); - }); - - it("returns empty lines array for single incomplete line", () => { - const result = splitNdjsonLines('{"a":1'); - expect(result.lines).toEqual([]); - expect(result.rest).toBe('{"a":1'); - }); - - it("filters out empty lines", () => { - const result = splitNdjsonLines('{"a":1}\n\n{"b":2}\n'); - expect(result.lines).toEqual(['{"a":1}', '{"b":2}']); - expect(result.rest).toBe(""); - }); - - it("handles a line split across two buffers", () => { - const buf1 = '{"a":1}\n{"b":'; - const buf2 = '2}\n{"c":3}\n'; - - const r1 = splitNdjsonLines(buf1); - expect(r1.lines).toEqual(['{"a":1}']); - expect(r1.rest).toBe('{"b":'); - - const combined = r1.rest + buf2; - const r2 = splitNdjsonLines(combined); - expect(r2.lines).toEqual(['{"b":2}', '{"c":3}']); - expect(r2.rest).toBe(""); - }); - - it("handles empty buffer", () => { - const result = splitNdjsonLines(""); - expect(result.lines).toEqual([]); - expect(result.rest).toBe(""); - }); + it("splits complete lines", () => { + const result = splitNdjsonLines('{"a":1}\n{"b":2}\n'); + expect(result.lines).toEqual(['{"a":1}', '{"b":2}']); + expect(result.rest).toBe(""); + }); + + it("keeps incomplete trailing line in rest", () => { + const result = splitNdjsonLines('{"a":1}\n{"b":2'); + expect(result.lines).toEqual(['{"a":1}']); + expect(result.rest).toBe('{"b":2'); + }); + + it("returns empty lines array for single incomplete line", () => { + const result = splitNdjsonLines('{"a":1'); + expect(result.lines).toEqual([]); + expect(result.rest).toBe('{"a":1'); + }); + + it("filters out empty lines", () => { + const result = splitNdjsonLines('{"a":1}\n\n{"b":2}\n'); + expect(result.lines).toEqual(['{"a":1}', '{"b":2}']); + expect(result.rest).toBe(""); + }); + + it("handles a line split across two buffers", () => { + const buf1 = '{"a":1}\n{"b":'; + const buf2 = '2}\n{"c":3}\n'; + + const r1 = splitNdjsonLines(buf1); + expect(r1.lines).toEqual(['{"a":1}']); + expect(r1.rest).toBe('{"b":'); + + const combined = r1.rest + buf2; + const r2 = splitNdjsonLines(combined); + expect(r2.lines).toEqual(['{"b":2}', '{"c":3}']); + expect(r2.rest).toBe(""); + }); + + it("handles empty buffer", () => { + const result = splitNdjsonLines(""); + expect(result.lines).toEqual([]); + expect(result.rest).toBe(""); + }); }); |
