diff --git a/packages/playwright-test/src/plugins/vitePlugin.ts b/packages/playwright-test/src/plugins/vitePlugin.ts index ebad22e9418d59..67fb896b0ce1ac 100644 --- a/packages/playwright-test/src/plugins/vitePlugin.ts +++ b/packages/playwright-test/src/plugins/vitePlugin.ts @@ -94,7 +94,7 @@ export function createPlugin( const sourcesDirty = !buildExists || hasNewComponents || await checkSources(buildInfo); viteConfig.root = rootDir; - viteConfig.preview = { port }; + viteConfig.preview = { port, ...viteConfig.preview }; viteConfig.build = { outDir }; @@ -152,9 +152,10 @@ export function createPlugin( stoppableServer = stoppable(previewServer.httpServer, 0); const isAddressInfo = (x: any): x is AddressInfo => x?.address; const address = previewServer.httpServer.address(); - if (isAddressInfo(address)) - process.env.PLAYWRIGHT_TEST_BASE_URL = `http://localhost:${address.port}`; - + if (isAddressInfo(address)) { + const protocol = viteConfig.preview.https ? 'https:' : 'http:'; + process.env.PLAYWRIGHT_TEST_BASE_URL = `${protocol}//localhost:${address.port}`; + } }, teardown: async () => { diff --git a/tests/components/ct-solid/package.json b/tests/components/ct-solid/package.json index 608dbfcc1e437f..6b26a7eee7f228 100644 --- a/tests/components/ct-solid/package.json +++ b/tests/components/ct-solid/package.json @@ -13,7 +13,8 @@ "devDependencies": { "typescript": "^4.7.4", "vite": "^3.2.1", - "vite-plugin-solid": "^2.3.10" + "vite-plugin-mkcert": "^1.10.1", + "vite-plugin-solid": "^2.5.0" }, "dependencies": { "solid-js": "^1.4.7" diff --git a/tests/components/ct-solid/playwright.config.ts b/tests/components/ct-solid/playwright.config.ts index 891aeb6e04af3e..9ac1a07858b01a 100644 --- a/tests/components/ct-solid/playwright.config.ts +++ b/tests/components/ct-solid/playwright.config.ts @@ -15,6 +15,8 @@ */ import { type PlaywrightTestConfig, devices } from '@playwright/experimental-ct-solid'; +import solidPlugin from 'vite-plugin-solid'; +import mkcert from'vite-plugin-mkcert'; const config: PlaywrightTestConfig = { testDir: 'src', @@ -23,6 +25,12 @@ const config: PlaywrightTestConfig = { reporter: 'html', use: { trace: 'on-first-retry', + ctViteConfig: { + plugins: [mkcert(), solidPlugin()], + preview: { + https: true + } + } }, projects: [ { diff --git a/tests/components/ct-solid/vite.config.ts b/tests/components/ct-solid/vite.config.ts index 9ff59a172211ab..ae76493e037fb0 100644 --- a/tests/components/ct-solid/vite.config.ts +++ b/tests/components/ct-solid/vite.config.ts @@ -1,11 +1,15 @@ import { defineConfig } from 'vite'; import solidPlugin from 'vite-plugin-solid'; +import mkcert from'vite-plugin-mkcert'; export default defineConfig({ - plugins: [solidPlugin()], + plugins: [mkcert(), solidPlugin()], server: { port: 3000, }, + preview: { + https: true + }, build: { target: 'esnext', },