@Override protected AffinityGroup postPopulate(AffinityGroup model) { // Derandomize dependent and fixed values model.setEnforcing(model.getVmsRule().isEnforcing()); model.setPositive(model.getVmsRule().isEnabled() ? model.getVmsRule().isPositive() : null); model.getHostsRule().setEnabled(true); return super.postPopulate(model); }
@Test public void testVmsRule() { AffinityGroup model = new AffinityGroup(); model.setEnforcing(true); model.setPositive(false); org.ovirt.engine.core.common.scheduling.AffinityGroup entity = new org.ovirt.engine.core.common.scheduling.AffinityGroup(); AffinityGroupMapper.map(model, entity); assertEquals(EntityAffinityRule.NEGATIVE, entity.getVmAffinityRule()); assertTrue(entity.isVmEnforcing()); assertTrue(entity.isVmAffinityEnabled()); }
@Test public void testVmsRuleNeg() { AffinityGroup model = new AffinityGroup(); model.setEnforcing(false); model.setPositive(true); org.ovirt.engine.core.common.scheduling.AffinityGroup entity = new org.ovirt.engine.core.common.scheduling.AffinityGroup(); AffinityGroupMapper.map(model, entity); assertEquals(EntityAffinityRule.POSITIVE, entity.getVmAffinityRule()); assertFalse(entity.isVmEnforcing()); assertTrue(entity.isVmAffinityEnabled()); }
model.setEnforcing(entity.isVmEnforcing());
static AffinityGroup getModel(int index) { AffinityGroup model = new AffinityGroup(); model.setId(GUIDS[0].toString()); model.setName(NAMES[index]); model.setDescription(DESCRIPTIONS[index]); model.setCluster(new Cluster()); model.getCluster().setId(CLUSTER_ID.toString()); model.setEnforcing((GUIDS[index].hashCode() & 1) == 0); model.setPositive((GUIDS[index].hashCode() & 1) == 1); return model; } }
to.setEnforcing(from.isEnforcing());
@Test public void testVmsRuleStructureWins() { AffinityGroup model = new AffinityGroup(); model.setEnforcing(false); model.setPositive(false); AffinityRule rule = new AffinityRule(); rule.setEnforcing(true); rule.setPositive(true); rule.setEnabled(true); model.setVmsRule(rule); org.ovirt.engine.core.common.scheduling.AffinityGroup entity = new org.ovirt.engine.core.common.scheduling.AffinityGroup(); AffinityGroupMapper.map(model, entity); assertEquals(EntityAffinityRule.POSITIVE, entity.getVmAffinityRule()); assertTrue(entity.isVmEnforcing()); assertTrue(entity.isVmAffinityEnabled()); }