export const testBrowserSupportRelease = { appVersion: "1.2.3-test", browsers: [ { brand: "Google Chrome", fullVersion: "150.0.7339.1" }, { brand: "Microsoft Edge", fullVersion: "150.0.4078.99" }, ], } as const; interface BrowserIdentityFixture { brand: string; fullVersion: string; platform?: string; } function major(version: string) { return version.split(".")[0]; } function serialize(values: Array<{ brand: string; version: string }>) { return values.map(({ brand, version }) => `"${brand}";v="${version}"`).join(", "); } export function browserSupportFixture(input: BrowserIdentityFixture) { const platform = input.platform ?? "Windows"; const brands = [ { brand: "Not_A Brand", version: "99" }, { brand: "Chromium", version: major(input.fullVersion) }, { brand: input.brand, version: major(input.fullVersion) }, ]; const fullVersionList = [ { brand: "Not_A Brand", version: "99.0.0.0" }, { brand: "Chromium", version: input.fullVersion }, { brand: input.brand, version: input.fullVersion }, ]; return { body: { brands, full_version_list: fullVersionList, platform, }, headers: { host: "127.0.0.1:43121", origin: "http://127.0.0.1:43121", "sec-ch-ua": serialize(brands), "sec-ch-ua-full-version-list": serialize(fullVersionList), "sec-ch-ua-platform": `"${platform}"`, }, }; }