native macOS codings agent orchestrator prowl.onev.cat
Something went wrong. Try again.
2.4 kB · 68 lines
Swift
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869import Testing
@testable import supacode
@MainActorstruct ShortcutKeyTokenResolverTests { @Test func prefersLayoutBaseKeyOverShiftedCharacter() { let resolver = ShortcutKeyTokenResolver( keyboardLayoutProvider: .init(baseScalarForKeyCode: { _ in "[".unicodeScalars.first }) )
let token = resolver.resolveKeyToken( keyCode: 33, charactersIgnoringModifiers: "{" )
#expect(token == "[") }
@Test func fallsBackToCharactersIgnoringModifiersWhenLayoutUnavailable() { let resolver = ShortcutKeyTokenResolver( keyboardLayoutProvider: .init(baseScalarForKeyCode: { _ in nil }) )
let token = resolver.resolveKeyToken( keyCode: 33, charactersIgnoringModifiers: "{" )
#expect(token == "{") }
@Test func specialArrowAndReturnKeysUseStableTokens() { let resolver = ShortcutKeyTokenResolver( keyboardLayoutProvider: .init(baseScalarForKeyCode: { _ in "x".unicodeScalars.first }) )
#expect(resolver.resolveKeyToken(keyCode: 36, charactersIgnoringModifiers: nil) == "return") #expect(resolver.resolveKeyToken(keyCode: 123, charactersIgnoringModifiers: nil) == "arrow_left") #expect(resolver.resolveKeyToken(keyCode: 124, charactersIgnoringModifiers: nil) == "arrow_right") #expect(resolver.resolveKeyToken(keyCode: 125, charactersIgnoringModifiers: nil) == "arrow_down") #expect(resolver.resolveKeyToken(keyCode: 126, charactersIgnoringModifiers: nil) == "arrow_up") }
@Test func numberRowAndNumpadUsePhysicalDigitTokens() { let resolver = ShortcutKeyTokenResolver( keyboardLayoutProvider: .init(baseScalarForKeyCode: { _ in nil }) )
#expect(resolver.resolveKeyToken(keyCode: 18, charactersIgnoringModifiers: "!") == "digit_1") #expect(resolver.resolveKeyToken(keyCode: 19, charactersIgnoringModifiers: "@") == "digit_2") #expect(resolver.resolveKeyToken(keyCode: 82, charactersIgnoringModifiers: "0") == "digit_0") #expect(resolver.resolveKeyToken(keyCode: 92, charactersIgnoringModifiers: "9") == "digit_9") }
@Test func lowercasesLetterTokens() { let resolver = ShortcutKeyTokenResolver( keyboardLayoutProvider: .init(baseScalarForKeyCode: { _ in "A".unicodeScalars.first }) )
let token = resolver.resolveKeyToken( keyCode: 0, charactersIgnoringModifiers: "A" )
#expect(token == "a") }}