@@ -40,13 +40,8 @@ public async Task Should_publish_notification()
4040 return false ;
4141 }
4242
43- if ( ! ctx . OriginalMessageHasBeenHandled )
44- {
45- return false ;
46- }
47-
4843 // second message - edit & retry
49- if ( ! ctx . EditedMessageHasBeenSent )
44+ if ( ctx . MessageSentCount == 0 && ctx . MessageHandledCount == 1 )
5045 {
5146 var failedMessagedId = await this . GetOnlyFailedUnresolvedMessageId ( ) ;
5247 if ( failedMessagedId == null )
@@ -55,7 +50,7 @@ public async Task Should_publish_notification()
5550 }
5651
5752 ctx . OriginalMessageFailureId = failedMessagedId ;
58- ctx . EditedMessageHasBeenSent = true ;
53+ ctx . MessageSentCount = 1 ;
5954
6055 string editedMessage = JsonSerializer . Serialize ( new EditResolutionMessage
6156 {
@@ -74,13 +69,8 @@ public async Task Should_publish_notification()
7469 return false ;
7570 }
7671
77- if ( ! ctx . EditedAndRetriedMessageHandled )
78- {
79- return false ;
80- }
81-
8272 // third message - retry
83- if ( ! ctx . RetriedMessageHasBeenSent )
73+ if ( ctx . MessageSentCount == 1 && ctx . MessageHandledCount == 2 )
8474 {
8575 var failedMessageIdAfterId = await this . GetOnlyFailedUnresolvedMessageId ( ) ;
8676 if ( failedMessageIdAfterId == null )
@@ -89,22 +79,21 @@ public async Task Should_publish_notification()
8979 }
9080
9181 ctx . EditedMessageFailureId = failedMessageIdAfterId ;
92- ctx . RetriedMessageHasBeenSent = true ;
93- ctx . NeedToHandleRetriedMessage = true ;
82+ ctx . MessageSentCount = 2 ;
9483
9584 await this . Post < object > ( $ "/api/errors/{ ctx . EditedMessageFailureId } /retry") ;
9685 return false ;
9786 }
9887
99- if ( ! ctx . RetriedMessageHandled )
88+ if ( ctx . MessageHandledCount != 3 )
10089 {
10190 return false ;
10291 }
10392
104- if ( ctx . EditedMessageEditOf == null )
105- {
106- return false ;
107- }
93+ // if (ctx.EditedMessageEditOf == null)
94+ // {
95+ // return false;
96+ // }
10897
10998 if ( ! ctx . MessageResolved )
11099 {
@@ -124,19 +113,17 @@ public async Task Should_publish_notification()
124113
125114 public class EditMessageResolutionContext : ScenarioContext
126115 {
127- public bool OriginalMessageHasBeenHandled { get ; set ; }
128116 public string OriginalMessageFailureId { get ; set ; }
117+ public int MessageSentCount { get ; set ; }
118+ public int MessageHandledCount { get ; set ; }
129119
130120 public string ResolvedMessageId { get ; set ; }
131- public bool MessageResolved { get ; set ; }
132- public bool EditedAndRetriedMessageHandled { get ; set ; }
133- public bool RetriedMessageHandled { get ; set ; }
121+
134122 public string EditedMessageFailureId { get ; set ; }
135- public bool EditedMessageHasBeenSent { get ; set ; }
136- public bool RetriedMessageHasBeenSent { get ; set ; }
123+
137124 public string EditedMessageEditOf { get ; set ; }
138125 public bool ExternalProcessorSubscribed { get ; set ; }
139- public bool NeedToHandleRetriedMessage { get ; set ; }
126+ public bool MessageResolved { get ; set ; }
140127 }
141128
142129 public class MessageReceiver : EndpointConfigurationBuilder
@@ -150,22 +137,22 @@ public class EditMessageResolutionHandler(EditMessageResolutionContext testConte
150137 public Task Handle ( EditResolutionMessage message , IMessageHandlerContext context )
151138 {
152139 // First run - supposed to fail
153- if ( ! message . ThisIsAnEditedMessage )
140+ if ( testContext . MessageSentCount == 0 )
154141 {
155- testContext . OriginalMessageHasBeenHandled = true ;
142+ testContext . MessageHandledCount = 1 ;
156143 throw new SimulatedException ( ) ;
157144 }
158145
159146 // Second run - edit retry - supposed to fail
160- if ( ! testContext . NeedToHandleRetriedMessage )
147+ if ( testContext . MessageSentCount == 1 )
161148 {
162149 testContext . EditedMessageEditOf = context . MessageHeaders [ "ServiceControl.EditOf" ] ;
163- testContext . EditedAndRetriedMessageHandled = true ;
150+ testContext . MessageHandledCount = 2 ;
164151 throw new SimulatedException ( ) ;
165152 }
166153
167154 // Last run - normal retry - supposed to succeed
168- testContext . RetriedMessageHandled = true ;
155+ testContext . MessageHandledCount = 3 ;
169156 return Task . CompletedTask ;
170157 }
171158
0 commit comments