package jnpf.dmsController.permission;
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
import jnpf.dmsController.DmsControllerTestSupport;
|
import jnpf.dmsEntity.permission.form.AccessExclusionBatchForm;
|
import jnpf.dmsEntity.permission.form.AccessExclusionRevokeForm;
|
import jnpf.dmsEntity.permission.vo.DmsAccessExclusionVO;
|
import jnpf.dmsEntity.permission.vo.DmsCursorPageVO;
|
import jnpf.dmsService.DmsAccessExclusionService;
|
import org.junit.jupiter.api.Test;
|
|
import java.util.Collections;
|
import java.util.List;
|
import java.util.UUID;
|
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
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 AccessExclusionControllerTest extends DmsControllerTestSupport {
|
private final DmsAccessExclusionService service = mock(DmsAccessExclusionService.class);
|
private final AccessExclusionController controller = new AccessExclusionController(service);
|
|
@Test
|
void delegatesCreatePageAndRevokeWithUnchangedArguments() {
|
UUID resourceId = UUID.randomUUID();
|
AccessExclusionBatchForm createForm = mock(AccessExclusionBatchForm.class);
|
AccessExclusionRevokeForm revokeForm = mock(AccessExclusionRevokeForm.class);
|
List<DmsAccessExclusionVO> exclusions =
|
Collections.singletonList(mock(DmsAccessExclusionVO.class));
|
DmsCursorPageVO<DmsAccessExclusionVO> page = new DmsCursorPageVO<>();
|
when(service.create(createForm)).thenReturn(exclusions);
|
when(service.page(resourceId, "user-1", "cursor", 30)).thenReturn(page);
|
when(service.revoke(revokeForm)).thenReturn(exclusions);
|
|
assertSame(exclusions, controller.create(createForm).getData());
|
assertSame(page, controller.page(resourceId, "user-1", "cursor", 30).getData());
|
assertSame(exclusions, controller.revoke(revokeForm).getData());
|
|
verify(service).create(createForm);
|
verify(service).page(resourceId, "user-1", "cursor", 30);
|
verify(service).revoke(revokeForm);
|
}
|
|
@Test
|
void bindsBizSignFromCreateRequestBody() throws Exception {
|
AccessExclusionBatchForm form = new ObjectMapper().readValue(
|
"{\"biz_sign\":\"sign-1\"}", AccessExclusionBatchForm.class);
|
|
assertEquals("sign-1", form.getBizSign());
|
}
|
}
|