e2e 0.15.0 → 0.15.2

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.
Files changed (90) hide show
  1. package/README.md +70 -14
  2. package/dist/.build.json +1 -1
  3. package/dist/agent/act.js +3 -3
  4. package/dist/agent/act.js.map +1 -1
  5. package/dist/agent/error.d.ts +16 -3
  6. package/dist/agent/error.d.ts.map +1 -1
  7. package/dist/agent/error.js +25 -6
  8. package/dist/agent/error.js.map +1 -1
  9. package/dist/agent/model/tool-choice.d.ts +24 -1
  10. package/dist/agent/model/tool-choice.d.ts.map +1 -1
  11. package/dist/agent/model/tool-choice.js +27 -1
  12. package/dist/agent/model/tool-choice.js.map +1 -1
  13. package/dist/agent/step-cache.d.ts +14 -3
  14. package/dist/agent/step-cache.d.ts.map +1 -1
  15. package/dist/agent/step-cache.js +13 -3
  16. package/dist/agent/step-cache.js.map +1 -1
  17. package/dist/agent/tool-loop.d.ts.map +1 -1
  18. package/dist/agent/tool-loop.js +62 -9
  19. package/dist/agent/tool-loop.js.map +1 -1
  20. package/dist/cache/context.d.ts +19 -6
  21. package/dist/cache/context.d.ts.map +1 -1
  22. package/dist/cache/context.js +15 -21
  23. package/dist/cache/context.js.map +1 -1
  24. package/dist/cli/init/scaffold.d.ts +1 -0
  25. package/dist/cli/init/scaffold.d.ts.map +1 -1
  26. package/dist/cli/init/scaffold.js +2 -1
  27. package/dist/cli/init/scaffold.js.map +1 -1
  28. package/dist/cli/init/sibling-versions.json +1 -1
  29. package/dist/cli/signals.d.ts +2 -2
  30. package/dist/cli/signals.js +2 -2
  31. package/dist/expect/values.js +1 -1
  32. package/dist/expect/values.js.map +1 -1
  33. package/dist/run/execute.d.ts.map +1 -1
  34. package/dist/run/execute.js +21 -8
  35. package/dist/run/execute.js.map +1 -1
  36. package/dist/types.d.ts +1 -1
  37. package/dist/types.d.ts.map +1 -1
  38. package/docs/agent-steps.mdx +126 -0
  39. package/docs/agents.mdx +217 -0
  40. package/docs/api-testing.mdx +65 -0
  41. package/docs/authentication.mdx +345 -0
  42. package/docs/browser.mdx +440 -0
  43. package/docs/bug-bash.mdx +90 -0
  44. package/docs/cache.mdx +306 -0
  45. package/docs/ci.mdx +210 -0
  46. package/docs/coding-agents.mdx +183 -0
  47. package/docs/debugging.mdx +291 -0
  48. package/docs/executors.mdx +243 -0
  49. package/docs/explore.mdx +174 -0
  50. package/docs/github.mdx +184 -0
  51. package/docs/index.mdx +82 -0
  52. package/docs/integrations/eas.mdx +216 -0
  53. package/docs/integrations/index.mdx +24 -0
  54. package/docs/integrations/kernel.mdx +163 -0
  55. package/docs/migrate/cypress.mdx +124 -0
  56. package/docs/migrate/detox.mdx +140 -0
  57. package/docs/migrate/maestro.mdx +229 -0
  58. package/docs/migrate/playwright.mdx +427 -0
  59. package/docs/migrate/selenium.mdx +110 -0
  60. package/docs/mobile-ci.mdx +567 -0
  61. package/docs/mobile.mdx +555 -0
  62. package/docs/models.mdx +241 -0
  63. package/docs/quickstart.mdx +260 -0
  64. package/docs/reference/agent.mdx +524 -0
  65. package/docs/reference/app.mdx +72 -0
  66. package/docs/reference/cli.mdx +817 -0
  67. package/docs/reference/config.mdx +986 -0
  68. package/docs/reference/engine.mdx +1362 -0
  69. package/docs/reference/environment.mdx +113 -0
  70. package/docs/reference/errors.mdx +143 -0
  71. package/docs/reference/expect.mdx +513 -0
  72. package/docs/reference/mcp.mdx +202 -0
  73. package/docs/reference/mobile.mdx +522 -0
  74. package/docs/reference/reporters.mdx +216 -0
  75. package/docs/reference/screen.mdx +688 -0
  76. package/docs/reference/test.mdx +449 -0
  77. package/docs/reference/web.mdx +611 -0
  78. package/docs/security.mdx +292 -0
  79. package/docs/starting-your-app.mdx +231 -0
  80. package/docs/subscriptions.mdx +157 -0
  81. package/docs/telemetry.mdx +185 -0
  82. package/docs/tools.mdx +150 -0
  83. package/docs/viewports.mdx +146 -0
  84. package/docs/writing-an-engine.mdx +316 -0
  85. package/docs/writing-tests.mdx +256 -0
  86. package/package.json +15 -9
  87. package/skills/e2e/SKILL.md +7 -3
  88. package/skills/e2e/references/agent.md +3 -1
  89. package/skills/e2e/references/running.md +1 -1
  90. package/skills/e2e/references/setup.md +16 -6
@@ -77,10 +77,11 @@ export default {
77
77
  tests: 'tests/**/*.e2e.ts',
78
78
  targets: [
79
79
  {
80
- engine: web({
80
+ engine: web(),
81
+ app: {
81
82
  url: 'http://127.0.0.1:3000',
82
83
  command: { executable: 'pnpm', args: ['dev'], log: '.e2e/logs/app.log' },
83
- }),
84
+ },
84
85
  },
85
86
  ],
86
87
  // Model behind every agent.* step.
@@ -146,6 +147,13 @@ target's `app`:
146
147
  | `environment` | `'test'`, `'staging'`, `'production'`; inferred from the host, labels the report and cache key. |
147
148
  | `identity` | Stable identity for cache and session keys when the origin changes per deploy (preview URLs). Defaults to the URL's origin and path, else `bundleId`, else `appPath`. |
148
149
 
150
+ A Next.js 16 dev server blocks cross-origin requests to its dev resources, so
151
+ a target that opens `127.0.0.1` or `[::1]` while `next dev` identifies as
152
+ `localhost` never hydrates. Add the host to `allowedDevOrigins` in
153
+ `next.config.ts` (`'127.0.0.1'`, or `'[::1]'` for the bracket form). A
154
+ `localhost` target needs no entry, and a production `next start` target is
155
+ unaffected.
156
+
149
157
  There is no `services` key in this version: it is an unknown key wherever it
150
158
  appears. Start dependency processes before the run, or have `app.command`
151
159
  start a script that brings them up and serves the app.
@@ -285,8 +293,9 @@ export default {
285
293
  it: for parallel MCP sessions or bug-bash explorers, declare one target per
286
294
  device, each naming its `device`.
287
295
  - `device` can be a `DeviceProvider` leasing hosted devices, one per worker
288
- slot: `easSimulators({ projectId, buildId })` from `@e2e-dev/eas` reads
289
- `EXPO_TOKEN`, needs no Xcode or Android SDK, and with `buildId` EAS installs
296
+ slot: `easSimulators({ buildId })` from `@e2e-dev/eas` takes the project
297
+ from the app config's `extra.eas.projectId` (`projectId` overrides), reads
298
+ `EXPO_TOKEN`, else the `eas login` session, needs no Xcode or Android SDK, and with `buildId` EAS installs
290
299
  the app (omit `app.appPath`). A run must fit one session: `maxDurationMinutes`,
291
300
  absent, is the account's cap (40 on a standard plan). `videoTouches: false`
292
301
  on the engine for video there.
@@ -295,8 +304,9 @@ export default {
295
304
  150) before the next observation, `settle: false` skips it.
296
305
  - `screen`, `expect`, `app`, `agent` work unchanged; `test` from
297
306
  `@e2e-dev/mobile` types the `device` fixture (`installApp`, `openLink`,
298
- `setPermission`, `setNetwork`, `setAppearance`, `clearKeychain`, `locator`,
299
- more). Portable suites declare `requires: ['device']`.
307
+ `setPermission`, `setNetwork`, `setAppearance`, `clearKeychain`, `fold`
308
+ for an iPhone Duo's hinge, `locator`, more). Portable suites declare
309
+ `requires: ['device']`.
300
310
  - No `state` capability: `test.setup` and `session` are unavailable; sign in
301
311
  per test with `screen` actions or `agent.act`, both fill a `Secret` (topic
302
312
  `writing-tests`, Sign-in sessions).