diff --git a/Sources/DevConfiguration/Editor/Config Variable List/ConfigVariableListViewModel.swift b/Sources/DevConfiguration/Editor/Config Variable List/ConfigVariableListViewModel.swift index 759ef9a..5505468 100644 --- a/Sources/DevConfiguration/Editor/Config Variable List/ConfigVariableListViewModel.swift +++ b/Sources/DevConfiguration/Editor/Config Variable List/ConfigVariableListViewModel.swift @@ -175,6 +175,7 @@ final class ConfigVariableListViewModel: ConfigVariableListViewModeling { func confirmClearAllOverrides() { document.removeAllOverrides() + showOverridesOnly = false } diff --git a/Tests/DevConfigurationTests/Unit Tests/Editor/Config Variable List/ConfigVariableListViewModelTests.swift b/Tests/DevConfigurationTests/Unit Tests/Editor/Config Variable List/ConfigVariableListViewModelTests.swift index 9867c1f..579a7d6 100644 --- a/Tests/DevConfigurationTests/Unit Tests/Editor/Config Variable List/ConfigVariableListViewModelTests.swift +++ b/Tests/DevConfigurationTests/Unit Tests/Editor/Config Variable List/ConfigVariableListViewModelTests.swift @@ -767,6 +767,24 @@ struct ConfigVariableListViewModelTests: RandomValueGenerating { } + @Test + mutating func confirmClearAllOverridesClearsShowOverridesOnly() { + // set up with an override and the overrides-only filter engaged + let variable = randomRegisteredVariable(defaultContent: .string(randomAlphanumericString())) + let document = makeDocument(registeredVariables: [variable]) + let viewModel = makeViewModel(document: document) + + document.setOverride(.string(randomAlphanumericString()), forKey: variable.key) + viewModel.showOverridesOnly = true + + // exercise + viewModel.confirmClearAllOverrides() + + // expect the filter is turned back off + #expect(!viewModel.showOverridesOnly) + } + + // MARK: - undo @Test