package jnpf.elnController; import jnpf.elnService.TemplateFillTicketService; import jnpf.util.JsonUtil; import org.junit.Test; import org.springframework.http.ResponseEntity; import java.util.Collections; import java.util.Map; import static org.junit.Assert.assertEquals; public class TemplateFillControllerTest { @Test public void validTicketReturnsEmptyFields() { TemplateFillTicketService tickets = new TemplateFillTicketService(ticket -> JsonUtil.getObjectToString(validPayload())); ResponseEntity> response = new TemplateFillController(tickets).data("Ticket ticket-1"); assertEquals(200, response.getStatusCodeValue()); assertEquals(Collections.emptyMap(), response.getBody().get("fields")); } @Test public void missingOrInvalidTicketReturns401() { TemplateFillTicketService tickets = new TemplateFillTicketService(ticket -> null); TemplateFillController controller = new TemplateFillController(tickets); assertEquals(401, controller.data(null).getStatusCodeValue()); assertEquals(401, controller.data("Bearer login-token").getStatusCodeValue()); assertEquals(401, controller.data("Ticket expired").getStatusCodeValue()); } private Map validPayload() { return new java.util.LinkedHashMap() {{ put("scope", "onlyoffice:eln-template-fill"); put("tenantId", "tenant-1"); put("userId", "user-1"); put("fileId", "file-1"); put("bizDataId", "record-1"); put("bizModule", "eln.template"); put("bizScene", "eln.template.fill"); put("pluginGuid", "asc.{7F4E8F35-5D66-47F8-A5B4-6AB3FAACF565}"); }}; } }