package com.constellio.app.modules.es.connectors.smb.security; import com.constellio.sdk.tests.ConstellioTest; import jcifs.smb.SmbFile; import org.junit.Before; import org.junit.Test; import static org.mockito.Mockito.*; public class WindowsPermissionsTest extends ConstellioTest { private TrusteeManager trusteeManager; private SmbFile smbFile; @Before public void setup() { trusteeManager = new TrusteeManager(); smbFile = mock(SmbFile.class); } @Test public void whenProcessPermissionsThenNovellNtfsShare() { WindowsPermissions windowsPermissions = spy(new WindowsPermissions(smbFile, trusteeManager, false)); windowsPermissions.process(); verify(windowsPermissions, times(1)).processNovellPermissions(smbFile, trusteeManager); verify(windowsPermissions, times(1)).processNTFSPermissions(smbFile); verify(windowsPermissions, times(1)).processSharePermissions(smbFile); } @Test public void givenSkipSharePermissionsWhenProcessPermissionsThenOnlyNovellNtfs() { WindowsPermissions windowsPermissions = spy(new WindowsPermissions(smbFile, trusteeManager, true)); windowsPermissions.process(); verify(windowsPermissions, times(1)).processNovellPermissions(smbFile, trusteeManager); verify(windowsPermissions, times(1)).processNTFSPermissions(smbFile); verify(windowsPermissions, times(0)).processSharePermissions(smbFile); } }