diff options
| author | Christian Cleberg <[email protected]> | 2026-04-20 13:04:57 -0500 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-04-20 13:04:57 -0500 |
| commit | 8b73fd9cd43753b36b3ab3ca5e4dc83a47ea3480 (patch) | |
| tree | 25658dbdc28775764f5745576c240efd38fd4685 /HutchTests | |
| parent | d29fbef60abdffaee190b758530dde9212745ed2 (diff) | |
| download | hutch-8b73fd9cd43753b36b3ab3ca5e4dc83a47ea3480.tar.gz hutch-8b73fd9cd43753b36b3ab3ca5e4dc83a47ea3480.tar.bz2 hutch-8b73fd9cd43753b36b3ab3ca5e4dc83a47ea3480.zip | |
fix: add mark all read actions and avoid resending unchanged repo metadata
Diffstat (limited to 'HutchTests')
| -rw-r--r-- | HutchTests/RepositorySettingsViewModelTests.swift | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/HutchTests/RepositorySettingsViewModelTests.swift b/HutchTests/RepositorySettingsViewModelTests.swift index e64e08f..13d0b21 100644 --- a/HutchTests/RepositorySettingsViewModelTests.swift +++ b/HutchTests/RepositorySettingsViewModelTests.swift @@ -115,6 +115,39 @@ struct RepositorySettingsViewModelTests { #expect(viewModel.isMetadataDirty == false) } + @Test + @MainActor + func metadataInputOmitsUnchangedNameWhenOnlyDescriptionChanges() { + let viewModel = RepositorySettingsViewModel( + repository: makeRepository(headName: "refs/heads/main"), + branches: [ReferenceDetail(name: "refs/heads/main", target: nil, date: nil)], + client: SRHTClient(token: "test-token") + ) + viewModel.editedDescription = "an ios client for sourcehut" + + let input = viewModel.metadataInputForSave() + + #expect(input["name"] == nil) + #expect(input["description"] as? String == "an ios client for sourcehut") + } + + @Test + @MainActor + func metadataInputUsesNilToClearDescription() { + let viewModel = RepositorySettingsViewModel( + repository: makeRepository(headName: "refs/heads/main"), + branches: [ReferenceDetail(name: "refs/heads/main", target: nil, date: nil)], + client: SRHTClient(token: "test-token") + ) + viewModel.editedDescription = " " + + let input = viewModel.metadataInputForSave() + + #expect(input["name"] == nil) + #expect(input.keys.contains("description")) + #expect(input["description"] as? String == nil) + } + @MainActor private func makeRepository(headName: String?) -> RepositorySummary { RepositorySummary( |
