Files
openclaw/apps/shared/OpenClawKit/Tests/OpenClawKitTests/InstanceIdentityTests.swift

56 lines
1.9 KiB
Swift

import Foundation
import Testing
@testable import OpenClawKit
struct InstanceIdentityTests {
private let version = OperatingSystemVersion(majorVersion: 26, minorVersion: 5, patchVersion: 0)
@Test func `iOS app on Mac avoids physical iPad identity`() {
let metadata = AppleMobileInstanceMetadata.resolve(
version: self.version,
interfaceIdiom: .pad,
isIOSAppOnMac: true,
rawModelIdentifier: "iPad16,6")
#expect(metadata.platformString == "iOS 26.5.0")
#expect(metadata.deviceFamily == "iOS")
#expect(metadata.modelIdentifier == "Apple Silicon Mac")
}
@Test func `physical iPad keeps iPad metadata`() {
let metadata = AppleMobileInstanceMetadata.resolve(
version: self.version,
interfaceIdiom: .pad,
isIOSAppOnMac: false,
rawModelIdentifier: " iPad16,6 ")
#expect(metadata.platformString == "iPadOS 26.5.0")
#expect(metadata.deviceFamily == "iPad")
#expect(metadata.modelIdentifier == "iPad16,6")
}
@Test func `physical iPhone keeps iPhone metadata`() {
let metadata = AppleMobileInstanceMetadata.resolve(
version: self.version,
interfaceIdiom: .phone,
isIOSAppOnMac: false,
rawModelIdentifier: "iPhone17,1")
#expect(metadata.platformString == "iOS 26.5.0")
#expect(metadata.deviceFamily == "iPhone")
#expect(metadata.modelIdentifier == "iPhone17,1")
}
@Test func `blank physical model identifier is omitted`() {
let metadata = AppleMobileInstanceMetadata.resolve(
version: self.version,
interfaceIdiom: .other,
isIOSAppOnMac: false,
rawModelIdentifier: " \n ")
#expect(metadata.platformString == "iOS 26.5.0")
#expect(metadata.deviceFamily == "iOS")
#expect(metadata.modelIdentifier == nil)
}
}