package org.mifos.customers.group.business.service; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import org.junit.Test; import org.junit.runner.RunWith; import org.mifos.customers.exceptions.CustomerException; import org.mifos.customers.group.persistence.GroupPersistence; import org.mifos.framework.exceptions.PersistenceException; import org.mifos.framework.exceptions.ServiceException; import org.mockito.runners.MockitoJUnitRunner; import org.springframework.test.annotation.ExpectedException; @RunWith(MockitoJUnitRunner.class) public class GroupBusinessServiceTest { final GroupPersistence groupPersistence = mock(GroupPersistence.class); GroupBusinessService service = new GroupBusinessService() { @Override protected GroupPersistence getGroupPersistence() { return groupPersistence; } }; @Test @ExpectedException(value = CustomerException.class) public void testInvalidConnectionInGetGroup() throws PersistenceException { try { Integer customerId = new Integer(1); when(groupPersistence.getGroupByCustomerId(customerId)).thenThrow(new PersistenceException("some exception")); service.getGroup(customerId); junit.framework.Assert.fail("should fail because of invalid session"); } catch (ServiceException e) { } } @Test @ExpectedException(value = CustomerException.class) public void testInvalidConnectionInFindBySystemId() throws PersistenceException { try { String globalCustNo = "globalCustNo"; when(groupPersistence.findBySystemId(globalCustNo)).thenThrow(new PersistenceException("some exception")); service.findBySystemId(globalCustNo); junit.framework.Assert.fail("should fail because of invalid session"); } catch (ServiceException e) { } } @Test @ExpectedException(value = CustomerException.class) public void testInvalidConnectionInSearch() throws PersistenceException { try { String searchWord = "globalCustNo"; Short userId = new Short("1"); when(groupPersistence.search(searchWord, userId)).thenThrow(new PersistenceException("some exception")); service.search(searchWord, userId); junit.framework.Assert.fail("should fail because of invalid session"); } catch (ServiceException e) { } } }