From d9e68ba8c306acd6265c9a690cf7b2bc8741b173 Mon Sep 17 00:00:00 2001 From: Max Schmitt Date: Fri, 24 Jan 2025 15:55:31 +0100 Subject: [PATCH] review --- src/Playwright.NUnit/BrowserService.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Playwright.NUnit/BrowserService.cs b/src/Playwright.NUnit/BrowserService.cs index 955d6f8e2..32f932d0c 100644 --- a/src/Playwright.NUnit/BrowserService.cs +++ b/src/Playwright.NUnit/BrowserService.cs @@ -25,6 +25,7 @@ using System; using System.Collections.Generic; using System.Globalization; +using System.Linq; using System.Text.Json; using System.Text.Json.Serialization; using System.Threading.Tasks; @@ -50,10 +51,13 @@ private static async Task CreateBrowser(IBrowserType browserType, Play { if (connectOptions != null) { - return await browserType.ConnectAsync(connectOptions.WSEndpoint, connectOptions).ConfigureAwait(false); + var options = new BrowserTypeConnectOptions(connectOptions); + options.Headers = [.. options.Headers ?? new Dictionary()]; + options.Headers.Append(new("x-playwright-launch-options", JsonSerializer.Serialize(PlaywrightSettingsProvider.LaunchOptions, new JsonSerializerOptions() { DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull }))); + return await browserType.ConnectAsync(connectOptions.WSEndpoint, options).ConfigureAwait(false); } - var legacyBrowser = await ConnectToLegacyService(browserType); + var legacyBrowser = await ConnectBasedOnEnv(browserType); if (legacyBrowser != null) { return legacyBrowser; @@ -61,8 +65,8 @@ private static async Task CreateBrowser(IBrowserType browserType, Play return await browserType.LaunchAsync(PlaywrightSettingsProvider.LaunchOptions).ConfigureAwait(false); } - // TODO: Remove after Q3 2025 - private static async Task ConnectToLegacyService(IBrowserType browserType) + // TODO: Remove at some point + private static async Task ConnectBasedOnEnv(IBrowserType browserType) { var accessToken = Environment.GetEnvironmentVariable("PLAYWRIGHT_SERVICE_ACCESS_TOKEN"); var serviceUrl = Environment.GetEnvironmentVariable("PLAYWRIGHT_SERVICE_URL");