zerodrop-client 0.1.3 → 0.1.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 +27 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -45,6 +45,33 @@ test('password reset flow', async ({ page }) => {
|
|
|
45
45
|
await page.goto(resetLink);
|
|
46
46
|
});
|
|
47
47
|
```
|
|
48
|
+
## Parallel CI Runs
|
|
49
|
+
|
|
50
|
+
Inbox generation is client-side — no API call, no throttling.
|
|
51
|
+
50 parallel tests generate 50 inboxes instantly.
|
|
52
|
+
|
|
53
|
+
```javascript
|
|
54
|
+
// Safe to run in parallel — generateInbox() is local
|
|
55
|
+
const inboxes = Array.from({ length: 50 }, () => mail.generateInbox());
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
The rate limit applies to the polling endpoint — 20 requests
|
|
59
|
+
per 10 seconds per IP on the free tier. For heavy parallel
|
|
60
|
+
usage, stagger `waitForLatest()` calls slightly:
|
|
61
|
+
|
|
62
|
+
```javascript
|
|
63
|
+
// Stagger polls to avoid burst on shared IP
|
|
64
|
+
const results = await Promise.all(
|
|
65
|
+
inboxes.map((inbox, i) =>
|
|
66
|
+
new Promise(resolve => setTimeout(resolve, i * 100))
|
|
67
|
+
.then(() => mail.waitForLatest(inbox, { timeout: 15000 }))
|
|
68
|
+
)
|
|
69
|
+
);
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
For CI pipelines with 20+ parallel tests, use a Workspace
|
|
73
|
+
API key — dedicated rate limit bucket, not shared with
|
|
74
|
+
the public pool.
|
|
48
75
|
|
|
49
76
|
## Webhook Mode (Staging Servers)
|
|
50
77
|
|