Encamina.Enmarcha.Testing.Smtp
8.2.0
dotnet add package Encamina.Enmarcha.Testing.Smtp --version 8.2.0
NuGet\Install-Package Encamina.Enmarcha.Testing.Smtp -Version 8.2.0
<PackageReference Include="Encamina.Enmarcha.Testing.Smtp" Version="8.2.0" />
paket add Encamina.Enmarcha.Testing.Smtp --version 8.2.0
#r "nuget: Encamina.Enmarcha.Testing.Smtp, 8.2.0"
// Install Encamina.Enmarcha.Testing.Smtp as a Cake Addin #addin nuget:?package=Encamina.Enmarcha.Testing.Smtp&version=8.2.0 // Install Encamina.Enmarcha.Testing.Smtp as a Cake Tool #tool nuget:?package=Encamina.Enmarcha.Testing.Smtp&version=8.2.0
Testing - SMPT
This project provides utilities for tests related to SMTP servers, allowing you to perform unit tests simulating all the aspects related to SMTP.
Setup
Nuget package
First, install NuGet. Then, install Encamina.Enmarcha.Testing.Smtp from the package manager console:
PM> Install-Package Encamina.Enmarcha.Testing.Smtp
.NET CLI:
Install .NET CLI. Next, install Encamina.Enmarcha.Testing.Smtp from the .NET CLI:
dotnet add package Encamina.Enmarcha.Testing.Smtp
How to use
At some initial point in your tests, for example, in the constructor of a test class, you can initialize a new instance of the SMTP server.
public class EmailServiceTests : FakerProviderFixturedBase, IDisposable
{
private SmtpServer smtpServer;
public EmailServiceTests(FakerProvider fakerFixture) : base(fakerFixture)
{
smtpServer = Configuration.Configure()
.WithRandomPort()
.Build();
}
public void Dispose()
{
smtpServer.Dispose();
smtpServer = null;
}
}
With this, you will achieve having the basic functionalities of an SMTP server locally to perform tests on an email service without external dependencies.
[Fact]
public void EmailService_SmtpClientOptions_ValidOptions_WithCustomName_Succeeds()
{
// Arrange
var smtpClientOptions = new SmtpClientOptions()
{
Host = smtpServer.Configuration.Domain,
Port = smtpServer.Configuration.Port,
Name = "dummy name",
Password = "dummy password",
User = "dummy user",
// For test porposes, SSL should not be used. Otherwise, a `MailKit.Security.SslHandshakeException` might be thrown...
UseSSL = false,
};
var emailService = new EmailService(smtpClientOptions);
// ....
// Act...
emailService.SendAsync();
// Assert
// ...
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- CommunityToolkit.Diagnostics (>= 8.2.2)
- Encamina.Enmarcha.Email.Abstractions (>= 8.2.0)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.1)
- MimeKit (>= 4.7.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
8.2.0 | 64 | 10/22/2024 |
8.2.0-preview-01-m01 | 104 | 9/17/2024 |
8.1.9-preview-02 | 54 | 10/22/2024 |
8.1.9-preview-01 | 66 | 10/4/2024 |
8.1.8 | 89 | 9/23/2024 |
8.1.8-preview-07 | 97 | 9/12/2024 |
8.1.8-preview-06 | 90 | 9/11/2024 |
8.1.8-preview-05 | 76 | 9/10/2024 |
8.1.8-preview-04 | 101 | 8/16/2024 |
8.1.8-preview-03 | 94 | 8/13/2024 |
8.1.8-preview-02 | 91 | 8/13/2024 |
8.1.8-preview-01 | 94 | 8/12/2024 |
8.1.7 | 104 | 8/7/2024 |
8.1.7-preview-09 | 105 | 7/3/2024 |
8.1.7-preview-08 | 84 | 7/2/2024 |
8.1.7-preview-07 | 85 | 6/10/2024 |
8.1.7-preview-06 | 73 | 6/10/2024 |
8.1.7-preview-05 | 87 | 6/6/2024 |
8.1.7-preview-04 | 84 | 6/6/2024 |
8.1.7-preview-03 | 91 | 5/24/2024 |
8.1.7-preview-02 | 73 | 5/10/2024 |
8.1.7-preview-01 | 72 | 5/8/2024 |
8.1.6 | 122 | 5/7/2024 |
8.1.6-preview-08 | 53 | 5/2/2024 |
8.1.6-preview-07 | 92 | 4/29/2024 |
8.1.6-preview-06 | 98 | 4/26/2024 |
8.1.6-preview-05 | 103 | 4/24/2024 |
8.1.6-preview-04 | 77 | 4/22/2024 |
8.1.6-preview-03 | 90 | 4/22/2024 |
8.1.6-preview-02 | 91 | 4/17/2024 |
8.1.6-preview-01 | 79 | 4/15/2024 |
8.1.5 | 121 | 4/15/2024 |
8.1.5-preview-15 | 78 | 4/10/2024 |
8.1.5-preview-14 | 87 | 3/20/2024 |
8.1.5-preview-13 | 62 | 3/18/2024 |
8.1.5-preview-12 | 102 | 3/13/2024 |
8.1.5-preview-11 | 77 | 3/13/2024 |
8.1.5-preview-10 | 83 | 3/13/2024 |
8.1.5-preview-09 | 82 | 3/12/2024 |
8.1.5-preview-08 | 81 | 3/12/2024 |
8.1.5-preview-07 | 80 | 3/8/2024 |
8.1.5-preview-06 | 74 | 3/8/2024 |
8.1.5-preview-05 | 77 | 3/7/2024 |
8.1.5-preview-04 | 86 | 3/7/2024 |
8.1.5-preview-03 | 90 | 3/7/2024 |
8.1.5-preview-02 | 103 | 2/28/2024 |
8.1.5-preview-01 | 88 | 2/19/2024 |
8.1.4 | 115 | 2/15/2024 |
8.1.3 | 111 | 2/13/2024 |
8.1.3-preview-07 | 84 | 2/13/2024 |
8.1.3-preview-06 | 89 | 2/12/2024 |
8.1.3-preview-05 | 84 | 2/9/2024 |
8.1.3-preview-04 | 74 | 2/8/2024 |
8.1.3-preview-03 | 78 | 2/7/2024 |
8.1.3-preview-02 | 91 | 2/2/2024 |
8.1.3-preview-01 | 86 | 2/2/2024 |
8.1.2 | 110 | 2/1/2024 |
8.1.2-preview-9 | 99 | 1/22/2024 |
8.1.2-preview-8 | 89 | 1/19/2024 |
8.1.2-preview-7 | 87 | 1/19/2024 |
8.1.2-preview-6 | 80 | 1/19/2024 |
8.1.2-preview-5 | 87 | 1/19/2024 |
8.1.2-preview-4 | 91 | 1/19/2024 |
8.1.2-preview-3 | 91 | 1/18/2024 |
8.1.2-preview-2 | 81 | 1/18/2024 |
8.1.2-preview-16 | 87 | 1/31/2024 |
8.1.2-preview-15 | 87 | 1/31/2024 |
8.1.2-preview-14 | 70 | 1/25/2024 |
8.1.2-preview-13 | 82 | 1/25/2024 |
8.1.2-preview-12 | 83 | 1/23/2024 |
8.1.2-preview-11 | 81 | 1/23/2024 |
8.1.2-preview-10 | 80 | 1/22/2024 |
8.1.2-preview-1 | 83 | 1/18/2024 |
8.1.1 | 125 | 1/18/2024 |
8.1.0 | 100 | 1/18/2024 |
8.0.3 | 141 | 12/29/2023 |
8.0.1 | 156 | 12/14/2023 |
8.0.0 | 144 | 12/7/2023 |
6.0.4.3 | 118 | 12/29/2023 |
6.0.4.2 | 133 | 12/20/2023 |
6.0.4.1 | 102 | 12/19/2023 |
6.0.4 | 137 | 12/4/2023 |
6.0.3.20 | 138 | 11/27/2023 |
6.0.3.19 | 134 | 11/22/2023 |