public DecisionRequirementsDefinition build() { DecisionRequirementsDefinition mockDefinition = mock(DecisionRequirementsDefinition.class); when(mockDefinition.getId()).thenReturn(id); when(mockDefinition.getCategory()).thenReturn(category); when(mockDefinition.getName()).thenReturn(name); when(mockDefinition.getKey()).thenReturn(key); when(mockDefinition.getVersion()).thenReturn(version); when(mockDefinition.getResourceName()).thenReturn(resource); when(mockDefinition.getDiagramResourceName()).thenReturn(diagramResource); when(mockDefinition.getDeploymentId()).thenReturn(deploymentId); when(mockDefinition.getTenantId()).thenReturn(tenantId); return mockDefinition; }
@Override public DecisionRequirementsDefinitionResource getDecisionRequirementsDefinitionByKey(String decisionRequirementsDefinitionKey) { DecisionRequirementsDefinition decisionRequirementsDefinition = getProcessEngine().getRepositoryService() .createDecisionRequirementsDefinitionQuery() .decisionRequirementsDefinitionKey(decisionRequirementsDefinitionKey) .withoutTenantId().latestVersion().singleResult(); if (decisionRequirementsDefinition == null) { String errorMessage = String.format("No matching decision requirements definition with key: %s and no tenant-id", decisionRequirementsDefinitionKey); throw new RestException(Status.NOT_FOUND, errorMessage); } else { return getDecisionRequirementsDefinitionById(decisionRequirementsDefinition.getId()); } }
@Override public DecisionRequirementsDefinitionResource getDecisionRequirementsDefinitionByKey(String decisionRequirementsDefinitionKey) { DecisionRequirementsDefinition decisionRequirementsDefinition = getProcessEngine().getRepositoryService() .createDecisionRequirementsDefinitionQuery() .decisionRequirementsDefinitionKey(decisionRequirementsDefinitionKey) .withoutTenantId().latestVersion().singleResult(); if (decisionRequirementsDefinition == null) { String errorMessage = String.format("No matching decision requirements definition with key: %s and no tenant-id", decisionRequirementsDefinitionKey); throw new RestException(Status.NOT_FOUND, errorMessage); } else { return getDecisionRequirementsDefinitionById(decisionRequirementsDefinition.getId()); } }
@Override public DecisionRequirementsDefinitionResource getDecisionRequirementsDefinitionByKeyAndTenantId(String decisionRequirementsDefinitionKey, String tenantId) { DecisionRequirementsDefinition decisionRequirementsDefinition = getProcessEngine().getRepositoryService() .createDecisionRequirementsDefinitionQuery() .decisionRequirementsDefinitionKey(decisionRequirementsDefinitionKey) .tenantIdIn(tenantId).latestVersion().singleResult(); if (decisionRequirementsDefinition == null) { String errorMessage = String.format("No matching decision requirements definition with key: %s and tenant-id: %s", decisionRequirementsDefinitionKey, tenantId); throw new RestException(Status.NOT_FOUND, errorMessage); } else { return getDecisionRequirementsDefinitionById(decisionRequirementsDefinition.getId()); } }
@Deployment(resources = { "org/camunda/bpm/engine/test/repository/drg.dmn" }) public void testGetDecisionRequirementsDefinition() { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); DecisionRequirementsDefinition decisionRequirementsDefinition = query.singleResult(); String decisionRequirementsDefinitionId = decisionRequirementsDefinition.getId(); DecisionRequirementsDefinition definition = repositoryService.getDecisionRequirementsDefinition(decisionRequirementsDefinitionId); assertNotNull(definition); assertEquals(decisionRequirementsDefinitionId, definition.getId()); }
public static DecisionRequirementsDefinitionDto fromDecisionRequirementsDefinition(DecisionRequirementsDefinition definition) { DecisionRequirementsDefinitionDto dto = new DecisionRequirementsDefinitionDto(); dto.id = definition.getId(); dto.key = definition.getKey(); dto.category = definition.getCategory(); dto.name = definition.getName(); dto.version = definition.getVersion(); dto.resource = definition.getResourceName(); dto.deploymentId = definition.getDeploymentId(); dto.tenantId = definition.getTenantId(); return dto; }
public static DecisionRequirementsDefinitionDto fromDecisionRequirementsDefinition(DecisionRequirementsDefinition definition) { DecisionRequirementsDefinitionDto dto = new DecisionRequirementsDefinitionDto(); dto.id = definition.getId(); dto.key = definition.getKey(); dto.category = definition.getCategory(); dto.name = definition.getName(); dto.version = definition.getVersion(); dto.resource = definition.getResourceName(); dto.deploymentId = definition.getDeploymentId(); dto.tenantId = definition.getTenantId(); return dto; }
@Test public void testStatisticForNotEvaluatedDRD() throws Exception { //when DecisionRequirementsDefinition decisionRequirementsDefinition = repositoryService.createDecisionRequirementsDefinitionQuery().singleResult(); HistoricDecisionInstanceStatisticsQuery statisticsQuery = historyService.createHistoricDecisionInstanceStatisticsQuery( decisionRequirementsDefinition.getId()); //then assertThat("available statistics count", statisticsQuery.count(), is(0L)); assertThat("available statistics elements", statisticsQuery.list().size(), is(0)); } }
@Test public void testQueryAuthenticatedTenant() { DecisionRequirementsDefinition decisionRequirementsDefinition = repositoryService.createDecisionRequirementsDefinitionQuery() .singleResult(); identityService.setAuthentication(USER_ID, null, Arrays.asList(TENANT_ONE)); HistoricDecisionInstanceStatisticsQuery query = historyService. createHistoricDecisionInstanceStatisticsQuery(decisionRequirementsDefinition.getId()); assertThat(query.count(), is(3L)); }
@Test public void testQueryAuthenticatedTenant() { DecisionRequirementsDefinition decisionRequirementsDefinition = repositoryService.createDecisionRequirementsDefinitionQuery() .tenantIdIn(TENANT_ONE) .singleResult(); identityService.setAuthentication(USER_ID, null, Arrays.asList(TENANT_ONE)); HistoricDecisionInstanceStatisticsQuery query = historyService. createHistoricDecisionInstanceStatisticsQuery(decisionRequirementsDefinition.getId()); assertThat(query.count(), is(3L)); }
@Test public void queryByDecisionRequirementsDefinitionId() { testRule.deploy(DRD_DISH_RESOURCE, DRD_SCORE_RESOURCE); List<DecisionRequirementsDefinition> drds = repositoryService.createDecisionRequirementsDefinitionQuery() .orderByDecisionRequirementsDefinitionName().asc().list(); String dishDrdId = drds.get(0).getId(); String scoreDrdId = drds.get(1).getId(); DecisionDefinitionQuery query = repositoryService.createDecisionDefinitionQuery(); verifyQueryResults(query.decisionRequirementsDefinitionId("non existing"), 0); verifyQueryResults(query.decisionRequirementsDefinitionId(dishDrdId), 3); verifyQueryResults(query.decisionRequirementsDefinitionId(scoreDrdId), 2); }
@Deployment(resources = { "org/camunda/bpm/engine/test/repository/drg.dmn" }) public void testGetDecisionRequirementsModel() throws Exception { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); DecisionRequirementsDefinition decisionRequirementsDefinition = query.singleResult(); String decisionRequirementsDefinitionId = decisionRequirementsDefinition.getId(); InputStream decisionRequirementsModel = repositoryService.getDecisionRequirementsModel(decisionRequirementsDefinitionId); assertNotNull(decisionRequirementsModel); byte[] readInputStream = IoUtil.readInputStream(decisionRequirementsModel, "decisionRequirementsModel"); String model = new String(readInputStream, "UTF-8"); assertTrue(model.contains("<definitions id=\"dish\" name=\"Dish\" namespace=\"test-drg\"")); IoUtil.closeSilently(decisionRequirementsModel); }
@Deployment(resources = { "org/camunda/bpm/engine/test/repository/drg.dmn", "org/camunda/bpm/engine/test/repository/drg.png" }) public void testGetDecisionRequirementsDiagram() throws Exception { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); DecisionRequirementsDefinition decisionRequirementsDefinition = query.singleResult(); String decisionRequirementsDefinitionId = decisionRequirementsDefinition.getId(); InputStream actualDrd = repositoryService.getDecisionRequirementsDiagram(decisionRequirementsDefinitionId); assertNotNull(actualDrd); }
@Test public void testQueryNoAuthenticatedTenants() { DecisionRequirementsDefinition decisionRequirementsDefinition = repositoryService.createDecisionRequirementsDefinitionQuery() .singleResult(); identityService.setAuthentication(USER_ID, null, null); HistoricDecisionInstanceStatisticsQuery query = historyService. createHistoricDecisionInstanceStatisticsQuery(decisionRequirementsDefinition.getId()); assertThat(query.count(), is(0L)); }
@Test public void testQueryNoAuthenticatedTenants() { DecisionRequirementsDefinition decisionRequirementsDefinition = repositoryService.createDecisionRequirementsDefinitionQuery() .tenantIdIn(TENANT_ONE) .singleResult(); identityService.setAuthentication(USER_ID, null, null); HistoricDecisionInstanceStatisticsQuery query = historyService. createHistoricDecisionInstanceStatisticsQuery(decisionRequirementsDefinition.getId()); assertThat(query.count(), is(0L)); }
@Test public void testQueryDisabledTenantCheck() { DecisionRequirementsDefinition decisionRequirementsDefinition = repositoryService.createDecisionRequirementsDefinitionQuery() .singleResult(); engineRule.getProcessEngineConfiguration().setTenantCheckEnabled(false); identityService.setAuthentication(USER_ID, null, null); HistoricDecisionInstanceStatisticsQuery query = historyService. createHistoricDecisionInstanceStatisticsQuery(decisionRequirementsDefinition.getId()); assertThat(query.count(), is(3L)); } }
@Before public void setUp() { processEngineConfiguration = engineRule.getProcessEngineConfiguration(); repositoryService = engineRule.getRepositoryService(); identityService = engineRule.getIdentityService(); testRule.deployForTenant(TENANT_ONE, DRG_DMN, DRD_DMN); decisionRequirementsDefinitionId = repositoryService.createDecisionRequirementsDefinitionQuery() .singleResult().getId(); }
@Test public void testQueryDisabledTenantCheck() { DecisionRequirementsDefinition decisionRequirementsDefinition = repositoryService.createDecisionRequirementsDefinitionQuery() .tenantIdIn(TENANT_ONE) .singleResult(); engineRule.getProcessEngineConfiguration().setTenantCheckEnabled(false); identityService.setAuthentication(USER_ID, null, null); HistoricDecisionInstanceStatisticsQuery query = historyService. createHistoricDecisionInstanceStatisticsQuery(decisionRequirementsDefinition.getId()); assertThat(query.count(), is(3L)); }
@Deployment(resources = { DRG_DMN }) public void testQueryByDecisionRequirementsDefinitionId() { decisionService.evaluateDecisionTableByKey(DISH_DECISION) .variables(Variables.createVariables().putValue("temperature", 21).putValue("dayType", "Weekend")) .evaluate(); DecisionRequirementsDefinition decisionRequirementsDefinition = repositoryService.createDecisionRequirementsDefinitionQuery().singleResult(); HistoricDecisionInstanceQuery query = historyService.createHistoricDecisionInstanceQuery(); assertThat(query.decisionRequirementsDefinitionId("notExisting").count(), is(0L)); assertThat(query.decisionRequirementsDefinitionId(decisionRequirementsDefinition.getId()).count(), is(3L)); }
@Before public void init() { repositoryService = engineRule.getRepositoryService(); firstDeploymentId = testRule.deploy(DRD_DISH_RESOURCE, DRD_SCORE_RESOURCE).getId(); secondDeploymentId = testRule.deploy(DRD_DISH_RESOURCE).getId(); thirdDeploymentId = testRule.deploy(DRD_XYZ_RESOURCE).getId(); decisionRequirementsDefinitionId = repositoryService .createDecisionRequirementsDefinitionQuery() .decisionRequirementsDefinitionKey("score") .singleResult() .getId(); }