From 96589b036aefbb6d9fc87a302a71afd7c006e27a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jacek=20=C5=81yp?= Date: Mon, 30 Oct 2023 15:13:28 +0100 Subject: [PATCH] Switch to next phase of new experiment for UA --- Core/DefaultVariantManager.swift | 7 +++++-- Core/UserAgentManager.swift | 2 ++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Core/DefaultVariantManager.swift b/Core/DefaultVariantManager.swift index 7539b2981b..158b52d99d 100644 --- a/Core/DefaultVariantManager.swift +++ b/Core/DefaultVariantManager.swift @@ -27,6 +27,7 @@ extension FeatureName { // public static let experimentalFeature = FeatureName(rawValue: "experimentalFeature") public static let fixedUserAgent = FeatureName(rawValue: "fixedUserAgent") + public static let closestUserAgent = FeatureName(rawValue: "closestUserAgent") } public struct VariantIOS: Variant { @@ -61,8 +62,10 @@ public struct VariantIOS: Variant { VariantIOS(name: "sc", weight: doNotAllocate, isIncluded: When.always, features: []), VariantIOS(name: "sd", weight: doNotAllocate, isIncluded: When.always, features: []), VariantIOS(name: "se", weight: doNotAllocate, isIncluded: When.always, features: []), - VariantIOS(name: "me", weight: 1, isIncluded: When.always, features: []), - VariantIOS(name: "mf", weight: 1, isIncluded: When.always, features: [.fixedUserAgent]), + VariantIOS(name: "me", weight: doNotAllocate, isIncluded: When.always, features: []), + VariantIOS(name: "mf", weight: doNotAllocate, isIncluded: When.always, features: []), + VariantIOS(name: "mg", weight: 1, isIncluded: When.always, features: [.fixedUserAgent]), + VariantIOS(name: "mh", weight: 1, isIncluded: When.always, features: [.closestUserAgent]), returningUser ] diff --git a/Core/UserAgentManager.swift b/Core/UserAgentManager.swift index 0e03659e2e..6434f24758 100644 --- a/Core/UserAgentManager.swift +++ b/Core/UserAgentManager.swift @@ -212,6 +212,8 @@ struct UserAgent { if DefaultVariantManager().isSupported(feature: .fixedUserAgent) { return ddgFixedLogic(forUrl: url, isDesktop: isDesktop, privacyConfig: privacyConfig) + } else if DefaultVariantManager().isSupported(feature: .closestUserAgent) { + return closestLogic(forUrl: url, isDesktop: isDesktop, privacyConfig: privacyConfig) } switch defaultPolicy(forConfig: privacyConfig) {