예제 #1
0
 public AggregateReportInfo(Dmarc.AggregateReport aggregateReport,
                            EmailMetadata emailMetadata,
                            AttachmentMetadata attachmentMetadata)
     : base(emailMetadata)
 {
     AggregateReport    = aggregateReport;
     AttachmentMetadata = attachmentMetadata;
 }
예제 #2
0
        private AggregateReportInfo CreateAggregateReportInfo()
        {
            Dmarc.AggregateReport.Parser.Lambda.Domain.Dmarc.AggregateReport aggregateReport = new Dmarc.AggregateReport.Parser.Lambda.Domain.Dmarc.AggregateReport {
                Records = new Record[0]
            };
            EmailMetadata      emailMetadata      = new EmailMetadata("", "", 1);
            AttachmentMetadata attachmentMetadata = new AttachmentMetadata("");

            return(new AggregateReportInfo(aggregateReport, emailMetadata, attachmentMetadata));
        }
        private static AggregateReportInfo Create(string requestId     = "RequestId", string orginalUri = "OriginalUri",
                                                  string emailFilename = "EmailFilename", long filesize = 1, string attachmentFilename = "AttachmentFilename")
        {
            AggregateReportDomain aggregateReport = new AggregateReportDomain
            {
                ReportMetadata = new ReportMetadata
                {
                    Range = new DateRange()
                },
                PolicyPublished = new PolicyPublished(),
                Records         = new[] { new Record
                                          {
                                              Row = new Row
                                              {
                                                  PolicyEvaluated = new PolicyEvaluated
                                                  {
                                                      Reasons = new []
                                                      {
                                                          new PolicyOverrideReason(),
                                                      }
                                                  }
                                              },
                                              Identifiers = new Identifier(),
                                              AuthResults = new AuthResult
                                              {
                                                  Dkim = new []
                                                  {
                                                      new DkimAuthResult()
                                                  },
                                                  Spf = new []
                                                  {
                                                      new SpfAuthResult()
                                                  }
                                              }
                                          } }
            };
            EmailMetadata      emailMetadata      = new EmailMetadata(requestId, string.Empty, orginalUri, emailFilename, filesize);
            AttachmentMetadata attachmentMetadata = new AttachmentMetadata(attachmentFilename);

            return(new AggregateReportInfo(aggregateReport, emailMetadata, attachmentMetadata));
        }
예제 #4
0
        private static Dmarc.AggregateReport.Parser.Lambda.Domain.Dmarc.AggregateReport Create(Action <Dmarc.AggregateReport.Parser.Lambda.Domain.Dmarc.AggregateReport> setter, int policyOverrideCount = 1, int dkimAuthResultCount = 1, int spfAuthResultCount = 1)
        {
            PolicyOverrideReason[] policyOverrideReasons = Enumerable.Range(0, policyOverrideCount).Select(_ => new PolicyOverrideReason()).ToArray();
            DkimAuthResult[]       dkimAuthResults       = Enumerable.Range(0, dkimAuthResultCount).Select(_ => new DkimAuthResult()).ToArray();
            SpfAuthResult[]        spfAuthResults        = Enumerable.Range(0, spfAuthResultCount).Select(_ => new SpfAuthResult()).ToArray();

            var aggregateReport = new Dmarc.AggregateReport.Parser.Lambda.Domain.Dmarc.AggregateReport
            {
                ReportMetadata = new ReportMetadata
                {
                    Range = new DateRange()
                },
                PolicyPublished = new PolicyPublished(),
                Records         = new[]
                {
                    new Record
                    {
                        Identifiers = new Identifier(),
                        Row         = new Row
                        {
                            PolicyEvaluated = new PolicyEvaluated
                            {
                                Reasons = policyOverrideReasons
                            }
                        },
                        AuthResults = new AuthResult
                        {
                            Dkim = dkimAuthResults,
                            Spf  = spfAuthResults
                        }
                    }
                }
            };

            setter(aggregateReport);
            return(aggregateReport);
        }
예제 #5
0
        public void MappingTests <TOut>(TOut expected, Dmarc.AggregateReport.Parser.Lambda.Domain.Dmarc.AggregateReport aggregateReport, Func <DenormalisedRecord, TOut> actualGetter)
        {
            IEnumerable <DenormalisedRecord> denormalisedRecords = _denormalisedRecordConverter.ToDenormalisedRecord(aggregateReport, string.Empty);

            Assert.That(expected, Is.EqualTo(actualGetter(denormalisedRecords.ElementAt(0))));
        }