From eb8d11ac4080162c9ef1d43b37c39a811db3d86a Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Wed, 22 Feb 2023 13:19:29 +0100 Subject: [PATCH] Add test to directly set states Signed-off-by: Marcel Hibbe --- .../viewmodels/CallRecordingViewModelTest.kt | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/app/src/test/java/com/nextcloud/talk/viewmodels/CallRecordingViewModelTest.kt b/app/src/test/java/com/nextcloud/talk/viewmodels/CallRecordingViewModelTest.kt index 13b571658..61469184f 100644 --- a/app/src/test/java/com/nextcloud/talk/viewmodels/CallRecordingViewModelTest.kt +++ b/app/src/test/java/com/nextcloud/talk/viewmodels/CallRecordingViewModelTest.kt @@ -81,4 +81,28 @@ class CallRecordingViewModelTest : AbstractViewModelTest() { (viewModel.viewState.value as CallRecordingViewModel.RecordingStartedState).showStartedInfo ) } + + @Test + fun testSetRecordingStateDirectly() { + val viewModel = CallRecordingViewModel(repository) + viewModel.setData("foo") + + viewModel.setRecordingState(CallRecordingViewModel.RECORDING_STOPPED_CODE) + Assert.isTrue(viewModel.viewState.value is CallRecordingViewModel.RecordingStoppedState) + + viewModel.setRecordingState(CallRecordingViewModel.RECORDING_STARTED_AUDIO_CODE) + Assert.isTrue(viewModel.viewState.value is CallRecordingViewModel.RecordingStartedState) + + viewModel.setRecordingState(CallRecordingViewModel.RECORDING_STARTED_VIDEO_CODE) + Assert.isTrue(viewModel.viewState.value is CallRecordingViewModel.RecordingStartedState) + + viewModel.setRecordingState(CallRecordingViewModel.RECORDING_STARTING_AUDIO_CODE) + Assert.isTrue(viewModel.viewState.value is CallRecordingViewModel.RecordingStartingState) + + viewModel.setRecordingState(CallRecordingViewModel.RECORDING_STARTING_VIDEO_CODE) + Assert.isTrue(viewModel.viewState.value is CallRecordingViewModel.RecordingStartingState) + + viewModel.setRecordingState(CallRecordingViewModel.RECORDING_FAILED_CODE) + Assert.isTrue(viewModel.viewState.value is CallRecordingViewModel.RecordingErrorState) + } }