Skip to content

Commit 088ae13

Browse files
Check mock sequence in unit test (#66)
1 parent aa4bb92 commit 088ae13

File tree

3 files changed

+24
-4
lines changed

3 files changed

+24
-4
lines changed

test/ApiHealthCheck.ConsoleTest/ApiHealthCheck.ConsoleTest.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
<ItemGroup>
1111
<PackageReference Include="DeepCopy" Version="1.0.3" />
12-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.0.0" />
12+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.1.0" />
1313
<PackageReference Include="Moq" Version="4.16.1" />
1414
<PackageReference Include="Tynamix.ObjectFiller" Version="1.5.7" />
1515
<PackageReference Include="xunit" Version="2.4.1" />

test/ApiHealthCheck.ConsoleTest/HealthCheckManagerTest.cs

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ public class HealthCheckManagerTest
2020

2121
public HealthCheckManagerTest()
2222
{
23-
_healthCheckMock = new Mock<IHealthCheck>();
24-
_sendMailMock = new Mock<ISendMail>();
23+
_healthCheckMock = new Mock<IHealthCheck>(MockBehavior.Strict);
24+
_sendMailMock = new Mock<ISendMail>(MockBehavior.Strict);
2525
_healthCheckManagerLoggerMock = new Mock<ILogger<HealthCheckManager>>();
2626
_mailSendSettingsOptionsMonitorMock = new Mock<IOptionsMonitor<MailSendSettings>>();
2727
}
@@ -31,11 +31,15 @@ public void LogHealthCheckResultSuccessTest()
3131
{
3232
_mailSendSettings = new MailSendSettings(true);
3333

34+
MockSequence mockSequence = new();
35+
3436
_mailSendSettingsOptionsMonitorMock
37+
.InSequence(mockSequence)
3538
.Setup(s => s.CurrentValue)
3639
.Returns(_mailSendSettings);
3740

3841
_sendMailMock
42+
.InSequence(mockSequence)
3943
.Setup(s => s.SendMailToCustomer(It.IsAny<string>()))
4044
.Verifiable();
4145

@@ -91,11 +95,15 @@ public void LogHealthCheckResultFailTest()
9195
{
9296
_mailSendSettings = new MailSendSettings(true);
9397

98+
MockSequence mockSequence = new();
99+
94100
_mailSendSettingsOptionsMonitorMock
101+
.InSequence(mockSequence)
95102
.Setup(s => s.CurrentValue)
96103
.Returns(_mailSendSettings);
97104

98105
_sendMailMock
106+
.InSequence(mockSequence)
99107
.Setup(s => s.SendMailToCustomer(It.IsAny<string>()))
100108
.Verifiable();
101109

@@ -152,11 +160,15 @@ public void LogHealthCheckResultExceptionTest()
152160
{
153161
_mailSendSettings = new MailSendSettings(true);
154162

163+
MockSequence mockSequence = new();
164+
155165
_mailSendSettingsOptionsMonitorMock
166+
.InSequence(mockSequence)
156167
.Setup(s => s.CurrentValue)
157168
.Returns(_mailSendSettings);
158169

159170
_sendMailMock
171+
.InSequence(mockSequence)
160172
.Setup(s => s.SendMailToCustomer(It.IsAny<string>()))
161173
.Verifiable();
162174

@@ -335,11 +347,15 @@ public void LogHealthCheckResultApiDetailsTest()
335347
{
336348
_mailSendSettings = new MailSendSettings(false);
337349

350+
MockSequence mockSequence = new();
351+
338352
_mailSendSettingsOptionsMonitorMock
353+
.InSequence(mockSequence)
339354
.Setup(s => s.CurrentValue)
340355
.Returns(_mailSendSettings);
341356

342357
_sendMailMock
358+
.InSequence(mockSequence)
343359
.Setup(s => s.SendMailToCustomer(It.IsAny<string>()))
344360
.Verifiable();
345361

@@ -388,11 +404,15 @@ public void LogHealthCheckResultNoCredTest()
388404
{
389405
_mailSendSettings = new MailSendSettings(true);
390406

407+
MockSequence mockSequence = new();
408+
391409
_mailSendSettingsOptionsMonitorMock
410+
.InSequence(mockSequence)
392411
.Setup(s => s.CurrentValue)
393412
.Returns(_mailSendSettings);
394413

395414
_sendMailMock
415+
.InSequence(mockSequence)
396416
.Setup(s => s.SendMailToCustomer(It.IsAny<string>()))
397417
.Verifiable();
398418

test/ApiHealthCheck.LibTest/ApiHealthCheck.LibTest.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
</PropertyGroup>
99

1010
<ItemGroup>
11-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.0.0" />
11+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.1.0" />
1212
<PackageReference Include="Tynamix.ObjectFiller" Version="1.5.7" />
1313
<PackageReference Include="xunit" Version="2.4.1" />
1414
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.3">

0 commit comments

Comments
 (0)