Files
2026-07-13 13:05:33 +08:00

24 lines
966 B
Swift

import XCTest
@testable import OrcaComputerUseMacOSCore
final class KeyboardInputSafetyTests: XCTestCase {
func testSyntheticInputRequiresFocusedTargetWindow() {
let cases: [(focused: Bool, restoreWindow: Bool, expectedFailure: KeyboardInputSafety.FocusFailure?)] = [
(focused: true, restoreWindow: false, expectedFailure: nil),
(focused: true, restoreWindow: true, expectedFailure: nil),
(focused: false, restoreWindow: false, expectedFailure: .targetNotFocused),
(focused: false, restoreWindow: true, expectedFailure: .targetNotFocusedAfterRestore),
]
for testCase in cases {
XCTAssertEqual(
KeyboardInputSafety.syntheticInputFocusFailure(
targetWindowFocused: testCase.focused,
restoreWindowRequested: testCase.restoreWindow
),
testCase.expectedFailure
)
}
}
}