Files
Termind/FrameworkTests/TerminalFindControllerTests.swift
T

46 lines
1.3 KiB
Swift

import TermindApplication
import TermindDomain
import Testing
@Suite("Terminal Find controller")
@MainActor
struct TerminalFindControllerTests {
@Test func retainedQueryRestartsWhenPresentedAndDismissReturnsFocus() {
var bindings: [String] = []
var focusCount = 0
let find = TerminalFindController(
perform: { bindings.append($0) },
focus: { focusCount += 1 }
)
find.updateQuery("deploy")
find.present()
find.navigate(.next)
find.dismiss()
find.present()
#expect(
bindings == [
TerminalFindBinding.search("deploy"),
TerminalFindBinding.search("deploy"),
TerminalFindBinding.navigate(.next),
TerminalFindBinding.end,
TerminalFindBinding.search("deploy"),
]
)
#expect(focusCount == 1)
#expect(find.query == "deploy")
#expect(find.isPresented)
}
@Test func navigationOpensTheBarButRequiresAQuery() {
var bindings: [String] = []
let find = TerminalFindController(perform: { bindings.append($0) }, focus: {})
find.presentAndNavigate(.previous)
#expect(find.isPresented)
#expect(bindings.isEmpty)
}
}