UNPKG

vitest-e2e

Version:
53 lines (47 loc) 2.24 kB
'use strict'; var chunkPJYHJVIT_cjs = require('./chunk-PJYHJVIT.cjs'); var fs = require('fs-extra'); var os = require('os'); var path = require('path'); var playwrightChromium = require('playwright-chromium'); function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; } var fs__default = /*#__PURE__*/_interopDefault(fs); var os__default = /*#__PURE__*/_interopDefault(os); var path__default = /*#__PURE__*/_interopDefault(path); var DIR = path__default.default.join(os__default.default.tmpdir(), "vitest_playwright_global_setup"); var browserServer; async function setup() { process.env.NODE_ENV = process.env.VITE_TEST_BUILD ? "production" : "development"; browserServer = await playwrightChromium.chromium.launchServer({ headless: !process.env.VITE_DEBUG_SERVE, args: process.env.CI ? ["--no-sandbox", "--disable-setuid-sandbox"] : void 0 }); await fs__default.default.mkdirp(DIR); await fs__default.default.writeFile(path__default.default.join(DIR, "wsEndpoint"), browserServer.wsEndpoint()); const tempDir = path__default.default.resolve(chunkPJYHJVIT_cjs.workspaceRoot, "./playground-temp"); await fs__default.default.ensureDir(tempDir); await fs__default.default.emptyDir(tempDir); await fs__default.default.copy(path__default.default.resolve(chunkPJYHJVIT_cjs.workspaceRoot, "./playground"), tempDir, { dereference: false, filter(file) { file = file.replace(/\\/g, "/"); return !file.includes("__tests__") && !/dist(\/|$)/.test(file); } }).catch(async (error) => { if (error.code === "EPERM" && error.syscall === "symlink") { throw new Error( "Could not create symlinks. On Windows, consider activating Developer Mode to allow non-admin users to create symlinks by following the instructions at https://docs.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development." ); } else { throw error; } }); } async function teardown() { await browserServer?.close(); if (!process.env.VITE_PRESERVE_BUILD_ARTIFACTS) { fs__default.default.removeSync(path__default.default.resolve(chunkPJYHJVIT_cjs.workspaceRoot, "./playground-temp")); } } exports.setup = setup; exports.teardown = teardown;