Skip to content

Commit b5f3ed5

Browse files
Fix the unit test
1 parent 1a6de79 commit b5f3ed5

File tree

19 files changed

+317
-377
lines changed

19 files changed

+317
-377
lines changed

default.ps1

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ task pack -depends compile {
4444
exec { dotnet pack $source_dir\CaseManagement.CMMN\CaseManagement.CMMN.csproj -c $config --no-build $versionSuffix --output $result_dir }
4545
exec { dotnet pack $source_dir\CaseManagement.CMMN.AspNetCore\CaseManagement.CMMN.AspNetCore.csproj -c $config --no-build $versionSuffix --output $result_dir }
4646
exec { dotnet pack $source_dir\CaseManagement.CMMN.AspNet\CaseManagement.CMMN.AspNet.csproj -c $config --no-build $versionSuffix --output $result_dir }
47+
exec { dotnet pack $source_dir\CaseManagement.Gateway.Website\CaseManagement.Gateway.Website.csproj -c $config --no-build $versionSuffix --output $result_dir }
48+
exec { dotnet pack $source_dir\CaseManagement.Gateway.Website.AspNetCore\CaseManagement.Gateway.Website.AspNetCore.csproj -c $config --no-build $versionSuffix --output $result_dir }
4749
}
4850

4951
task test {

src/CaseManagement.CMMN/CasePlanInstance/Processors/Listeners/CriteriaListener.cs

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using CaseManagement.CMMN.CasePlanInstance.Exceptions;
22
using CaseManagement.CMMN.Domains;
33
using CaseManagement.CMMN.Domains.Events;
4+
using System;
45
using System.Collections.Generic;
56
using System.Linq;
67
using System.Threading;
@@ -32,17 +33,33 @@ public ListenEntryCriteriaResult(Task task, CriterionListener listener)
3233
public static void ListenEntryCriterias(ProcessorParameter parameter, CancellationToken cancellationToken)
3334
{
3435
var planItemDefinition = parameter.CaseDefinition.GetElement(parameter.CaseElementInstance.CasePlanElementId);
35-
var entryCriterion = planItemDefinition.EntryCriterions.ToList();
36-
if (!entryCriterion.Any())
36+
var entryCriterion = planItemDefinition.EntryCriterions;
37+
var casePlanElementType = parameter.CaseElementInstance.CasePlanElementType;
38+
if (!entryCriterion.Any() || entryCriterion.Any(c => parameter.CaseInstance.IsCriteriaSatisfied(c, parameter.CaseElementInstance.Version)))
3739
{
3840
return;
3941
}
4042

41-
if (entryCriterion.Any(c => parameter.CaseInstance.IsCriteriaSatisfied(c, parameter.CaseElementInstance.Version)))
43+
if (!parameter.CaseElementInstance.IsTaskOrStage() && casePlanElementType != CaseElementTypes.Milestone)
4244
{
4345
return;
4446
}
4547

48+
if (casePlanElementType == CaseElementTypes.Milestone)
49+
{
50+
if (parameter.CaseElementInstance.State != Enum.GetName(typeof(MilestoneStates), MilestoneStates.Available))
51+
{
52+
return;
53+
}
54+
}
55+
else
56+
{
57+
if (parameter.CaseElementInstance.State != Enum.GetName(typeof(TaskStates), TaskStates.Available))
58+
{
59+
return;
60+
}
61+
}
62+
4663
var criterionListener = new CriterionListener(parameter, cancellationToken, entryCriterion);
4764
criterionListener.Listen();
4865
}

src/CaseManagement.CMMN/CasePlanInstance/Processors/ProcessorParameter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public ProcessorParameter(CasePlanAggregate caseDefinition, Domains.CasePlanInst
1212
}
1313

1414
public CasePlanAggregate CaseDefinition { get; set; }
15-
public Domains.CasePlanInstanceAggregate CaseInstance { get; set; }
15+
public CasePlanInstanceAggregate CaseInstance { get; set; }
1616
public CaseElementInstance CaseElementInstance { get; set; }
1717
}
1818
}

src/CaseManagement.CMMN/Domains/CasePlanInstance/CasePlanInstanceAggregate.cs

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -131,13 +131,24 @@ public bool IsRepetitionRuleSatisfied(string planItemId, CasePlanAggregate workf
131131

132132
public bool IsManualActivationRuleSatisfied(string id, CasePlanAggregate workflowDefinition)
133133
{
134-
var planItemDef = GetWorkflowElementDefinition(id, workflowDefinition);
135-
if (planItemDef == null || planItemDef.ActivationRule != ActivationRuleTypes.ManualActivation || planItemDef.ManualActivationRule == null)
134+
var casePlanElementInstance = GetWorkflowElementInstance(id);
135+
var casePlanElement = GetWorkflowElementDefinition(id, workflowDefinition);
136+
if (!casePlanElementInstance.IsTaskOrStage())
136137
{
137138
return false;
138139
}
139140

140-
if (planItemDef.ManualActivationRule.Expression != null && !ExpressionParser.IsValid(planItemDef.ManualActivationRule.Expression.Body, this))
141+
if (casePlanElementInstance.State != Enum.GetName(typeof(TaskStates), TaskStates.Available))
142+
{
143+
return false;
144+
}
145+
146+
if (casePlanElement == null || casePlanElement.ActivationRule != ActivationRuleTypes.ManualActivation || casePlanElement.ManualActivationRule == null)
147+
{
148+
return false;
149+
}
150+
151+
if (casePlanElement.ManualActivationRule.Expression != null && !ExpressionParser.IsValid(casePlanElement.ManualActivationRule.Expression.Body, this))
141152
{
142153
return false;
143154
}
@@ -357,7 +368,7 @@ public void MakeTransitionStart(string elementId)
357368
return;
358369
}
359370

360-
if (!elt.IsTaskOrStage() && elt.State != Enum.GetName(typeof(TaskStates), TaskStates.Available))
371+
if (!elt.IsTaskOrStage() || elt.State != Enum.GetName(typeof(TaskStates), TaskStates.Available))
361372
{
362373
return;
363374
}

src/CaseManagement.MessageBroker/CaseManagement.MessageBroker.csproj

Lines changed: 0 additions & 9 deletions
This file was deleted.

src/CaseManagement.MessageBroker/IMessageBroker.cs

Lines changed: 0 additions & 12 deletions
This file was deleted.

src/CaseManagement.MessageBroker/IMessageBrokerConsumer.cs

Lines changed: 0 additions & 7 deletions
This file was deleted.

src/CaseManagement.MessageBroker/IMessageBrokerConsumerGeneric.cs

Lines changed: 0 additions & 9 deletions
This file was deleted.

src/CaseManagement.MessageBroker/InMemoryMessageBroker.cs

Lines changed: 0 additions & 43 deletions
This file was deleted.

src/CaseManagement.MessageBroker/ServiceCollectionExtensions.cs

Lines changed: 0 additions & 13 deletions
This file was deleted.

0 commit comments

Comments
 (0)