fix: no-op unknown removal, earlier-duplicate editor check, list focus for delete/undo

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-01 15:53:15 +02:00
co-authored by Claude Sonnet 5.5
parent 9a5794c1e0
commit d34d3e92da
4 changed files with 44 additions and 3 deletions
+17
View File
@@ -170,4 +170,21 @@ struct DictionaryViewModelTests {
let asNew = model.warnings(for: .correction(heard: "cloud code", wrote: "Other"), editing: nil)
#expect(asNew.contains { $0.level == .error })
}
@Test func removingAnUnknownIdChangesNothing() throws {
let (model, store) = try makeModel("Supabase\n")
let before = store.entries
model.remove(id: UUID())
#expect(store.entries == before)
#expect(model.canUndo == false)
}
@Test func editingTheEarlierOfTwoDuplicatesShowsNoDuplicateError() throws {
let (model, store) = try makeModel("cloud code => A\nCloud-Code => B\n")
let first = store.entries[0]
let second = store.entries[1]
#expect(!model.warnings(for: first.kind, editing: first.id).contains { $0.level == .error })
#expect(model.warnings(for: second.kind, editing: second.id).contains { $0.level == .error })
#expect(model.warnings(for: first.kind, editing: nil).contains { $0.level == .error })
}
}