package jnpf.dmsController;
|
|
import jnpf.dmsController.download.DmsFileDownloadController;
|
import jnpf.dmsController.preview.DmsFilePageCountController;
|
import jnpf.dmsController.preview.DmsFilePreviewController;
|
import jnpf.dmsController.print.DmsFilePrintController;
|
import jnpf.dmsController.search.DmsFullTextSearchController;
|
import jnpf.dmsEntity.download.form.DmsFileDownloadTicketRequest;
|
import jnpf.dmsEntity.download.vo.DmsFileDownloadTicketVO;
|
import jnpf.dmsEntity.preview.form.DmsFilePreviewTicketRequest;
|
import jnpf.dmsEntity.preview.vo.DmsFilePageCountVO;
|
import jnpf.dmsEntity.preview.vo.DmsFilePreviewTicketVO;
|
import jnpf.dmsEntity.print.form.DmsFilePrintTicketRequest;
|
import jnpf.dmsEntity.print.vo.DmsFilePrintTicketVO;
|
import jnpf.dmsEntity.search.form.DmsFullTextSearchForm;
|
import jnpf.dmsEntity.search.vo.DmsFullTextSearchPageVO;
|
import jnpf.dmsService.DmsFilePageCountService;
|
import jnpf.dmsService.DmsFileDownloadService;
|
import jnpf.dmsService.DmsFilePreviewService;
|
import jnpf.dmsService.DmsFilePrintService;
|
import jnpf.dmsService.search.DmsFullTextSearchService;
|
import org.junit.jupiter.api.Test;
|
|
import java.io.IOException;
|
import java.util.UUID;
|
|
import static org.junit.jupiter.api.Assertions.assertSame;
|
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.when;
|
|
class DmsFileAccessControllerTest extends DmsControllerTestSupport {
|
|
@Test
|
void delegatesFullTextSearchToPermissionFilteringService() throws IOException {
|
DmsFullTextSearchService service = mock(DmsFullTextSearchService.class);
|
DmsFullTextSearchController controller = new DmsFullTextSearchController(service);
|
DmsFullTextSearchForm form = mock(DmsFullTextSearchForm.class);
|
DmsFullTextSearchPageVO page = mock(DmsFullTextSearchPageVO.class);
|
when(service.search(form)).thenReturn(page);
|
|
assertSame(page, controller.search(form).getData());
|
verify(service).search(form);
|
}
|
|
@Test
|
void delegatesPreviewRequestToReadProtectedTicketService() {
|
DmsFilePreviewService service = mock(DmsFilePreviewService.class);
|
DmsFilePreviewController controller = new DmsFilePreviewController(service);
|
DmsFilePreviewTicketRequest request = mock(DmsFilePreviewTicketRequest.class);
|
DmsFilePreviewTicketVO ticket = mock(DmsFilePreviewTicketVO.class);
|
when(service.createTicket(request)).thenReturn(ticket);
|
|
assertSame(ticket, controller.createTicket(request).getData());
|
verify(service).createTicket(request);
|
}
|
|
@Test
|
void delegatesDownloadRequestToControlledDownloadService() {
|
DmsFileDownloadService service = mock(DmsFileDownloadService.class);
|
DmsFileDownloadController controller = new DmsFileDownloadController(service);
|
DmsFileDownloadTicketRequest request = mock(DmsFileDownloadTicketRequest.class);
|
DmsFileDownloadTicketVO ticket = mock(DmsFileDownloadTicketVO.class);
|
when(service.createTicket(request)).thenReturn(ticket);
|
|
assertSame(ticket, controller.createTicket(request).getData());
|
verify(service).createTicket(request);
|
}
|
|
@Test
|
void delegatesPrintRequestToPrintProtectedTicketService() {
|
DmsFilePrintService service = mock(DmsFilePrintService.class);
|
DmsFilePrintController controller = new DmsFilePrintController(service);
|
DmsFilePrintTicketRequest request = mock(DmsFilePrintTicketRequest.class);
|
DmsFilePrintTicketVO ticket = mock(DmsFilePrintTicketVO.class);
|
when(service.createTicket(request)).thenReturn(ticket);
|
|
assertSame(ticket, controller.createTicket(request).getData());
|
verify(service).createTicket(request);
|
}
|
|
@Test
|
void delegatesFileVersionPageCountRequest() throws IOException {
|
DmsFilePageCountService service = mock(DmsFilePageCountService.class);
|
DmsFilePageCountController controller = new DmsFilePageCountController(service);
|
UUID fileVersionId = UUID.randomUUID();
|
DmsFilePageCountVO pageCount = new DmsFilePageCountVO();
|
when(service.getPageCount(fileVersionId)).thenReturn(pageCount);
|
|
assertSame(pageCount, controller.getPageCount(fileVersionId).getData());
|
verify(service).getPageCount(fileVersionId);
|
}
|
}
|