@Test public void testHostAffinityNegRestOutput() { org.ovirt.engine.core.common.scheduling.AffinityGroup entity = new org.ovirt.engine.core.common.scheduling.AffinityGroup(); entity.setId(Guid.Empty); entity.setClusterId(Guid.Empty); entity.setVdsEnforcing(true); entity.setVdsAffinityRule(EntityAffinityRule.NEGATIVE); AffinityGroup model = new AffinityGroup(); AffinityGroupMapper.map(entity, model); assertNotNull(model.getHostsRule()); assertEquals(true, model.getHostsRule().isEnabled()); assertEquals(false, model.getHostsRule().isPositive()); assertEquals(true, model.getHostsRule().isEnforcing()); }
@Test public void testHostAffinityRestOutput() { org.ovirt.engine.core.common.scheduling.AffinityGroup entity = new org.ovirt.engine.core.common.scheduling.AffinityGroup(); entity.setId(Guid.Empty); entity.setClusterId(Guid.Empty); entity.setVdsEnforcing(false); entity.setVdsAffinityRule(EntityAffinityRule.POSITIVE); AffinityGroup model = new AffinityGroup(); AffinityGroupMapper.map(entity, model); assertNotNull(model.getHostsRule()); assertEquals(true, model.getHostsRule().isEnabled()); assertEquals(true, model.getHostsRule().isPositive()); assertEquals(false, model.getHostsRule().isEnforcing()); }
@Test public void testHostAffinityDisabledRestOutput() { org.ovirt.engine.core.common.scheduling.AffinityGroup entity = new org.ovirt.engine.core.common.scheduling.AffinityGroup(); entity.setId(Guid.Empty); entity.setClusterId(Guid.Empty); entity.setVdsEnforcing(true); entity.setVdsAffinityRule(EntityAffinityRule.DISABLED); AffinityGroup model = new AffinityGroup(); AffinityGroupMapper.map(entity, model); assertNotNull(model.getHostsRule()); assertEquals(false, model.getHostsRule().isEnabled()); assertEquals(true, model.getHostsRule().isEnforcing()); }
AffinityRule hostsRule = model.getHostsRule(); if (hostsRule != null) { if (hostsRule.isSetEnabled() && !hostsRule.isEnabled()) {
@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); }
@Override protected void verify(AffinityGroup model, AffinityGroup transform) { assertNotNull(transform); assertEquals(model.getName(), transform.getName()); assertEquals(model.getId(), transform.getId()); assertEquals(model.getDescription(), transform.getDescription()); assertEquals(model.getCluster().getId(), transform.getCluster().getId()); assertEquals(model.isPositive(), transform.isPositive()); assertEquals(model.isEnforcing(), transform.isEnforcing()); assertNotNull(transform.getHostsRule()); assertEquals(model.getHostsRule().isEnabled(), transform.getHostsRule().isEnabled()); assertEquals(model.getHostsRule().isEnforcing(), transform.getHostsRule().isEnforcing()); assertEquals(model.getHostsRule().isPositive(), transform.getHostsRule().isPositive()); assertNotNull(transform.getVmsRule()); assertEquals(model.getVmsRule().isEnabled(), transform.getVmsRule().isEnabled()); assertEquals(model.getVmsRule().isEnforcing(), transform.getVmsRule().isEnforcing()); // The positive field is coupled with the enabled field internally. Disabled // group will always return false in the positive field. if (transform.getVmsRule().isEnabled()) { assertEquals(model.getVmsRule().isPositive(), transform.getVmsRule().isPositive()); } else { assertEquals(false, transform.getVmsRule().isPositive()); } }
model.setEnforcing(entity.isVmEnforcing()); AffinityRule hostsRule = model.getHostsRule(); if (hostsRule == null) { hostsRule = new AffinityRule();