From 122601b733c71b2ac29dffa06d2aa72a6f80bada Mon Sep 17 00:00:00 2001 From: Pablo Matias Gomez Date: Thu, 5 Dec 2024 17:31:48 -0300 Subject: [PATCH] Change sdk enabled logic to mimic android and backend --- .../EmbraceConfigurable/RemoteConfig.swift | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Sources/EmbraceConfigInternal/EmbraceConfigurable/RemoteConfig.swift b/Sources/EmbraceConfigInternal/EmbraceConfigurable/RemoteConfig.swift index ba98244a..589e188c 100644 --- a/Sources/EmbraceConfigInternal/EmbraceConfigurable/RemoteConfig.swift +++ b/Sources/EmbraceConfigInternal/EmbraceConfigurable/RemoteConfig.swift @@ -97,17 +97,17 @@ extension RemoteConfig { /// Determine the max value for the probability `space` by using the number of `digits` (16 ^ `n`) /// If the `hexValue` is within the `threshold` /// ``` - /// space = 16^numDigits - /// result = (hexValue / space) * 100.0 < threshold + /// space = 16^numDigits - 1 + /// result = (hexValue / space) * 100.0 <= threshold /// ``` /// - Parameters: /// - hexValue: The value to test /// - digits: The number of digits used to calculate the total space. Must match the number of digits used to determine the hexValue /// - threshold: The percentage threshold to test against. Values between 0.0 and 100.0 static func isEnabled(hexValue: UInt64, digits: UInt, threshold: Float) -> Bool { - let space = powf(16, Float(digits)) + let space = powf(16, Float(digits)) - 1 let result = (Float(hexValue) / space) * 100 - return result < threshold + return result <= threshold } }