From 4252c8a58646f3751b0097a7d349822b9b6d7614 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Tue, 9 Jul 2019 13:09:48 +0300 Subject: [PATCH] added tests --- framework/Volo.Abp.sln | 7 +++ .../Volo.Abp.MailKit.Tests.csproj | 20 ++++++++ .../Volo/Abp/MailKit/AbpMailKitTestModule.cs | 13 +++++ .../MailKit/MailKitSmtpEmailSender_Tests.cs | 49 +++++++++++++++++++ 4 files changed, 89 insertions(+) create mode 100644 framework/test/Volo.Abp.MailKit.Tests/Volo.Abp.MailKit.Tests.csproj create mode 100644 framework/test/Volo.Abp.MailKit.Tests/Volo/Abp/MailKit/AbpMailKitTestModule.cs create mode 100644 framework/test/Volo.Abp.MailKit.Tests/Volo/Abp/MailKit/MailKitSmtpEmailSender_Tests.cs diff --git a/framework/Volo.Abp.sln b/framework/Volo.Abp.sln index ce8f43bbae..13ef057f97 100644 --- a/framework/Volo.Abp.sln +++ b/framework/Volo.Abp.sln @@ -248,6 +248,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Dapper.Tests", "te EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.MailKit", "src\Volo.Abp.MailKit\Volo.Abp.MailKit.csproj", "{0CAED4CC-1CFD-4092-A326-AFE4DB3A9AB4}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.MailKit.Tests", "test\Volo.Abp.MailKit.Tests\Volo.Abp.MailKit.Tests.csproj", "{70DD6E17-B98B-4B00-8F38-C489E291BB53}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -738,6 +740,10 @@ Global {0CAED4CC-1CFD-4092-A326-AFE4DB3A9AB4}.Debug|Any CPU.Build.0 = Debug|Any CPU {0CAED4CC-1CFD-4092-A326-AFE4DB3A9AB4}.Release|Any CPU.ActiveCfg = Release|Any CPU {0CAED4CC-1CFD-4092-A326-AFE4DB3A9AB4}.Release|Any CPU.Build.0 = Release|Any CPU + {70DD6E17-B98B-4B00-8F38-C489E291BB53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {70DD6E17-B98B-4B00-8F38-C489E291BB53}.Debug|Any CPU.Build.0 = Debug|Any CPU + {70DD6E17-B98B-4B00-8F38-C489E291BB53}.Release|Any CPU.ActiveCfg = Release|Any CPU + {70DD6E17-B98B-4B00-8F38-C489E291BB53}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -864,6 +870,7 @@ Global {D863A3C3-CC1D-426F-BDD4-02E7AE2A3170} = {5DF0E140-0513-4D0D-BE2E-3D4D85CD70E6} {E026A085-D881-4AE0-9F08-422AC3903BD7} = {447C8A77-E5F0-4538-8687-7383196D04EA} {0CAED4CC-1CFD-4092-A326-AFE4DB3A9AB4} = {5DF0E140-0513-4D0D-BE2E-3D4D85CD70E6} + {70DD6E17-B98B-4B00-8F38-C489E291BB53} = {447C8A77-E5F0-4538-8687-7383196D04EA} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {BB97ECF4-9A84-433F-A80B-2A3285BDD1D5} diff --git a/framework/test/Volo.Abp.MailKit.Tests/Volo.Abp.MailKit.Tests.csproj b/framework/test/Volo.Abp.MailKit.Tests/Volo.Abp.MailKit.Tests.csproj new file mode 100644 index 0000000000..17097b1bf0 --- /dev/null +++ b/framework/test/Volo.Abp.MailKit.Tests/Volo.Abp.MailKit.Tests.csproj @@ -0,0 +1,20 @@ + + + + netcoreapp2.2 + latest + true + false + false + false + + + + + + + + + + + \ No newline at end of file diff --git a/framework/test/Volo.Abp.MailKit.Tests/Volo/Abp/MailKit/AbpMailKitTestModule.cs b/framework/test/Volo.Abp.MailKit.Tests/Volo/Abp/MailKit/AbpMailKitTestModule.cs new file mode 100644 index 0000000000..b0d6e9f7da --- /dev/null +++ b/framework/test/Volo.Abp.MailKit.Tests/Volo/Abp/MailKit/AbpMailKitTestModule.cs @@ -0,0 +1,13 @@ +using Volo.Abp.Autofac; +using Volo.Abp.Modularity; + +namespace Volo.Abp.MailKit +{ + [DependsOn( + typeof(AbpMailKitModule), + typeof(AbpAutofacModule), + typeof(AbpTestBaseModule))] + public class AbpMailKitTestModule :AbpModule + { + } +} diff --git a/framework/test/Volo.Abp.MailKit.Tests/Volo/Abp/MailKit/MailKitSmtpEmailSender_Tests.cs b/framework/test/Volo.Abp.MailKit.Tests/Volo/Abp/MailKit/MailKitSmtpEmailSender_Tests.cs new file mode 100644 index 0000000000..3af4f7e50b --- /dev/null +++ b/framework/test/Volo.Abp.MailKit.Tests/Volo/Abp/MailKit/MailKitSmtpEmailSender_Tests.cs @@ -0,0 +1,49 @@ +using System.Net.Mail; +using System.Threading.Tasks; +using NSubstitute; +using Volo.Abp.BackgroundJobs; +using Volo.Abp.Emailing.Smtp; +using Xunit; + +namespace Volo.Abp.MailKit +{ + //Tests are commented because those tests can pass only when a true email configuration is set. + public class MailKitSmtpEmailSender_Tests : AbpIntegratedTest + { + //[Fact] + public async Task ShouldSendMailMessageAsync() + { + var mailSender = CreateMailKitEmailSender(); + var mailMessage = new MailMessage("from_mail_address@asd.com", "to_mail_address@asd.com", "subject", "body") + { IsBodyHtml = true }; + + await mailSender.SendAsync(mailMessage); + } + + //[Fact] + public void ShouldSendMailMessage() + { + var mailSender = CreateMailKitEmailSender(); + var mailMessage = new MailMessage("from_mail_address@asd.com", "to_mail_address@asd.com", "subject", "body") + { IsBodyHtml = true }; + + mailSender.Send(mailMessage); + } + + private static MailKitSmtpEmailSender CreateMailKitEmailSender() + { + var mailConfig = Substitute.For(); + var mailKitConfig = Substitute.For(); + var bgJob = Substitute.For(); + + mailConfig.GetHostAsync().Returns("stmp_server_name"); + mailConfig.GetUserNameAsync().Returns("mail_server_user_name"); + mailConfig.GetPasswordAsync().Returns("mail_server_password"); + mailConfig.GetPortAsync().Returns(587); + mailConfig.GetEnableSslAsync().Returns(false); + + var mailSender = new MailKitSmtpEmailSender(mailConfig, bgJob, mailKitConfig); + return mailSender; + } + } +}