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.LinkedHashMap; import java.util.List; import java.util.Map; import org.junit.Test; import org.ovirt.engine.core.common.scheduling.PolicyUnit; import org.ovirt.engine.core.common.scheduling.PolicyUnitType; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dao.scheduling.PolicyUnitDao; public class PolicyUnitDaoTest extends BaseDaoTestCase { private static final int NUMBER_OF_POLICY_UNITS = 2; PolicyUnitDao dao; PolicyUnit existingPolicyUnit; PolicyUnit dummyPolicyUnit; @Override public void setUp() throws Exception { super.setUp(); dao = dbFacade.getPolicyUnitDao(); existingPolicyUnit = dao.get(FixturesTool.POLICY_UNIT_MIGRATION); createDummyPolicyUnit(); } @Test public void testGet() { PolicyUnit result = dao.get(FixturesTool.POLICY_UNIT_MIGRATION); assertEquals(result, existingPolicyUnit); } @Test public void testGetNegative() { PolicyUnit result = dao.get(Guid.newGuid()); assertNull(result); } @Test public void testGetAll() { List<PolicyUnit> result = dao.getAll(); assertNotNull(result); assertEquals(NUMBER_OF_POLICY_UNITS, result.size()); } private void createDummyPolicyUnit() { dummyPolicyUnit = new PolicyUnit(); dummyPolicyUnit.setId(Guid.newGuid()); dummyPolicyUnit.setName("Dummy policy unit"); dummyPolicyUnit.setDescription("Description"); dummyPolicyUnit.setPolicyUnitType(PolicyUnitType.FILTER); dummyPolicyUnit.setParameterRegExMap(new LinkedHashMap<>()); } @Test public void testSave() { dao.save(dummyPolicyUnit); PolicyUnit result = dao.get(dummyPolicyUnit.getId()); assertEquals(result, dummyPolicyUnit); } @Test public void testUpdate() { PolicyUnit policyUnitToUpdate = dao.get(FixturesTool.POLICY_UNIT_MIGRATION); Map<String, String> map = new LinkedHashMap<>(); map.put("A", "B"); policyUnitToUpdate.setParameterRegExMap(map); policyUnitToUpdate.setDescription("dummy description"); dao.update(policyUnitToUpdate); PolicyUnit result = dao.get(policyUnitToUpdate.getId()); assertEquals(result, policyUnitToUpdate); } }