@Test
public void testGetSecurityFunctions()
{

    when(securityFunctionDao.getSecurityFunctions()).thenReturn(ALL_SECURITY_FUNCTION_NAMES);
    SecurityFunctionKeys securityFunctionKeys = securityFunctionService.getSecurityFunctions();
    assertNotNull(securityFunctionKeys);
    List<SecurityFunctionKey> securityFunctionKeyList = securityFunctionKeys.getSecurityFunctionKeys();
    assertEquals(ALL_SECURITY_FUNCTION_NAMES.size(), securityFunctionKeyList.size());
    // verify the order is reserved
    assertEquals(SECURITY_FUNCTION, securityFunctionKeyList.get(0).getSecurityFunctionName());
    assertEquals(SECURITY_FUNCTION_2, securityFunctionKeyList.get(1).getSecurityFunctionName());
    assertEquals(SECURITY_FUNCTION_3, securityFunctionKeyList.get(2).getSecurityFunctionName());
    verify(securityFunctionDao).getSecurityFunctions();
    verifyNoMoreInteractionsHelper();
}