fix(keyboard): synchronize adaptive field actions

Enable the correct host action immediately after keyboard edits and advance the shared build number to 75.
This commit is contained in:
Rocky
2026-08-16 14:22:48 +08:00
parent fb97ec2937
commit 805b01a68e
10 changed files with 227 additions and 64 deletions
@@ -0,0 +1,51 @@
import XCTest
@testable import OSGKeyboardShared
@MainActor
final class AssistantFieldActionTests: XCTestCase {
func testContentActionsRequireText() {
let roles: [KeyboardState.ReturnKeyRole] = [
.send,
.go,
.search,
.join,
.route,
.google,
.yahoo
]
for role in roles {
XCTAssertFalse(role.assistantActionAvailable(hasText: false))
XCTAssertTrue(role.assistantActionAvailable(hasText: true))
}
}
func testNavigationActionsRemainAvailableWithoutText() {
let roles: [KeyboardState.ReturnKeyRole] = [
.newline,
.done,
.next,
.continue,
.emergencyCall
]
for role in roles {
XCTAssertTrue(role.assistantActionAvailable(hasText: false))
}
}
func testSearchRolesUseSearchSymbol() {
XCTAssertEqual(
KeyboardState.ReturnKeyRole.search.assistantActionSystemImage,
"magnifyingglass"
)
XCTAssertEqual(
KeyboardState.ReturnKeyRole.google.assistantActionSystemImage,
"magnifyingglass"
)
XCTAssertEqual(
KeyboardState.ReturnKeyRole.yahoo.assistantActionSystemImage,
"magnifyingglass"
)
}
}