From 8a54f2f2354e286bc90f403c877b259089bc9edc Mon Sep 17 00:00:00 2001 From: Nikolaos Xenakis Date: Wed, 11 Mar 2026 10:30:21 +0100 Subject: [PATCH 1/3] fix(pic): include request path in PocketIC server error messages (#70) --- packages/pic/src/http2-client.ts | 4 ++-- packages/pic/tests/src/util/http2-client.spec.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/pic/src/http2-client.ts b/packages/pic/src/http2-client.ts index 7eeb405..44e8861 100644 --- a/packages/pic/src/http2-client.ts +++ b/packages/pic/src/http2-client.ts @@ -99,7 +99,7 @@ export class Http2Client { // server encountered an error, fail immediately if ('message' in resBody) { - throw new ServerError(resBody.message); + throw new ServerError(`${resBody.message} (${init.path})`); } // the server has started processing or is busy @@ -149,7 +149,7 @@ export class Http2Client { // server encountered an error, fail immediately if ('message' in resBody) { - throw new ServerError(resBody.message); + throw new ServerError(`${resBody.message} (${init.path})`); } // the server has started processing or is busy diff --git a/packages/pic/tests/src/util/http2-client.spec.ts b/packages/pic/tests/src/util/http2-client.spec.ts index be7157b..ce51bf3 100644 --- a/packages/pic/tests/src/util/http2-client.spec.ts +++ b/packages/pic/tests/src/util/http2-client.spec.ts @@ -49,7 +49,7 @@ describe('Http2Client', () => { const err = await client.jsonGet({ path: '/test' }).catch(e => e); expect(err).toBeInstanceOf(ServerError); - expect(err.serverMessage).toBe('SettingTimeIntoPast'); + expect(err.serverMessage).toBe('SettingTimeIntoPast (/test)'); expect(fetchMock).toHaveBeenCalledTimes(1); }); From a6c0a21be1133f6efa19ef8225ca9368b6d2f25a Mon Sep 17 00:00:00 2001 From: Nikolaos Xenakis Date: Wed, 11 Mar 2026 10:35:34 +0100 Subject: [PATCH 2/3] fix(pic): include request path in server error messages --- packages/pic/tests/src/util/http2-client.spec.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/packages/pic/tests/src/util/http2-client.spec.ts b/packages/pic/tests/src/util/http2-client.spec.ts index ce51bf3..2ed6059 100644 --- a/packages/pic/tests/src/util/http2-client.spec.ts +++ b/packages/pic/tests/src/util/http2-client.spec.ts @@ -134,6 +134,20 @@ describe('Http2Client', () => { expect(fetchMock).toHaveBeenCalledTimes(2); }); + it('should throw ServerError immediately on error response', async () => { + fetchMock.mockResolvedValue( + jsonResponse({ message: 'InstanceNotFound' }), + ); + + const err = await client + .jsonPost({ path: '/test' }) + .catch(e => e); + + expect(err).toBeInstanceOf(ServerError); + expect(err.serverMessage).toBe('InstanceNotFound (/test)'); + expect(fetchMock).toHaveBeenCalledTimes(1); + }); + it('should poll read_graph on 202 until the result is ready', async () => { fetchMock .mockResolvedValueOnce( From 7263ed23cc921407130c4a8da9d78b1d4c7aec25 Mon Sep 17 00:00:00 2001 From: Nikolaos Xenakis Date: Wed, 11 Mar 2026 10:37:34 +0100 Subject: [PATCH 3/3] fix(pic): lint --- packages/pic/tests/src/util/http2-client.spec.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/pic/tests/src/util/http2-client.spec.ts b/packages/pic/tests/src/util/http2-client.spec.ts index 2ed6059..0a677b8 100644 --- a/packages/pic/tests/src/util/http2-client.spec.ts +++ b/packages/pic/tests/src/util/http2-client.spec.ts @@ -139,9 +139,7 @@ describe('Http2Client', () => { jsonResponse({ message: 'InstanceNotFound' }), ); - const err = await client - .jsonPost({ path: '/test' }) - .catch(e => e); + const err = await client.jsonPost({ path: '/test' }).catch(e => e); expect(err).toBeInstanceOf(ServerError); expect(err.serverMessage).toBe('InstanceNotFound (/test)');