package de.fhb.autobday.dao; import de.fhb.autobday.data.AbdAccount; import java.util.ArrayList; import java.util.List; import javax.persistence.EntityManager; import javax.persistence.TypedQuery; import javax.persistence.criteria.CriteriaBuilder; import javax.persistence.criteria.CriteriaQuery; import javax.persistence.criteria.Root; import static org.easymock.EasyMock.*; import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Ignore; import org.junit.Test; /** * Test of AbdAccountDAO * * @author Christoph Ott */ public class AbdAccountDAOTest { private static AbdAccountFacade accountDAOunderTest; private EntityManager emMock; private AbdAccount accountEntity; @BeforeClass public static void setUpBeforeClass() throws Exception { accountDAOunderTest = new AbdAccountFacade(); } @Before public void setUp() throws Exception { emMock = createMock(EntityManager.class); accountDAOunderTest.setEntityManager(emMock); accountEntity = new AbdAccount(11, "maja", "1234", "type"); } @Test public void testContains() { expect(emMock.contains(accountEntity)).andReturn(true); replay(emMock); assertEquals(true, accountDAOunderTest.contains(accountEntity)); verify(emMock); } @Test public void testRefresh() { emMock.refresh(accountEntity); replay(emMock); accountDAOunderTest.refresh(accountEntity); verify(emMock); } @Test public void testCreate() { emMock.persist(accountEntity); replay(emMock); accountDAOunderTest.create(accountEntity); verify(emMock); } @Test public void testEdit() { expect(emMock.merge(accountEntity)).andReturn(accountEntity); replay(emMock); accountDAOunderTest.edit(accountEntity); verify(emMock); } @Test public void testRemove() { expect(emMock.merge(accountEntity)).andReturn(accountEntity); emMock.remove(accountEntity); replay(emMock); accountDAOunderTest.remove(accountEntity); verify(emMock); } @Test public void testFind() { expect(emMock.find(AbdAccount.class, accountEntity.getId())).andReturn(accountEntity); replay(emMock); assertEquals(accountEntity, accountDAOunderTest.find(accountEntity.getId())); verify(emMock); } @Test @Ignore public void testFindAll() { CriteriaQuery criteriaQueryMock = createMock(CriteriaQuery.class); CriteriaBuilder criteriaBuilderMock = createMock(CriteriaBuilder.class); Root rootMock = createMock(Root.class); TypedQuery typedQueryMock = createMock(TypedQuery.class); List<AbdAccount> resultList = new ArrayList<AbdAccount>(); resultList.add(accountEntity); resultList.add(new AbdAccount(22)); expect(emMock.getCriteriaBuilder()).andReturn(criteriaBuilderMock); expect(criteriaBuilderMock.createQuery()).andReturn(criteriaQueryMock); expect(criteriaQueryMock.from(AbdAccount.class)).andReturn(rootMock); expect(criteriaQueryMock.select(rootMock)).andReturn(criteriaQueryMock); expect(emMock.createQuery(criteriaQueryMock)).andReturn(typedQueryMock); expect(typedQueryMock.getResultList()).andReturn(resultList); assertEquals(resultList, accountDAOunderTest.findAll()); replay(emMock); replay(criteriaBuilderMock); replay(criteriaQueryMock); replay(rootMock); replay(typedQueryMock); accountDAOunderTest.findAll(); verify(criteriaBuilderMock); verify(criteriaQueryMock); verify(rootMock); verify(typedQueryMock); verify(emMock); } @Test @Ignore public void testFindRange() { } @Test @Ignore public void testCount() { } }