protected List<String> getDefinitionKeys(List<DecisionRequirementsDefinition> definitions) { List<String> definitionKeys = new ArrayList<String>(); for (DecisionRequirementsDefinition definition : definitions) { definitionKeys.add(definition.getKey()); } return definitionKeys; }
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; }
@Test public void orderByDecisionRequirementsDefinitionKey() { List<DecisionRequirementsDefinition> decisionRequirementsDefinitions = repositoryService.createDecisionRequirementsDefinitionQuery() .orderByDecisionRequirementsDefinitionKey().asc().list(); assertThat(decisionRequirementsDefinitions.size(), is(4)); assertThat(decisionRequirementsDefinitions.get(0).getKey(), is("dish")); assertThat(decisionRequirementsDefinitions.get(1).getKey(), is("dish")); assertThat(decisionRequirementsDefinitions.get(2).getKey(), is("score")); assertThat(decisionRequirementsDefinitions.get(3).getKey(), is("xyz")); decisionRequirementsDefinitions = repositoryService.createDecisionRequirementsDefinitionQuery() .orderByDecisionRequirementsDefinitionKey().desc().list(); assertThat(decisionRequirementsDefinitions.get(0).getKey(), is("xyz")); assertThat(decisionRequirementsDefinitions.get(1).getKey(), is("score")); assertThat(decisionRequirementsDefinitions.get(2).getKey(), is("dish")); assertThat(decisionRequirementsDefinitions.get(3).getKey(), is("dish")); }
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 queryByDecisionRequirementsDefinitionKey() { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); assertThat(query.decisionRequirementsDefinitionKey("notExisting").count(), is(0L)); assertThat(query.decisionRequirementsDefinitionKey("score").count(), is(1L)); assertThat(query.singleResult().getKey(), is("score")); }
@Test public void queryByDecisionRequirementsDefinitionCategory() { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); assertThat(query.decisionRequirementsDefinitionCategory("notExisting").count(), is(0L)); assertThat(query.decisionRequirementsDefinitionCategory("test-drd-1").count(), is(1L)); assertThat(query.singleResult().getKey(), is("score")); }
protected void checkReadDecisionRequirementsDefinition(HistoricDecisionInstanceStatisticsQueryImpl query) { CommandContext commandContext = getCommandContext(); if (isAuthorizationEnabled() && getCurrentAuthentication() != null && commandContext.isAuthorizationCheckEnabled()) { String decisionRequirementsDefinitionId = query.getDecisionRequirementsDefinitionId(); DecisionRequirementsDefinition definition = getDecisionRequirementsDefinitionManager().findDecisionRequirementsDefinitionById(decisionRequirementsDefinitionId); ensureNotNull("no deployed decision requirements definition found with id '" + decisionRequirementsDefinitionId + "'", "decisionRequirementsDefinition", definition); getAuthorizationManager().checkAuthorization(READ, DECISION_REQUIREMENTS_DEFINITION, definition.getKey()); } }
protected void checkReadDecisionRequirementsDefinition(HistoricDecisionInstanceStatisticsQueryImpl query) { CommandContext commandContext = getCommandContext(); if (isAuthorizationEnabled() && getCurrentAuthentication() != null && commandContext.isAuthorizationCheckEnabled()) { String decisionRequirementsDefinitionId = query.getDecisionRequirementsDefinitionId(); DecisionRequirementsDefinition definition = getDecisionRequirementsDefinitionManager().findDecisionRequirementsDefinitionById(decisionRequirementsDefinitionId); ensureNotNull("no deployed decision requirements definition found with id '" + decisionRequirementsDefinitionId + "'", "decisionRequirementsDefinition", definition); getAuthorizationManager().checkAuthorization(READ, DECISION_REQUIREMENTS_DEFINITION, definition.getKey()); } }
@Test public void queryByDecisionRequirementsDefinitionName() { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); assertThat(query.decisionRequirementsDefinitionName("notExisting").count(), is(0L)); assertThat(query.decisionRequirementsDefinitionName("Score").count(), is(1L)); assertThat(query.singleResult().getKey(), is("score")); }
@Test public void queryByResourceName() { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); assertThat(query.decisionRequirementsDefinitionResourceName("notExisting").count(), is(0L)); assertThat(query.decisionRequirementsDefinitionResourceName(DRD_SCORE_RESOURCE).count(), is(1L)); assertThat(query.singleResult().getKey(), is("score")); }
@Test public void queryByDecisionRequirementsDefinitionId() { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); assertThat(query.decisionRequirementsDefinitionId("notExisting").count(), is(0L)); assertThat(query.decisionRequirementsDefinitionId(decisionRequirementsDefinitionId).count(), is(1L)); assertThat(query.singleResult().getKey(), is("score")); }
@Test public void queryByDecisionRequirementsDefinitionIds() { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); assertThat(query.decisionRequirementsDefinitionIdIn("not", "existing").count(), is(0L)); assertThat(query.decisionRequirementsDefinitionIdIn(decisionRequirementsDefinitionId, "notExisting").count(), is(1L)); assertThat(query.singleResult().getKey(), is("score")); }
@Deployment( resources = { DRD_SCORE_RESOURCE, DRD_DISH_RESOURCE }) @Test public void multipleDrdDeployment() { // there should be two decision requirements definitions List<DecisionRequirementsDefinition> decisionRequirementsDefinitions = repositoryService .createDecisionRequirementsDefinitionQuery() .orderByDecisionRequirementsDefinitionCategory() .asc() .list(); assertEquals(2, decisionRequirementsDefinitions.size()); assertEquals("score", decisionRequirementsDefinitions.get(0).getKey()); assertEquals("dish", decisionRequirementsDefinitions.get(1).getKey()); // the decisions should have a reference to the decision requirements definition List<DecisionDefinition> decisions = repositoryService.createDecisionDefinitionQuery().orderByDecisionDefinitionCategory().asc().list(); assertEquals(5, decisions.size()); assertEquals(decisionRequirementsDefinitions.get(0).getId(), decisions.get(0).getDecisionRequirementsDefinitionId()); assertEquals(decisionRequirementsDefinitions.get(0).getId(), decisions.get(1).getDecisionRequirementsDefinitionId()); assertEquals(decisionRequirementsDefinitions.get(1).getId(), decisions.get(2).getDecisionRequirementsDefinitionId()); assertEquals(decisionRequirementsDefinitions.get(1).getId(), decisions.get(3).getDecisionRequirementsDefinitionId()); assertEquals(decisionRequirementsDefinitions.get(1).getId(), decisions.get(4).getDecisionRequirementsDefinitionId()); }
@Deployment(resources = DRG_DMN) public void testDecisionInstancePropertiesOfDrdDecision() { 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.count(), is(3L)); HistoricDecisionInstance rootHistoricDecisionInstance = query.decisionDefinitionKey("dish-decision").singleResult(); HistoricDecisionInstance requiredHistoricDecisionInstance1 = query.decisionDefinitionKey("season").singleResult(); HistoricDecisionInstance requiredHistoricDecisionInstance2 = query.decisionDefinitionKey("guestCount").singleResult(); assertThat(rootHistoricDecisionInstance.getRootDecisionInstanceId(), is(nullValue())); assertThat(rootHistoricDecisionInstance.getDecisionRequirementsDefinitionId(), is(decisionRequirementsDefinition.getId())); assertThat(rootHistoricDecisionInstance.getDecisionRequirementsDefinitionKey(), is(decisionRequirementsDefinition.getKey())); assertThat(requiredHistoricDecisionInstance1.getRootDecisionInstanceId(), is(rootHistoricDecisionInstance.getId())); assertThat(requiredHistoricDecisionInstance1.getDecisionRequirementsDefinitionId(), is(decisionRequirementsDefinition.getId())); assertThat(requiredHistoricDecisionInstance1.getDecisionRequirementsDefinitionKey(), is(decisionRequirementsDefinition.getKey())); assertThat(requiredHistoricDecisionInstance2.getRootDecisionInstanceId(), is(rootHistoricDecisionInstance.getId())); assertThat(requiredHistoricDecisionInstance2.getDecisionRequirementsDefinitionId(), is(decisionRequirementsDefinition.getId())); assertThat(requiredHistoricDecisionInstance2.getDecisionRequirementsDefinitionKey(), is(decisionRequirementsDefinition.getKey())); }
protected List<String> getDefinitionKeys(List<DecisionRequirementsDefinition> definitions) { List<String> definitionKeys = new ArrayList<String>(); for (DecisionRequirementsDefinition definition : definitions) { definitionKeys.add(definition.getKey()); } return definitionKeys; }
@Test public void drdDeployment() { String deploymentId = testRule.deploy(DRD_SCORE_RESOURCE).getId(); // there should be one decision requirements definition DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); assertEquals(1, query.count()); DecisionRequirementsDefinition decisionRequirementsDefinition = query.singleResult(); assertTrue(decisionRequirementsDefinition.getId().startsWith("score:1:")); assertEquals("score", decisionRequirementsDefinition.getKey()); assertEquals("Score", decisionRequirementsDefinition.getName()); assertEquals("test-drd-1", decisionRequirementsDefinition.getCategory()); assertEquals(1, decisionRequirementsDefinition.getVersion()); assertEquals(DRD_SCORE_RESOURCE, decisionRequirementsDefinition.getResourceName()); assertEquals(deploymentId, decisionRequirementsDefinition.getDeploymentId()); assertNull(decisionRequirementsDefinition.getDiagramResourceName()); // both decisions should have a reference to the decision requirements definition List<DecisionDefinition> decisions = repositoryService.createDecisionDefinitionQuery().orderByDecisionDefinitionKey().asc().list(); assertEquals(2, decisions.size()); DecisionDefinition firstDecision = decisions.get(0); assertEquals("score-decision", firstDecision.getKey()); assertEquals(decisionRequirementsDefinition.getId(), firstDecision.getDecisionRequirementsDefinitionId()); assertEquals("score", firstDecision.getDecisionRequirementsDefinitionKey()); DecisionDefinition secondDecision = decisions.get(1); assertEquals("score-result", secondDecision.getKey()); assertEquals(decisionRequirementsDefinition.getId(), secondDecision.getDecisionRequirementsDefinitionId()); assertEquals("score", secondDecision.getDecisionRequirementsDefinitionKey()); }
@Test public void queryByDecisionRequirementsDefinitionCategory() { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); assertThat(query.decisionRequirementsDefinitionCategory("notExisting").count(), is(0L)); assertThat(query.decisionRequirementsDefinitionCategory("test-drd-1").count(), is(1L)); assertThat(query.singleResult().getKey(), is("score")); }
protected void checkReadDecisionRequirementsDefinition(HistoricDecisionInstanceStatisticsQueryImpl query) { CommandContext commandContext = getCommandContext(); if (isAuthorizationEnabled() && getCurrentAuthentication() != null && commandContext.isAuthorizationCheckEnabled()) { String decisionRequirementsDefinitionId = query.getDecisionRequirementsDefinitionId(); DecisionRequirementsDefinition definition = getDecisionRequirementsDefinitionManager().findDecisionRequirementsDefinitionById(decisionRequirementsDefinitionId); ensureNotNull("no deployed decision requirements definition found with id '" + decisionRequirementsDefinitionId + "'", "decisionRequirementsDefinition", definition); getAuthorizationManager().checkAuthorization(READ, DECISION_REQUIREMENTS_DEFINITION, definition.getKey()); } }
@Test public void queryByDecisionRequirementsDefinitionIds() { DecisionRequirementsDefinitionQuery query = repositoryService.createDecisionRequirementsDefinitionQuery(); assertThat(query.decisionRequirementsDefinitionIdIn("not", "existing").count(), is(0L)); assertThat(query.decisionRequirementsDefinitionIdIn(decisionRequirementsDefinitionId, "notExisting").count(), is(1L)); assertThat(query.singleResult().getKey(), is("score")); }