apple_kit

Apple-native services for Radroots iOS and macOS apps
git clone https://radroots.dev/git/apple_kit.git
Log | Files | Refs | README

RadrootsUITestLaunchConfiguration.swift (995B)


      1 import Foundation
      2 
      3 public struct RadrootsUITestLaunchConfiguration: Sendable, Equatable {
      4     public let environment: [String: String]
      5     public let arguments: [String]
      6 
      7     public init(environment: [String: String], arguments: [String]) {
      8         self.environment = environment
      9         self.arguments = arguments
     10     }
     11 
     12     public static func deterministic(
     13         environment: [String: String] = [:],
     14         arguments: [String] = [],
     15         language: String = "en",
     16         locale: String = "en_US_POSIX"
     17     ) -> Self {
     18         Self(
     19             environment: environment,
     20             arguments: arguments + [
     21                 "-AppleLanguages",
     22                 "(\(language))",
     23                 "-AppleLocale",
     24                 locale
     25             ]
     26         )
     27     }
     28 
     29     public func mergedEnvironment(over base: [String: String]) -> [String: String] {
     30         var merged = base
     31         for (key, value) in environment {
     32             merged[key] = value
     33         }
     34         return merged
     35     }
     36 }