/** * */ package org.ovirt.engine.core.dao; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import java.util.Arrays; import org.apache.commons.lang.NotImplementedException; import org.junit.Test; import org.ovirt.engine.core.common.businessentities.VmStatic; import org.ovirt.engine.core.common.businessentities.VmStatistics; import org.ovirt.engine.core.compat.Guid; /** * */ public class VmStatisticsDAOTest extends BaseDAOTestCase { private static final Guid VDS_GROUP_ID = new Guid("b399944a-81ab-4ec5-8266-e19ba7c3c9d1"); private static final Guid EXISTING_VM_ID = new Guid("77296e00-0cad-4e5a-9299-008a7b6f4355"); private VmStaticDAO vmStaticDao; private VmStatisticsDAO dao; private VmStatic newVmStatic; private VmStatistics newVmStatistics; @Override public void setUp() throws Exception { super.setUp(); vmStaticDao = dbFacade.getVmStaticDAO(); dao = dbFacade.getVmStatisticsDAO(); newVmStatic = vmStaticDao.get(new Guid("77296e00-0cad-4e5a-9299-008a7b6f5001")); newVmStatistics = new VmStatistics(); } @Test public void testGet() { VmStatistics result = dao.get(EXISTING_VM_ID); assertNotNull(result); assertEquals(EXISTING_VM_ID, result.getId()); } @Test public void testGetNonExistingId() { VmStatistics result = dao.get(Guid.NewGuid()); assertNull(result); } @Test public void testSave() { newVmStatistics.setId(newVmStatic.getId()); dao.save(newVmStatistics); VmStatistics stats = dao.get(newVmStatic.getId()); assertNotNull(stats); assertEquals(newVmStatistics, stats); } @Test(expected = org.springframework.dao.DataIntegrityViolationException.class) public void testSaveStaticDoesNotExist() { Guid newGuid = Guid.NewGuid(); newVmStatistics.setId(newGuid); dao.save(newVmStatistics); VmStatistics stats = dao.get(newGuid); assertNull(stats); } @Test public void testUpdateStatistics() { VmStatistics before = dao.get(EXISTING_VM_ID); before.setusage_mem_percent(17); before.setDisksUsage("java.util.map { [ ] }"); dao.update(before); VmStatistics after = dao.get(EXISTING_VM_ID); assertEquals(before, after); } @Test public void testRemoveStatistics() { VmStatistics before = dao.get(EXISTING_VM_ID); // make sure we're using a real example assertNotNull(before); dao.remove(EXISTING_VM_ID); VmStatistics after = dao.get(EXISTING_VM_ID); assertNull(after); } @Test(expected = NotImplementedException.class) public void testGetAll() { dao.getAll(); } @Test public void testUpdateAll() throws Exception { VmStatistics existingVm = dao.get(EXISTING_VM_ID); VmStatistics existingVm2 = dao.get(Guid.createGuidFromString("77296e00-0cad-4e5a-9299-008a7b6f4356")); existingVm.setcpu_sys(50.0); existingVm2.setcpu_user(50.0); dao.updateAll(Arrays.asList(new VmStatistics[] { existingVm, existingVm2 })); assertEquals(existingVm, dao.get(existingVm.getId())); assertEquals(existingVm2, dao.get(existingVm2.getId())); } }