package org.molgenis.security.permission; import org.molgenis.security.core.MolgenisPermissionService; import org.molgenis.security.core.Permission; import org.testng.annotations.BeforeMethod; import org.testng.annotations.Test; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import static org.testng.Assert.assertFalse; import static org.testng.Assert.assertTrue; public class MolgenisPermissionControllerTest { private MolgenisPermissionService molgenisPermissionService; private MolgenisPermissionController molgenisPermissionController; @BeforeMethod public void setUpBeforeMethod() { molgenisPermissionService = mock(MolgenisPermissionService.class); molgenisPermissionController = new MolgenisPermissionController(molgenisPermissionService); } @Test(expectedExceptions = NullPointerException.class) public void MolgenisPermissionController() { new MolgenisPermissionController(null); } @Test public void hasReadPermissionTrue() { String entityName = "entity"; when(molgenisPermissionService.hasPermissionOnEntity(entityName, Permission.READ)).thenReturn(true); assertTrue(molgenisPermissionController.hasReadPermission(entityName)); } @Test public void hasReadPermissionFalse() { String entityName = "entity"; when(molgenisPermissionService.hasPermissionOnEntity(entityName, Permission.READ)).thenReturn(false); assertFalse(molgenisPermissionController.hasReadPermission(entityName)); } @Test public void hasWritePermissionTrue() { String entityName = "entity"; when(molgenisPermissionService.hasPermissionOnEntity(entityName, Permission.WRITE)).thenReturn(true); assertTrue(molgenisPermissionController.hasWritePermission(entityName)); } @Test public void hasWritePermissionFalse() { String entityName = "entity"; when(molgenisPermissionService.hasPermissionOnEntity(entityName, Permission.WRITE)).thenReturn(false); assertFalse(molgenisPermissionController.hasWritePermission(entityName)); } }