@Test
public void recordingStatus() {
RecordingData recordingData = mock(RecordingData.class, Mockito.RETURNS_SMART_NULLS);
when(storageService.getRecordingData()).thenReturn(recordingData);
when(storageService.getRecordingState()).thenReturn(RecordingState.OFF);
assertThat(restfulService.getRecordingState(), hasEntry("recordingState", (Object) RecordingState.OFF));
verifyZeroInteractions(recordingData);
when(storageService.getRecordingState()).thenReturn(RecordingState.ON);
when(recordingData.getRecordEndDate()).thenReturn(new Date());
Map<String, Object> result = restfulService.getRecordingState();
assertThat(result, hasEntry("recordingState", (Object) RecordingState.ON));
assertThat(result, hasKey("recordingStopDate"));
when(storageService.getRecordingState()).thenReturn(RecordingState.SCHEDULED);
when(recordingData.getRecordStartDate()).thenReturn(new Date());
result = restfulService.getRecordingState();
assertThat(result, hasEntry("recordingState", (Object) RecordingState.SCHEDULED));
assertThat(result, hasKey("schduledStartDate"));
}