mirror of
https://github.com/meshtastic/web.git
synced 2026-07-30 14:36:32 -04:00
* chore(deps-dev): bump oxfmt from 0.58.0 to 0.59.0 Bumps [oxfmt](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt) from 0.58.0 to 0.59.0. - [Release notes](https://github.com/oxc-project/oxc/releases) - [Changelog](https://github.com/oxc-project/oxc/blob/main/npm/oxfmt/CHANGELOG.md) - [Commits](https://github.com/oxc-project/oxc/commits/oxfmt_v0.59.0/npm/oxfmt) --- updated-dependencies: - dependency-name: oxfmt dependency-version: 0.59.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * chore: fix formatting issues for oxfmt 0.59.0 * fix: add vitest.config.ts for packages/ui to avoid unplugin-dts TypeScript 7 crash --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Dan Ditomaso <dan.ditomaso@gmail.com> Co-authored-by: Hunter Thornsberry <hunter@hunterthornsberry.com>
61 lines
1.7 KiB
TypeScript
61 lines
1.7 KiB
TypeScript
import { defineConfig, devices } from "@playwright/test";
|
|
|
|
/**
|
|
* End-to-end suite that drives the real web app against a REAL Meshtastic device
|
|
* (a simulated `meshtasticd` node by default, or physical hardware) over the
|
|
* HTTP(S) phone API, and exercises text messaging across a two-node mesh.
|
|
*
|
|
* Topology is brought up in e2e/global-setup.ts. The off-browser "mesh peer"
|
|
* (e2e/peer/peer.py) drives/asserts the second node. See e2e/README.md.
|
|
*/
|
|
const WEB_PORT = Number(process.env.E2E_WEB_PORT ?? 3100);
|
|
|
|
export default defineConfig({
|
|
testDir: "./e2e/tests",
|
|
outputDir: "./e2e/.results",
|
|
globalSetup: "./e2e/global-setup.ts",
|
|
globalTeardown: "./e2e/global-teardown.ts",
|
|
|
|
// Tests share a single two-node mesh + one device identity, so run serially.
|
|
fullyParallel: false,
|
|
workers: 1,
|
|
forbidOnly: !!process.env.CI,
|
|
retries: process.env.CI ? 1 : 0,
|
|
timeout: 90_000,
|
|
expect: { timeout: 15_000 },
|
|
|
|
reporter: [
|
|
["list"],
|
|
["html", { outputFolder: "e2e/.report", open: "never" }],
|
|
],
|
|
|
|
use: {
|
|
baseURL: `http://localhost:${WEB_PORT}`,
|
|
// The device webserver uses a self-signed cert (TLS-only on 9443).
|
|
ignoreHTTPSErrors: true,
|
|
trace: "on-first-retry",
|
|
screenshot: "only-on-failure",
|
|
video: "retain-on-failure",
|
|
},
|
|
|
|
projects: [
|
|
{
|
|
name: "chromium",
|
|
use: {
|
|
...devices["Desktop Chrome"],
|
|
// Belt-and-suspenders for the device's self-signed cert.
|
|
launchOptions: { args: ["--ignore-certificate-errors"] },
|
|
},
|
|
},
|
|
],
|
|
|
|
webServer: {
|
|
command: `pnpm --filter ./apps/web exec vite --port ${WEB_PORT} --strictPort`,
|
|
url: `http://localhost:${WEB_PORT}`,
|
|
reuseExistingServer: !process.env.CI,
|
|
timeout: 120_000,
|
|
stdout: "ignore",
|
|
stderr: "pipe",
|
|
},
|
|
});
|