@apiquest/plugin-sse 1.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,160 +1,164 @@
1
- # @apiquest/plugin-sse
2
-
3
- Server-Sent Events (SSE) protocol plugin for ApiQuest. Provides support for testing SSE endpoints with event streaming and message validation.
4
-
5
- ## Installation
6
-
7
- ```bash
8
- npm install -g @apiquest/plugin-sse
9
- ```
10
-
11
- ## Features
12
-
13
- - SSE connection management
14
- - Event streaming with named events
15
- - Message data validation
16
- - Event counting and assertions
17
- - Custom headers support
18
- - Authentication integration (via `@apiquest/plugin-auth`)
19
- - Timeout configuration
20
-
21
- ## Usage
22
-
23
- Set the collection protocol to `sse`:
24
-
25
- ```json
26
- {
27
- "$schema": "https://apiquest.net/schemas/collection-v1.0.json",
28
- "protocol": "sse",
29
- "items": [
30
- {
31
- "type": "request",
32
- "id": "stream-events",
33
- "name": "Stream Server Events",
34
- "data": {
35
- "url": "https://api.example.com/events",
36
- "timeout": 30000,
37
- "scripts": [
38
- {
39
- "event": "onMessage",
40
- "script": "quest.test('Message received', () => {\n const msg = quest.message;\n expect(msg.data).to.be.a('string');\n});"
41
- },
42
- {
43
- "event": "onComplete",
44
- "script": "quest.test('Stream completed', () => {\n expect(quest.messages.length).to.be.greaterThan(0);\n});"
45
- }
46
- ]
47
- }
48
- }
49
- ]
50
- }
51
- ```
52
-
53
- ### With Custom Headers
54
-
55
- ```json
56
- {
57
- "data": {
58
- "url": "https://api.example.com/stream",
59
- "headers": {
60
- "Accept": "text/event-stream",
61
- "x-stream-id": "{{streamId}}"
62
- },
63
- "timeout": 60000
64
- }
65
- }
66
- ```
67
-
68
- ### Event Scripts
69
-
70
- SSE requests support event-based scripts:
71
-
72
- - **onMessage** - Runs for each received message
73
- - **onError** - Runs when an error occurs
74
- - **onComplete** - Runs when the stream completes
75
-
76
- ```json
77
- {
78
- "data": {
79
- "scripts": [
80
- {
81
- "event": "onMessage",
82
- "script": "const data = JSON.parse(quest.message.data);\nquest.variables.set('lastEventId', data.id);\n\nquest.test('Valid event data', () => {\n expect(data).to.have.property('timestamp');\n});"
83
- },
84
- {
85
- "event": "onError",
86
- "script": "console.error('Stream error:', quest.error);"
87
- },
88
- {
89
- "event": "onComplete",
90
- "script": "quest.test('Received messages', () => {\n expect(quest.messages.length).to.equal(10);\n});"
91
- }
92
- ]
93
- }
94
- }
95
- ```
96
-
97
- ### Message Counting
98
-
99
- Use `quest.expectMessages()` in the preRequestScript to enable deterministic test counting:
100
-
101
- ```json
102
- {
103
- "type": "request",
104
- "id": "stream-events",
105
- "name": "Stream Server Events",
106
- "preRequestScript": "quest.expectMessages(5, 10000);",
107
- "data": {
108
- "url": "https://api.example.com/events",
109
- "scripts": [
110
- {
111
- "event": "onMessage",
112
- "script": "quest.test('Message received', () => {\n expect(quest.message.data).to.exist;\n});"
113
- }
114
- ]
115
- }
116
- }
117
- ```
118
-
119
- This informs the runner to expect 5 messages, enabling accurate test count reporting (5 messages × tests per message).
120
-
121
- ## Response Handling
122
-
123
- Access SSE data in scripts:
124
-
125
- ```javascript
126
- // In onMessage script
127
- quest.test('Event has data', () => {
128
- expect(quest.message.data).to.be.a('string');
129
- });
130
-
131
- quest.test('Event type is update', () => {
132
- expect(quest.message.event).to.equal('update');
133
- });
134
-
135
- // In onComplete script
136
- quest.test('Received all messages', () => {
137
- expect(quest.messages.length).to.equal(5);
138
- });
139
-
140
- quest.test('All messages valid', () => {
141
- quest.messages.forEach(msg => {
142
- const data = JSON.parse(msg.data);
143
- expect(data).to.have.property('id');
144
- });
145
- });
146
- ```
147
-
148
- ## Compatibility
149
-
150
- - **Authentication:** Works with `@apiquest/plugin-auth` for Bearer, Basic, API Key
151
- - **Node.js:** Requires Node.js 20+
152
-
153
- ## Documentation
154
-
155
- - [Fracture Documentation](https://apiquest.net/docs/fracture)
156
- - [Schema Reference](https://apiquest.net/schemas/collection-v1.0.json)
157
-
158
- ## License
159
-
160
- Dual-licensed under AGPL-3.0-or-later and commercial license. See LICENSE.txt for details.
1
+ # @apiquest/plugin-sse
2
+
3
+ Server-Sent Events (SSE) protocol plugin for ApiQuest. Provides support for testing SSE endpoints with event streaming and message validation.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ # Using npm
9
+ npm install -g @apiquest/plugin-sse
10
+
11
+ # Or using fracture CLI
12
+ fracture plugin install sse
13
+ ```
14
+
15
+ ## Features
16
+
17
+ - SSE connection management
18
+ - Event streaming with named events
19
+ - Message data validation
20
+ - Event counting and assertions
21
+ - Custom headers support
22
+ - Authentication integration (via `@apiquest/plugin-auth`)
23
+ - Timeout configuration
24
+
25
+ ## Usage
26
+
27
+ Set the collection protocol to `sse`:
28
+
29
+ ```json
30
+ {
31
+ "$schema": "https://apiquest.net/schemas/collection-v1.0.json",
32
+ "protocol": "sse",
33
+ "items": [
34
+ {
35
+ "type": "request",
36
+ "id": "stream-events",
37
+ "name": "Stream Server Events",
38
+ "data": {
39
+ "url": "https://api.example.com/events",
40
+ "timeout": 30000,
41
+ "scripts": [
42
+ {
43
+ "event": "onMessage",
44
+ "script": "quest.test('Message received', () => {\n const msg = quest.message;\n expect(msg.data).to.be.a('string');\n});"
45
+ },
46
+ {
47
+ "event": "onComplete",
48
+ "script": "quest.test('Stream completed', () => {\n expect(quest.messages.length).to.be.greaterThan(0);\n});"
49
+ }
50
+ ]
51
+ }
52
+ }
53
+ ]
54
+ }
55
+ ```
56
+
57
+ ### With Custom Headers
58
+
59
+ ```json
60
+ {
61
+ "data": {
62
+ "url": "https://api.example.com/stream",
63
+ "headers": {
64
+ "Accept": "text/event-stream",
65
+ "x-stream-id": "{{streamId}}"
66
+ },
67
+ "timeout": 60000
68
+ }
69
+ }
70
+ ```
71
+
72
+ ### Event Scripts
73
+
74
+ SSE requests support event-based scripts:
75
+
76
+ - **onMessage** - Runs for each received message
77
+ - **onError** - Runs when an error occurs
78
+ - **onComplete** - Runs when the stream completes
79
+
80
+ ```json
81
+ {
82
+ "data": {
83
+ "scripts": [
84
+ {
85
+ "event": "onMessage",
86
+ "script": "const data = JSON.parse(quest.message.data);\nquest.variables.set('lastEventId', data.id);\n\nquest.test('Valid event data', () => {\n expect(data).to.have.property('timestamp');\n});"
87
+ },
88
+ {
89
+ "event": "onError",
90
+ "script": "console.error('Stream error:', quest.error);"
91
+ },
92
+ {
93
+ "event": "onComplete",
94
+ "script": "quest.test('Received messages', () => {\n expect(quest.messages.length).to.equal(10);\n});"
95
+ }
96
+ ]
97
+ }
98
+ }
99
+ ```
100
+
101
+ ### Message Counting
102
+
103
+ Use `quest.expectMessages()` in the preRequestScript to enable deterministic test counting:
104
+
105
+ ```json
106
+ {
107
+ "type": "request",
108
+ "id": "stream-events",
109
+ "name": "Stream Server Events",
110
+ "preRequestScript": "quest.expectMessages(5, 10000);",
111
+ "data": {
112
+ "url": "https://api.example.com/events",
113
+ "scripts": [
114
+ {
115
+ "event": "onMessage",
116
+ "script": "quest.test('Message received', () => {\n expect(quest.message.data).to.exist;\n});"
117
+ }
118
+ ]
119
+ }
120
+ }
121
+ ```
122
+
123
+ This informs the runner to expect 5 messages, enabling accurate test count reporting (5 messages × tests per message).
124
+
125
+ ## Response Handling
126
+
127
+ Access SSE data in scripts:
128
+
129
+ ```javascript
130
+ // In onMessage script
131
+ quest.test('Event has data', () => {
132
+ expect(quest.message.data).to.be.a('string');
133
+ });
134
+
135
+ quest.test('Event type is update', () => {
136
+ expect(quest.message.event).to.equal('update');
137
+ });
138
+
139
+ // In onComplete script
140
+ quest.test('Received all messages', () => {
141
+ expect(quest.messages.length).to.equal(5);
142
+ });
143
+
144
+ quest.test('All messages valid', () => {
145
+ quest.messages.forEach(msg => {
146
+ const data = JSON.parse(msg.data);
147
+ expect(data).to.have.property('id');
148
+ });
149
+ });
150
+ ```
151
+
152
+ ## Compatibility
153
+
154
+ - **Authentication:** Works with `@apiquest/plugin-auth` for Bearer, Basic, API Key
155
+ - **Node.js:** Requires Node.js 20+
156
+
157
+ ## Documentation
158
+
159
+ - [Fracture Documentation](https://apiquest.net/docs/fracture)
160
+ - [Schema Reference](https://apiquest.net/schemas/collection-v1.0.json)
161
+
162
+ ## License
163
+
164
+ Dual-licensed under AGPL-3.0-or-later and commercial license. See LICENSE.txt for details.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAA2G,MAAM,iBAAiB,CAAC;AAkBhK,eAAO,MAAM,SAAS,EAAE,eA8WvB,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAA2G,MAAM,iBAAiB,CAAC;AAkBhK,eAAO,MAAM,SAAS,EAAE,eAuYvB,CAAC;AAEF,eAAe,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -95,9 +95,9 @@ const ssePlugin = {
95
95
  }, timeout);
96
96
  try {
97
97
  // Use fetch with streaming which is more universally supported in Node.js
98
- const signal = context.abortSignal || controller.signal;
98
+ const signal = context.abortSignal ?? controller.signal;
99
99
  // Handle abort signal
100
- if (context.abortSignal) {
100
+ if (context.abortSignal !== undefined && context.abortSignal !== null) {
101
101
  context.abortSignal.addEventListener('abort', () => {
102
102
  controller.abort();
103
103
  clearTimeout(timeoutId);
@@ -138,7 +138,7 @@ const ssePlugin = {
138
138
  });
139
139
  return;
140
140
  }
141
- if (!response.body) {
141
+ if (response.body === null || response.body === undefined) {
142
142
  clearTimeout(timeoutId);
143
143
  logger?.error('SSE response has no body');
144
144
  resolve({
@@ -155,15 +155,24 @@ const ssePlugin = {
155
155
  const reader = response.body.getReader();
156
156
  const decoder = new TextDecoder();
157
157
  let buffer = '';
158
- const processLine = async (line) => {
159
- if (line.startsWith('data:')) {
160
- const data = line.slice(5).trim();
161
- const message = { data };
158
+ // Temporary message fields that get compiled when we hit an empty line
159
+ let currentEventType;
160
+ let currentEventId;
161
+ let currentRetry;
162
+ const currentDataLines = [];
163
+ const dispatchCurrentMessage = async () => {
164
+ if (currentDataLines.length > 0) {
165
+ const message = {
166
+ data: currentDataLines.join('\n'),
167
+ event: currentEventType,
168
+ id: currentEventId,
169
+ retry: currentRetry
170
+ };
162
171
  messages.push(message);
163
172
  messageCount++;
164
- logger?.trace('SSE message received', { messageCount, data: data.slice(0, 100) });
173
+ logger?.trace('SSE message received', { messageCount, data: message.data.slice(0, 100) });
165
174
  // Emit onMessage event
166
- if (emitEvent) {
175
+ if (emitEvent !== undefined && emitEvent !== null) {
167
176
  try {
168
177
  await emitEvent('onMessage', {
169
178
  index: messageCount,
@@ -174,43 +183,56 @@ const ssePlugin = {
174
183
  logger?.error('SSE onMessage event error', { error: err instanceof Error ? err.message : String(err) });
175
184
  }
176
185
  }
186
+ // Reset temporary fields
187
+ currentEventType = undefined;
188
+ currentEventId = undefined;
189
+ currentRetry = undefined;
190
+ currentDataLines.length = 0;
191
+ }
192
+ };
193
+ const processLine = async (line) => {
194
+ // Empty line signals the end of an event
195
+ if (line === '') {
196
+ await dispatchCurrentMessage();
197
+ }
198
+ else if (line.startsWith('data:')) {
199
+ // Can have multiple data lines
200
+ const data = line.slice(5);
201
+ // Trim only the leading space if present (per spec)
202
+ currentDataLines.push(data.startsWith(' ') ? data.slice(1) : data);
177
203
  }
178
204
  else if (line.startsWith('event:')) {
179
- const lastMessage = messages[messages.length - 1];
180
- if (lastMessage) {
181
- lastMessage.event = line.slice(6).trim();
182
- }
205
+ currentEventType = line.slice(6).trim();
183
206
  }
184
207
  else if (line.startsWith('id:')) {
185
- const lastMessage = messages[messages.length - 1];
186
- if (lastMessage) {
187
- lastMessage.id = line.slice(3).trim();
188
- }
208
+ currentEventId = line.slice(3).trim();
189
209
  }
190
210
  else if (line.startsWith('retry:')) {
191
- const lastMessage = messages[messages.length - 1];
192
- if (lastMessage) {
193
- lastMessage.retry = parseInt(line.slice(6).trim(), 10);
211
+ const retryValue = parseInt(line.slice(6).trim(), 10);
212
+ if (!isNaN(retryValue)) {
213
+ currentRetry = retryValue;
194
214
  }
195
215
  }
216
+ // Lines starting with ':' are comments and should be ignored
217
+ // Other lines are ignored as well per spec
196
218
  };
197
219
  try {
198
220
  while (true) {
199
- const { done, value } = await reader.read();
221
+ const result = await reader.read();
222
+ const done = result.done;
223
+ const value = result.value;
200
224
  if (done) {
201
225
  // Process remaining buffer
202
- if (buffer.trim()) {
203
- const lines = buffer.split('\n');
204
- for (const line of lines) {
205
- if (line.trim()) {
206
- await processLine(line);
207
- }
208
- }
226
+ const lines = buffer.split('\n');
227
+ for (const line of lines) {
228
+ await processLine(line);
209
229
  }
230
+ // Flush any pending message
231
+ await dispatchCurrentMessage();
210
232
  clearTimeout(timeoutId);
211
233
  logger?.debug('SSE stream complete', { messageCount, duration: Date.now() - startTime });
212
234
  // Emit onComplete event
213
- if (emitEvent) {
235
+ if (emitEvent !== undefined && emitEvent !== null) {
214
236
  try {
215
237
  await emitEvent('onComplete', { messageCount, messages });
216
238
  }
@@ -230,14 +252,14 @@ const ssePlugin = {
230
252
  break;
231
253
  }
232
254
  // Decode chunk and add to buffer
233
- buffer += decoder.decode(value, { stream: true });
255
+ if (value !== undefined) {
256
+ buffer += decoder.decode(value, { stream: true });
257
+ }
234
258
  // Process complete lines
235
259
  const lines = buffer.split('\n');
236
- buffer = lines.pop() || ''; // Keep incomplete line in buffer
260
+ buffer = lines.pop() ?? ''; // Keep incomplete line in buffer
237
261
  for (const line of lines) {
238
- if (line.trim()) {
239
- await processLine(line);
240
- }
262
+ await processLine(line);
241
263
  }
242
264
  }
243
265
  }
@@ -260,7 +282,7 @@ const ssePlugin = {
260
282
  else {
261
283
  logger?.error('SSE stream error', { error: err instanceof Error ? err.message : String(err) });
262
284
  // Emit onError event
263
- if (emitEvent) {
285
+ if (emitEvent !== undefined && emitEvent !== null) {
264
286
  try {
265
287
  await emitEvent('onError', { error: err instanceof Error ? err.message : String(err) });
266
288
  }
@@ -284,7 +306,7 @@ const ssePlugin = {
284
306
  clearTimeout(timeoutId);
285
307
  logger?.error('SSE fetch error', { error: err instanceof Error ? err.message : String(err) });
286
308
  // Emit onError event
287
- if (emitEvent) {
309
+ if (emitEvent !== undefined && emitEvent !== null) {
288
310
  emitEvent('onError', { error: err instanceof Error ? err.message : String(err) }).catch((emitErr) => {
289
311
  logger?.error('SSE onError event error', { error: emitErr instanceof Error ? emitErr.message : String(emitErr) });
290
312
  });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
package/esbuild.config.js CHANGED
@@ -1,34 +1,34 @@
1
- import esbuild from 'esbuild';
2
-
3
- await esbuild.build({
4
- entryPoints: ['src/index.ts'],
5
- bundle: true,
6
- outfile: 'dist/index.js',
7
- format: 'esm',
8
- platform: 'node',
9
- target: 'node18',
10
- // Externalize peerDependencies and Node.js built-ins
11
- external: [
12
- '@apiquest/fracture',
13
- // Node.js built-in modules (got depends on these)
14
- 'http',
15
- 'https',
16
- 'http2',
17
- 'net',
18
- 'tls',
19
- 'stream',
20
- 'util',
21
- 'url',
22
- 'zlib',
23
- 'events',
24
- 'buffer',
25
- 'querystring',
26
- 'dns',
27
- 'fs',
28
- 'path',
29
- ],
30
- minify: false,
31
- sourcemap: true,
32
- });
33
-
34
- console.log('✓ Built plugin-sse');
1
+ import esbuild from 'esbuild';
2
+
3
+ await esbuild.build({
4
+ entryPoints: ['src/index.ts'],
5
+ bundle: true,
6
+ outfile: 'dist/index.js',
7
+ format: 'esm',
8
+ platform: 'node',
9
+ target: 'node18',
10
+ // Externalize peerDependencies and Node.js built-ins
11
+ external: [
12
+ '@apiquest/fracture',
13
+ // Node.js built-in modules (got depends on these)
14
+ 'http',
15
+ 'https',
16
+ 'http2',
17
+ 'net',
18
+ 'tls',
19
+ 'stream',
20
+ 'util',
21
+ 'url',
22
+ 'zlib',
23
+ 'events',
24
+ 'buffer',
25
+ 'querystring',
26
+ 'dns',
27
+ 'fs',
28
+ 'path',
29
+ ],
30
+ minify: false,
31
+ sourcemap: true,
32
+ });
33
+
34
+ console.log('✓ Built plugin-sse');