@clipboard-health/playwright-toolkit 1.1.5 → 1.1.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clipboard-health/playwright-toolkit",
3
- "version": "1.1.5",
3
+ "version": "1.1.7",
4
4
  "description": "Shared anti-flake primitives for Clipboard Health Playwright suites.",
5
5
  "keywords": [
6
6
  "cognito",
@@ -26,7 +26,7 @@
26
26
  "access": "public"
27
27
  },
28
28
  "dependencies": {
29
- "@clipboard-health/util-ts": "5.14.0",
29
+ "@clipboard-health/util-ts": "5.14.1",
30
30
  "tslib": "2.8.1"
31
31
  },
32
32
  "devDependencies": {
@@ -9,7 +9,7 @@ export interface MailpitMessageHeaders {
9
9
  Subject: string;
10
10
  }
11
11
  export interface MailpitMessageSummary extends MailpitMessageHeaders {
12
- Created: string;
12
+ Created?: string | null | undefined;
13
13
  }
14
14
  export interface MailpitMessage extends MailpitMessageHeaders {
15
15
  Date: string;
@@ -72,14 +72,39 @@ function createMailpitClient(params) {
72
72
  async function fetchMailpitValue(params) {
73
73
  const excludedValues = new Set(params.excludedValues ?? []);
74
74
  const valuesByMessageId = new Map();
75
- const result = await (0, retry_1.runWithRetry)({
76
- operationName: `wait for Mailpit ${params.valueLabel}`,
75
+ const pollingSnapshot = createMailpitPollingSnapshot();
76
+ const nowImplementation = params.nowImplementation ?? Date.now;
77
+ const operationName = `wait for Mailpit ${params.valueLabel}`;
78
+ const retryParams = {
79
+ operationName,
77
80
  operation: async () => {
78
- const messages = await params.client.searchMessages({
79
- query: `to:${params.email}`,
81
+ pollingSnapshot.searchAttempts += 1;
82
+ let messages;
83
+ try {
84
+ messages = await params.client.searchMessages({
85
+ query: `to:${params.email}`,
86
+ });
87
+ }
88
+ catch (error) {
89
+ if (!isTransientMailpitError({ error })) {
90
+ throw error;
91
+ }
92
+ recordTransientRequestError({ error, pollingSnapshot });
93
+ throw createMailpitValueNotFoundError({
94
+ nowMs: nowImplementation(),
95
+ pollingSnapshot,
96
+ valueLabel: params.valueLabel,
97
+ });
98
+ }
99
+ pollingSnapshot.rawResultCount += messages.length;
100
+ pollingSnapshot.invalidOrMissingTimestampCount += messages.filter((message) => getMailpitMessageTimestampMs({ message }) === undefined).length;
101
+ const postSentAfterCandidates = messages.filter((message) => isMessageSentAfter({ message, sentAfter: params.sentAfter }));
102
+ pollingSnapshot.postSentAfterCandidateCount += postSentAfterCandidates.length;
103
+ recordNewestCandidateTimestamp({
104
+ candidates: postSentAfterCandidates,
105
+ pollingSnapshot,
80
106
  });
81
- const candidates = messages
82
- .filter((message) => isMessageSentAfter({ message, sentAfter: params.sentAfter }))
107
+ const candidates = postSentAfterCandidates
83
108
  .toSorted(compareMailpitMessagesNewestFirst)
84
109
  .slice(0, MAX_MESSAGES_TO_FETCH);
85
110
  for (const message of candidates) {
@@ -95,9 +120,16 @@ async function fetchMailpitValue(params) {
95
120
  const fullMessage = await params.client.getMessage({
96
121
  messageId: message.ID,
97
122
  });
123
+ pollingSnapshot.fetchedMessageCount += 1;
98
124
  const value = params.extractValue({ message: fullMessage });
99
125
  valuesByMessageId.set(message.ID, value);
100
- if (value !== undefined && !excludedValues.has(value)) {
126
+ if (value === undefined) {
127
+ pollingSnapshot.extractionMissCount += 1;
128
+ }
129
+ else if (excludedValues.has(value)) {
130
+ pollingSnapshot.excludedValueCount += 1;
131
+ }
132
+ else {
101
133
  return { value, messageId: message.ID };
102
134
  }
103
135
  }
@@ -105,9 +137,14 @@ async function fetchMailpitValue(params) {
105
137
  if (!isTransientMailpitError({ error })) {
106
138
  throw error;
107
139
  }
140
+ recordTransientRequestError({ error, pollingSnapshot });
108
141
  }
109
142
  }
110
- throw new MailpitValueNotFoundError(`No matching Mailpit ${params.valueLabel} is available yet`);
143
+ throw createMailpitValueNotFoundError({
144
+ nowMs: nowImplementation(),
145
+ pollingSnapshot,
146
+ valueLabel: params.valueLabel,
147
+ });
111
148
  },
112
149
  mode: {
113
150
  kind: "poll",
@@ -116,8 +153,31 @@ async function fetchMailpitValue(params) {
116
153
  isTransient: ({ error }) => error instanceof MailpitValueNotFoundError || isTransientMailpitError({ error }),
117
154
  },
118
155
  sleepImplementation: params.sleepImplementation,
119
- nowImplementation: params.nowImplementation,
120
- });
156
+ nowImplementation,
157
+ };
158
+ let result;
159
+ try {
160
+ result = await (0, retry_1.runWithRetry)(retryParams);
161
+ }
162
+ catch (error) {
163
+ if (error instanceof retry_1.RetryError &&
164
+ error.reason === "timeout" &&
165
+ !(error.cause instanceof MailpitValueNotFoundError)) {
166
+ throw new retry_1.RetryError({
167
+ operationName,
168
+ attempts: error.attempts,
169
+ elapsedMs: error.elapsedMs,
170
+ reason: error.reason,
171
+ cause: createMailpitValueNotFoundError({
172
+ cause: error.cause,
173
+ nowMs: nowImplementation(),
174
+ pollingSnapshot,
175
+ valueLabel: params.valueLabel,
176
+ }),
177
+ });
178
+ }
179
+ throw error;
180
+ }
121
181
  return result.value;
122
182
  }
123
183
  async function fetchMagicLinkFromMailpit(params) {
@@ -212,19 +272,20 @@ function isMessageSentAfter(params) {
212
272
  if (params.sentAfter === undefined) {
213
273
  return true;
214
274
  }
215
- const messageTimestamp = Date.parse(params.message.Created);
216
- if (!Number.isFinite(messageTimestamp)) {
275
+ const messageTimestampMs = getMailpitMessageTimestampMs({ message: params.message });
276
+ if (messageTimestampMs === undefined) {
277
+ // Unparseable timestamps stay eligible so metadata gaps cannot hide a delivered message.
217
278
  return true;
218
279
  }
219
- return messageTimestamp >= params.sentAfter.getTime() - SENT_AFTER_TOLERANCE_MS;
280
+ return messageTimestampMs >= params.sentAfter.getTime() - SENT_AFTER_TOLERANCE_MS;
220
281
  }
221
282
  function compareMailpitMessagesNewestFirst(first, second) {
222
- const firstTimestamp = Date.parse(first.Created);
223
- const secondTimestamp = Date.parse(second.Created);
224
- if (!Number.isFinite(firstTimestamp)) {
225
- return Number.isFinite(secondTimestamp) ? 1 : 0;
283
+ const firstTimestamp = getMailpitMessageTimestampMs({ message: first });
284
+ const secondTimestamp = getMailpitMessageTimestampMs({ message: second });
285
+ if (firstTimestamp === undefined) {
286
+ return secondTimestamp === undefined ? 0 : 1;
226
287
  }
227
- if (!Number.isFinite(secondTimestamp)) {
288
+ if (secondTimestamp === undefined) {
228
289
  return -1;
229
290
  }
230
291
  return secondTimestamp - firstTimestamp;
@@ -237,7 +298,9 @@ function isMailpitMessage(value) {
237
298
  typeof value["HTML"] === "string");
238
299
  }
239
300
  function isMailpitMessageSummary(value) {
240
- return (0, util_ts_1.isRecord)(value) && hasMailpitMessageHeaders(value) && typeof value["Created"] === "string";
301
+ return ((0, util_ts_1.isRecord)(value) &&
302
+ hasMailpitMessageHeaders(value) &&
303
+ ((0, util_ts_1.isNil)(value["Created"]) || typeof value["Created"] === "string"));
241
304
  }
242
305
  function hasMailpitMessageHeaders(value) {
243
306
  return (typeof value["ID"] === "string" &&
@@ -249,4 +312,65 @@ function hasMailpitMessageHeaders(value) {
249
312
  function isMailpitAddress(value) {
250
313
  return ((0, util_ts_1.isRecord)(value) && typeof value["Address"] === "string" && typeof value["Name"] === "string");
251
314
  }
315
+ function createMailpitPollingSnapshot() {
316
+ return {
317
+ searchAttempts: 0,
318
+ rawResultCount: 0,
319
+ postSentAfterCandidateCount: 0,
320
+ invalidOrMissingTimestampCount: 0,
321
+ fetchedMessageCount: 0,
322
+ extractionMissCount: 0,
323
+ excludedValueCount: 0,
324
+ transientRequestErrorCount: 0,
325
+ transientRequestErrorStatuses: new Set(),
326
+ newestCandidateTimestampMs: undefined,
327
+ };
328
+ }
329
+ function createMailpitValueNotFoundError(params) {
330
+ return new MailpitValueNotFoundError(`No matching Mailpit ${params.valueLabel} is available yet. ` +
331
+ formatMailpitPollingSnapshot({
332
+ nowMs: params.nowMs,
333
+ pollingSnapshot: params.pollingSnapshot,
334
+ }), { cause: params.cause });
335
+ }
336
+ function formatMailpitPollingSnapshot(params) {
337
+ const newestCandidateAgeMs = params.pollingSnapshot.newestCandidateTimestampMs === undefined
338
+ ? "unavailable"
339
+ : String(params.nowMs - params.pollingSnapshot.newestCandidateTimestampMs);
340
+ const transientRequestErrorStatuses = [
341
+ ...params.pollingSnapshot.transientRequestErrorStatuses,
342
+ ].join(",");
343
+ return (`Polling snapshot: searchAttempts=${params.pollingSnapshot.searchAttempts}, ` +
344
+ `rawResultCount=${params.pollingSnapshot.rawResultCount}, ` +
345
+ `postSentAfterCandidateCount=${params.pollingSnapshot.postSentAfterCandidateCount}, ` +
346
+ `invalidOrMissingTimestampCount=${params.pollingSnapshot.invalidOrMissingTimestampCount}, ` +
347
+ `fetchedMessageCount=${params.pollingSnapshot.fetchedMessageCount}, ` +
348
+ `extractionMissCount=${params.pollingSnapshot.extractionMissCount}, ` +
349
+ `excludedValueCount=${params.pollingSnapshot.excludedValueCount}, ` +
350
+ `transientRequestErrorCount=${params.pollingSnapshot.transientRequestErrorCount}, ` +
351
+ `transientRequestErrorStatuses=[${transientRequestErrorStatuses}], ` +
352
+ `newestCandidateAgeMs=${newestCandidateAgeMs}`);
353
+ }
354
+ function getMailpitMessageTimestampMs(params) {
355
+ if ((0, util_ts_1.isNil)(params.message.Created)) {
356
+ return undefined;
357
+ }
358
+ const timestampMs = Date.parse(params.message.Created);
359
+ return Number.isFinite(timestampMs) ? timestampMs : undefined;
360
+ }
361
+ function recordNewestCandidateTimestamp(params) {
362
+ const candidateTimestampsMs = params.candidates
363
+ .map((message) => getMailpitMessageTimestampMs({ message }))
364
+ .filter((timestampMs) => timestampMs !== undefined);
365
+ if (candidateTimestampsMs.length === 0) {
366
+ return;
367
+ }
368
+ params.pollingSnapshot.newestCandidateTimestampMs = Math.max(params.pollingSnapshot.newestCandidateTimestampMs ?? Number.NEGATIVE_INFINITY, ...candidateTimestampsMs);
369
+ }
370
+ function recordTransientRequestError(params) {
371
+ params.pollingSnapshot.transientRequestErrorCount += 1;
372
+ if (params.error instanceof MailpitRequestError) {
373
+ params.pollingSnapshot.transientRequestErrorStatuses.add(params.error.status?.toString() ?? "unavailable");
374
+ }
375
+ }
252
376
  //# sourceMappingURL=mailpit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mailpit.js","sourceRoot":"","sources":["../../../../../packages/playwright-toolkit/src/lib/mailpit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mailpit.js","sourceRoot":"","sources":["../../../../../packages/playwright-toolkit/src/lib/mailpit.ts"],"names":[],"mappings":"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"}