Skip to content

Commit

Permalink
Add unit tests for dkim selector
Browse files Browse the repository at this point in the history
  • Loading branch information
tinohager committed Jan 21, 2025
1 parent 18c63e8 commit af233b7
Showing 1 changed file with 34 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
namespace Nager.EmailAuthentication.UnitTest.DkimHeaderParserTests
{
[TestClass]
public sealed class SelectorTest
{
[DataRow("selector1")]
[DataRow("selector2")]
[DataRow("google")]
[DataTestMethod]
public void TryParse_ValidVersionDkimHeaderString_ReturnsTrueAndPopulatesDataFragment(string selector)
{
var dkimHeader = $"v=1; a=rsa-sha256; d=domain.com; s={selector}; h=message-id:from; bh=testbodyhash=; b=signaturedata";

var isSuccessful = DkimHeaderParser.TryParse(dkimHeader, out var dkimHeaderDataFragment, out var parseErrors);

Assert.IsTrue(isSuccessful);
Assert.IsNotNull(dkimHeaderDataFragment);
Assert.IsNull(parseErrors, "ParseErrors is not null");
}

[DataRow("verylongandinvalidselectorverylongandinvalidselectorverylongandinvalidselector")]
[DataTestMethod]
public void TryParse_InvalidVersionDkimHeaderString_ReturnsTrueAndPopulatesDataFragment(string selector)
{
var dkimHeader = $"v=1; a=rsa-sha256; d=domain.com; s={selector}; h=message-id:from; bh=testbodyhash=; b=signaturedata";

var isSuccessful = DkimHeaderParser.TryParse(dkimHeader, out var dkimHeaderDataFragment, out var parseErrors);

Assert.IsTrue(isSuccessful);
Assert.IsNotNull(dkimHeaderDataFragment);
Assert.IsNotNull(parseErrors, "ParseErrors is null");
}
}
}

0 comments on commit af233b7

Please sign in to comment.