protected StepSubjectEntity createSubjectEntity() { return new StepSubjectEntity(); }
private MapSqlParameterMapper<StepSubjectEntity> getMapper() { return (StepSubjectEntity stepSubjectEntity) -> getCustomMapSqlParameterSource() .addValue("step_id", stepSubjectEntity.getStepId()) .addValue("entity_id", stepSubjectEntity.getEntityId()) .addValue("step_entity_weight", stepSubjectEntity.getStepEntityWeight()) .addValue("entity_type", EnumUtils.nameOrNull(stepSubjectEntity.getEntityType())); }
private void assertSubjectEntityPresence(StepSubjectEntity stepSubjectEntity, List<StepSubjectEntity> entities, boolean shouldBePresent) { boolean isPresent = entities.stream().anyMatch(p -> p.equals(stepSubjectEntity) && p.getStepEntityWeight().equals(stepSubjectEntity.getStepEntityWeight())); assertEquals(shouldBePresent, isPresent, "StepSubjectEntity was " + (shouldBePresent ? "not " : "") + "found in the entities list although wasn't expected to"); }
@Override public StepSubjectEntity mapRow(ResultSet rs, int rowNum) throws SQLException { StepSubjectEntity stepSubjectEntity = super.mapRow(rs, rowNum); stepSubjectEntity.setStepEntityWeight(getInteger(rs, "step_entity_weight")); stepSubjectEntity.setStepId(getGuid(rs, "step_id")); return stepSubjectEntity; }
@Test public void remove() { List<StepSubjectEntity> entities = dao.getStepSubjectEntitiesByStepId(FixturesTool.STEP_ID); assertEquals(2, entities.size(), "StepSubjectEntity list not in the expected size"); assertNotEquals(entities.get(0), entities.get(1), "StepSubjectEntity list elements should be different"); StepSubjectEntity toRemove = entities.remove(0); dao.remove(toRemove.getEntityId(), toRemove.getStepId()); entities = dao.getStepSubjectEntitiesByStepId(FixturesTool.STEP_ID); assertEquals(1, entities.size(), "StepSubjectEntity list not in the expected size"); assertSubjectEntityPresence(toRemove, entities, false); } }
@Test public void startedStepsByStepSubjectEntityNoStepsHaveStep() { StepSubjectEntity subjectEntity = prepareStartedStepsByStepSubjectEntityTest(); List<Step> steps = dao.getStartedStepsByStepSubjectEntity(subjectEntity); assertEquals(1, steps.size()); assertEquals(subjectEntity.getStepId(), steps.get(0).getId()); }
@Test public void startedStepsByStepSubjectEntityOtherEntityTYpe() { StepSubjectEntity subjectEntity = prepareStartedStepsByStepSubjectEntityTest(); subjectEntity.setEntityType(VdcObjectType.AdElements); assertNoStartedStepsForSubjectEntity(subjectEntity); }
@Test public void startedStepsByStepSubjectEntityOtherId() { StepSubjectEntity subjectEntity = prepareStartedStepsByStepSubjectEntityTest(); subjectEntity.setEntityId(Guid.Empty); assertNoStartedStepsForSubjectEntity(subjectEntity); }
private void prepareProgressTest(Guid entityId) { VdcObjectType type = VdcObjectType.Disk; BaseDisk diskImage = diskDao.get(entityId); assertProgress(null, diskImage); subjectEntityDao.saveAll(Arrays.asList(new StepSubjectEntity(FixturesTool.STEP_ID, type, entityId, 30), new StepSubjectEntity(FixturesTool.STEP_ID_2, type, entityId, 50))); }
@Test public void getStepSubjectEntityByStepId() { List<StepSubjectEntity> entities = dao.getStepSubjectEntitiesByStepId(FixturesTool.STEP_ID); assertEquals(2, entities.size(), "StepSubjectEntity list not in the expected size"); StepSubjectEntity stepSubjectEntity = new StepSubjectEntity(FixturesTool.STEP_ID, VdcObjectType.Storage, FixturesTool.IMAGE_GROUP_ID, 50); assertSubjectEntityPresence(stepSubjectEntity, entities, true); }
@Test public void saveStepSubjectEntities() { VdcObjectType type = VdcObjectType.VmPool; Guid entityId = Guid.newGuid(); StepSubjectEntity stepSubjectEntity = new StepSubjectEntity(FixturesTool.STEP_ID, type, entityId, 50); Guid entityId2 = Guid.newGuid(); StepSubjectEntity stepSubjectEntity2 = new StepSubjectEntity(FixturesTool.STEP_ID, type, entityId2, 50); dao.saveAll(Arrays.asList(stepSubjectEntity, stepSubjectEntity2)); List<StepSubjectEntity> entities = dao.getStepSubjectEntitiesByStepId(FixturesTool.STEP_ID); assertEquals(4, entities.size(), "StepSubjectEntity list not in the expected size"); assertSubjectEntityPresence(stepSubjectEntity, entities, true); assertSubjectEntityPresence(stepSubjectEntity2, entities, true); }
private StepSubjectEntity prepareStartedStepsByStepSubjectEntityTest() { Guid entityId = Guid.newGuid(); VdcObjectType entityType = VdcObjectType.EXECUTION_HOST; StepSubjectEntity subjectEntity = new StepSubjectEntity(FixturesTool.STEP_ID, entityType, entityId); subjectEntityDao.saveAll(Arrays.asList(subjectEntity)); Step s = dao.get(FixturesTool.STEP_ID); s.setStatus(JobExecutionStatus.STARTED); dao.update(s); return subjectEntity; }
@Test public void testSubjectEntities() { org.ovirt.engine.core.common.job.Step bllStep = createBLLStep(); Guid executionHostId = Guid.newGuid(); bllStep.setSubjectEntities( Arrays.asList(new StepSubjectEntity(bllStep.getId(), VdcObjectType.EXECUTION_HOST, executionHostId), new StepSubjectEntity(bllStep.getId(), VdcObjectType.Disk, Guid.Empty))); Step model = StepMapper.map(bllStep, null); assertNotNull(model.getExecutionHost()); assertEquals(executionHostId.toString(), model.getExecutionHost().getId()); bllStep = StepMapper.map(model, null); assertNull(bllStep.getSubjectEntities(), "subject entities shouldn't be mapped back to the model"); }