package org.ovirt.engine.core.dao.gluster; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import java.util.ArrayList; import org.junit.Test; import org.ovirt.engine.core.common.businessentities.gluster.GlusterServer; import org.ovirt.engine.core.common.businessentities.gluster.PeerStatus; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dao.BaseDaoTestCase; import org.ovirt.engine.core.dao.FixturesTool; public class GlusterServerDaoTest extends BaseDaoTestCase { private static final Guid SERVER_ID1 = new Guid("23f6d691-5dfb-472b-86dc-9e1d2d3c18f3"); private static final Guid SERVER_ID2 = new Guid("2001751e-549b-4e7a-aff6-32d36856c125"); private GlusterServerDao dao; @Override public void setUp() throws Exception { super.setUp(); dao = dbFacade.getGlusterServerDao(); } @Test public void testSave() { GlusterServer newEntity = new GlusterServer(); newEntity.setId(SERVER_ID2); newEntity.setGlusterServerUuid(FixturesTool.GLUSTER_SERVER_UUID2); newEntity.setPeerStatus(PeerStatus.CONNECTED); dao.save(newEntity); GlusterServer entity = dao.getByServerId(newEntity.getId()); assertEquals(newEntity, entity); } @Test public void testGetById() { GlusterServer entity = dao.getByServerId(SERVER_ID1); assertNotNull(entity); assertEquals(SERVER_ID1, entity.getId()); assertEquals(FixturesTool.GLUSTER_SERVER_UUID1, entity.getGlusterServerUuid()); } @Test public void testGetByGlusterServerUuid() { GlusterServer entity = dao.getByGlusterServerUuid(FixturesTool.GLUSTER_SERVER_UUID1); assertNotNull(entity); assertEquals(SERVER_ID1, entity.getId()); assertEquals(FixturesTool.GLUSTER_SERVER_UUID1, entity.getGlusterServerUuid()); } @Test public void testRemove() { dao.remove(SERVER_ID1); GlusterServer entity = dao.getByServerId(SERVER_ID1); assertNull(entity); } @Test public void testRemoveByGlusterServerUuid() { dao.removeByGlusterServerUuid(FixturesTool.GLUSTER_SERVER_UUID1); GlusterServer entity = dao.getByGlusterServerUuid(FixturesTool.GLUSTER_SERVER_UUID1); assertNull(entity); } @Test public void testUpdateGlusterServerUuid() { GlusterServer entityToUpdate = new GlusterServer(SERVER_ID1, FixturesTool.GLUSTER_SERVER_UUID_NEW); dao.update(entityToUpdate); GlusterServer entity = dao.getByServerId(SERVER_ID1); assertNotNull(entity); assertEquals(FixturesTool.GLUSTER_SERVER_UUID_NEW, entity.getGlusterServerUuid()); } @Test public void testAddKnownAddresses() { GlusterServer entityToUpdate = new GlusterServer(SERVER_ID1, FixturesTool.GLUSTER_SERVER_UUID_NEW); dao.update(entityToUpdate); dao.addKnownAddress(SERVER_ID1, "a.1"); GlusterServer entity = dao.getByServerId(SERVER_ID1); assertNotNull(entity); assertEquals(1, entity.getKnownAddresses().size()); assertEquals("a.1", entity.getKnownAddresses().get(0)); dao.addKnownAddress(SERVER_ID1, "a.2"); entity = dao.getByServerId(SERVER_ID1); assertNotNull(entity); assertEquals(2, entity.getKnownAddresses().size()); assertEquals("a.2", entity.getKnownAddresses().get(1)); } @Test public void testUpdateKnownAddresses() { GlusterServer entityToUpdate = new GlusterServer(SERVER_ID1, FixturesTool.GLUSTER_SERVER_UUID_NEW); dao.update(entityToUpdate); dao.addKnownAddress(SERVER_ID1, "a.1"); GlusterServer entity = dao.getByServerId(SERVER_ID1); assertNotNull(entity); assertEquals(1, entity.getKnownAddresses().size()); assertEquals("a.1", entity.getKnownAddresses().get(0)); ArrayList<String> knownAddresses = new ArrayList<>(); knownAddresses.add("a.2"); dao.updateKnownAddresses(SERVER_ID1, knownAddresses); entity = dao.getByServerId(SERVER_ID1); assertNotNull(entity); assertEquals(1, entity.getKnownAddresses().size()); assertEquals("a.2", entity.getKnownAddresses().get(0)); } }