@fluojs/testing 1.0.0-beta.2 → 1.0.0-beta.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.
@@ -3,40 +3,101 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
3
3
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4
4
  function _setFunctionName(e, t, n) { "symbol" == typeof t && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
5
5
  function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? typeof e : "null")); return e; }
6
- // @ts-ignore Worktree-local LSP does not resolve workspace package aliases.
7
6
  import { Controller, Get, Post, SseResponse } from '@fluojs/http';
8
- // @ts-ignore Worktree-local LSP does not resolve workspace package aliases.
9
7
  import { defineModule } from '@fluojs/runtime';
8
+
9
+ /**
10
+ * Describes the web runtime http adapter portability harness options contract.
11
+ */
12
+
10
13
  function decodeUtf8(input) {
11
14
  return new TextDecoder().decode(input ?? new Uint8Array());
12
15
  }
13
- async function closeSilently(app) {
16
+ async function runWithCleanup(app, adapterName, assertion) {
17
+ let hasAssertionError = false;
18
+ let assertionError;
19
+ try {
20
+ await assertion();
21
+ } catch (error) {
22
+ hasAssertionError = true;
23
+ assertionError = error;
24
+ }
14
25
  try {
15
26
  await app.close();
16
- } catch {}
27
+ } catch (cleanupError) {
28
+ if (hasAssertionError) {
29
+ throw new AggregateError([assertionError, cleanupError], `${adapterName} adapter portability assertion failed and app.close() also failed during harness cleanup.`);
30
+ }
31
+ throw new AggregateError([cleanupError], `${adapterName} adapter app.close() failed during portability harness cleanup.`);
32
+ }
33
+ if (hasAssertionError) {
34
+ throw assertionError;
35
+ }
17
36
  }
37
+
38
+ /**
39
+ * Represents the web runtime http adapter portability harness.
40
+ */
18
41
  export class WebRuntimeHttpAdapterPortabilityHarness {
19
42
  constructor(options) {
20
43
  this.options = options;
21
44
  }
22
- async assertPreservesMalformedCookieValues() {
45
+ async assertPreservesQueryArraysAndDecoding() {
23
46
  let _initProto, _initClass;
47
+ let _QueryController;
48
+ class QueryController {
49
+ static {
50
+ ({
51
+ e: [_initProto],
52
+ c: [_QueryController, _initClass]
53
+ } = _applyDecs(this, [Controller('/query')], [[Get('/'), 2, "readQuery"]]));
54
+ }
55
+ constructor() {
56
+ _initProto(this);
57
+ }
58
+ readQuery(_input, context) {
59
+ return context.request.query;
60
+ }
61
+ static {
62
+ _initClass();
63
+ }
64
+ }
65
+ class AppModule {}
66
+ defineModule(AppModule, {
67
+ controllers: [_QueryController]
68
+ });
69
+ const app = await this.options.bootstrap(AppModule, {
70
+ cors: false
71
+ });
72
+ await runWithCleanup(app, this.options.name, async () => {
73
+ const response = await app.dispatch(new Request('https://runtime.test/query?tag=one&tag=two&encoded=hello+world&flag&bad=%E0%A4%A'));
74
+ if (response.status !== 200) {
75
+ throw new Error(`${this.options.name} adapter changed query response status semantics.`);
76
+ }
77
+ const body = await response.json();
78
+ if (typeof body !== 'object' || body === null || body.bad !== '�%A' || body.encoded !== 'hello world' || !Array.isArray(body.tag) || JSON.stringify(body.tag) !== JSON.stringify(['one', 'two'])) {
79
+ throw new Error(`${this.options.name} adapter changed query decoding semantics.`);
80
+ }
81
+ });
82
+ }
83
+ async assertPreservesMalformedCookieValues() {
84
+ let _initProto2, _initClass2;
24
85
  let _CookieController;
25
86
  class CookieController {
26
87
  static {
27
88
  ({
28
- e: [_initProto],
29
- c: [_CookieController, _initClass]
89
+ e: [_initProto2],
90
+ c: [_CookieController, _initClass2]
30
91
  } = _applyDecs(this, [Controller('/cookies')], [[Get('/'), 2, "readCookies"]]));
31
92
  }
32
93
  constructor() {
33
- _initProto(this);
94
+ _initProto2(this);
34
95
  }
35
96
  readCookies(_input, context) {
36
97
  return context.request.cookies;
37
98
  }
38
99
  static {
39
- _initClass();
100
+ _initClass2();
40
101
  }
41
102
  }
42
103
  class AppModule {}
@@ -46,7 +107,7 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
46
107
  const app = await this.options.bootstrap(AppModule, {
47
108
  cors: false
48
109
  });
49
- try {
110
+ await runWithCleanup(app, this.options.name, async () => {
50
111
  const response = await app.dispatch(new Request('https://runtime.test/cookies', {
51
112
  headers: {
52
113
  cookie: 'good=hello%20world; bad=%E0%A4%A'
@@ -59,22 +120,20 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
59
120
  if (typeof body !== 'object' || body === null || !('bad' in body) || !('good' in body) || body.bad !== '%E0%A4%A' || body.good !== 'hello world' || Object.keys(body).length !== 2) {
60
121
  throw new Error(`${this.options.name} adapter changed malformed-cookie normalization.`);
61
122
  }
62
- } finally {
63
- await closeSilently(app);
64
- }
123
+ });
65
124
  }
66
125
  async assertPreservesRawBodyForJsonAndText() {
67
- let _initProto2, _initClass2;
126
+ let _initProto3, _initClass3;
68
127
  let _WebhookController;
69
128
  class WebhookController {
70
129
  static {
71
130
  ({
72
- e: [_initProto2],
73
- c: [_WebhookController, _initClass2]
131
+ e: [_initProto3],
132
+ c: [_WebhookController, _initClass3]
74
133
  } = _applyDecs(this, [Controller('/webhooks')], [[Post('/json'), 2, "handleJson"], [Post('/text'), 2, "handleText"]]));
75
134
  }
76
135
  constructor() {
77
- _initProto2(this);
136
+ _initProto3(this);
78
137
  }
79
138
  handleJson(_input, context) {
80
139
  return {
@@ -89,7 +148,7 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
89
148
  };
90
149
  }
91
150
  static {
92
- _initClass2();
151
+ _initClass3();
93
152
  }
94
153
  }
95
154
  class AppModule {}
@@ -100,7 +159,7 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
100
159
  cors: false,
101
160
  rawBody: true
102
161
  });
103
- try {
162
+ await runWithCleanup(app, this.options.name, async () => {
104
163
  const [jsonResponse, textResponse] = await Promise.all([app.dispatch(new Request('https://runtime.test/webhooks/json', {
105
164
  body: JSON.stringify({
106
165
  provider: 'stripe'
@@ -134,22 +193,20 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
134
193
  })) {
135
194
  throw new Error(`${this.options.name} adapter changed text rawBody semantics.`);
136
195
  }
137
- } finally {
138
- await closeSilently(app);
139
- }
196
+ });
140
197
  }
141
198
  async assertExcludesRawBodyForMultipart() {
142
- let _initProto3, _initClass3;
199
+ let _initProto4, _initClass4;
143
200
  let _UploadController;
144
201
  class UploadController {
145
202
  static {
146
203
  ({
147
- e: [_initProto3],
148
- c: [_UploadController, _initClass3]
204
+ e: [_initProto4],
205
+ c: [_UploadController, _initClass4]
149
206
  } = _applyDecs(this, [Controller('/uploads')], [[Post('/'), 2, "upload"]]));
150
207
  }
151
208
  constructor() {
152
- _initProto3(this);
209
+ _initProto4(this);
153
210
  }
154
211
  upload(_input, context) {
155
212
  return {
@@ -159,7 +216,7 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
159
216
  };
160
217
  }
161
218
  static {
162
- _initClass3();
219
+ _initClass4();
163
220
  }
164
221
  }
165
222
  class AppModule {}
@@ -170,7 +227,7 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
170
227
  cors: false,
171
228
  rawBody: true
172
229
  });
173
- try {
230
+ await runWithCleanup(app, this.options.name, async () => {
174
231
  const form = new FormData();
175
232
  form.set('name', 'Ada');
176
233
  form.set('payload', new Blob(['hello'], {
@@ -193,22 +250,20 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
193
250
  })) {
194
251
  throw new Error(`${this.options.name} adapter changed multipart rawBody semantics.`);
195
252
  }
196
- } finally {
197
- await closeSilently(app);
198
- }
253
+ });
199
254
  }
200
255
  async assertSupportsSseStreaming() {
201
- let _initProto4, _initClass4;
256
+ let _initProto5, _initClass5;
202
257
  let _EventsController;
203
258
  class EventsController {
204
259
  static {
205
260
  ({
206
- e: [_initProto4],
207
- c: [_EventsController, _initClass4]
261
+ e: [_initProto5],
262
+ c: [_EventsController, _initClass5]
208
263
  } = _applyDecs(this, [Controller('/events')], [[Get('/'), 2, "stream"]]));
209
264
  }
210
265
  constructor() {
211
- _initProto4(this);
266
+ _initProto5(this);
212
267
  }
213
268
  stream(_input, context) {
214
269
  const stream = new SseResponse(context);
@@ -223,7 +278,7 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
223
278
  return stream;
224
279
  }
225
280
  static {
226
- _initClass4();
281
+ _initClass5();
227
282
  }
228
283
  }
229
284
  class AppModule {}
@@ -233,7 +288,7 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
233
288
  const app = await this.options.bootstrap(AppModule, {
234
289
  cors: false
235
290
  });
236
- try {
291
+ await runWithCleanup(app, this.options.name, async () => {
237
292
  const response = await app.dispatch(new Request('https://runtime.test/events', {
238
293
  headers: {
239
294
  accept: 'text/event-stream'
@@ -250,11 +305,16 @@ export class WebRuntimeHttpAdapterPortabilityHarness {
250
305
  if (!body.includes('event: ready') || !body.includes('data: {"ready":true}')) {
251
306
  throw new Error(`${this.options.name} adapter changed SSE body framing.`);
252
307
  }
253
- } finally {
254
- await closeSilently(app);
255
- }
308
+ });
256
309
  }
257
310
  }
311
+
312
+ /**
313
+ * Create web runtime http adapter portability harness.
314
+ *
315
+ * @param options The options.
316
+ * @returns The create web runtime http adapter portability harness result.
317
+ */
258
318
  export function createWebRuntimeHttpAdapterPortabilityHarness(options) {
259
319
  return new WebRuntimeHttpAdapterPortabilityHarness(options);
260
320
  }
package/dist/types.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type { Mock } from 'vitest';
2
2
  import type { MaybePromise, Token } from '@fluojs/core';
3
3
  import type { ClassType, Container, ForwardRefFn, OptionalToken, Provider } from '@fluojs/di';
4
- import type { BootstrapResult, BootstrapModuleOptions, ModuleType } from '@fluojs/runtime';
4
+ import type { BootstrapApplicationOptions, BootstrapResult, BootstrapModuleOptions, ModuleType } from '@fluojs/runtime';
5
5
  import type { Guard, Interceptor } from '@fluojs/http';
6
6
  import type { RequestBuilder, TestPrincipal, TestRequest, TestRequestWithOptions, TestResponse } from './http.js';
7
7
  /**
@@ -10,6 +10,12 @@ import type { RequestBuilder, TestPrincipal, TestRequest, TestRequestWithOptions
10
10
  export interface TestingModuleOptions extends BootstrapModuleOptions {
11
11
  rootModule: ModuleType;
12
12
  }
13
+ /**
14
+ * Bootstrap options accepted by `createTestApp(...)`.
15
+ */
16
+ export interface TestingApplicationOptions extends BootstrapApplicationOptions {
17
+ rootModule: ModuleType;
18
+ }
13
19
  /**
14
20
  * Optional request extras accepted by `TestApp.request(...)` overloads.
15
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "override",
10
10
  "module-builder"
11
11
  ],
12
- "version": "1.0.0-beta.2",
12
+ "version": "1.0.0-beta.4",
13
13
  "private": false,
14
14
  "license": "MIT",
15
15
  "repository": {
@@ -76,11 +76,11 @@
76
76
  "dist"
77
77
  ],
78
78
  "dependencies": {
79
- "@fluojs/config": "^1.0.0-beta.2",
80
- "@fluojs/http": "^1.0.0-beta.1",
81
- "@fluojs/di": "^1.0.0-beta.2",
82
- "@fluojs/runtime": "^1.0.0-beta.2",
83
- "@fluojs/core": "^1.0.0-beta.1"
79
+ "@fluojs/config": "^1.0.0-beta.8",
80
+ "@fluojs/core": "^1.0.0-beta.6",
81
+ "@fluojs/http": "^1.0.0-beta.11",
82
+ "@fluojs/runtime": "^1.0.0-beta.12",
83
+ "@fluojs/di": "^1.0.0-beta.8"
84
84
  },
85
85
  "peerDependencies": {
86
86
  "@babel/core": ">=7.0.0",
@@ -88,9 +88,12 @@
88
88
  },
89
89
  "devDependencies": {
90
90
  "vitest": "^3.2.4",
91
- "@fluojs/platform-nodejs": "^1.0.0-beta.2",
92
- "@fluojs/platform-express": "^1.0.0-beta.2",
93
- "@fluojs/platform-fastify": "^1.0.0-beta.3"
91
+ "@fluojs/platform-bun": "^1.0.0-beta.7",
92
+ "@fluojs/platform-deno": "^1.0.0-beta.5",
93
+ "@fluojs/platform-cloudflare-workers": "^1.0.0-beta.4",
94
+ "@fluojs/platform-nodejs": "^1.0.0-beta.5",
95
+ "@fluojs/platform-express": "^1.0.0-beta.7",
96
+ "@fluojs/platform-fastify": "^1.0.0-beta.8"
94
97
  },
95
98
  "scripts": {
96
99
  "prebuild": "node ../../tooling/scripts/clean-dist.mjs",