private SpfConfigReadModelEntity Process(SpfConfig spfConfig) { Spf.Domain.SpfConfig parsedConfig = _configParser.Parse(spfConfig); Spf.ReadModel.SpfConfig mappedConfig = parsedConfig.ToSpfConfig(); string spfConfigSerialized = JsonConvert.SerializeObject(mappedConfig, _serializerSettings); return(new SpfConfigReadModelEntity(spfConfig.Domain.Id, mappedConfig.TotalErrorCount, (ErrorType?)mappedConfig.MaxErrorSeverity, spfConfigSerialized)); }
public SpfConfig Parse(Contract.Domain.SpfConfig spfDomainConfig) { List <SpfRecord> records = spfDomainConfig.Records .Select(_ => _spfRecordParser.Parse(_, spfDomainConfig.Domain.Name)) .Where(_ => _ != null).ToList(); SpfConfig spfConfig = new SpfConfig(records, spfDomainConfig.LastChecked); List <Error> errors = _spfConfigRulesEvaluator.Evaluate(spfConfig); spfConfig.AddErrors(errors); return(spfConfig); }
public void Test(int count, bool isErrorExpected) { List <SpfRecord> spfRecords = Enumerable.Range(0, count).Select(_ => new SpfRecord(string.Empty, new Evaluator.Spf.Domain.Version(string.Empty), new List <Term>(), string.Empty)).ToList(); SpfConfig spfConfig = new SpfConfig(spfRecords, DateTime.UtcNow); Error error; bool isErrored = _rule.IsErrored(spfConfig, out error); Assert.That(spfConfig.LastChecked.Date, Is.EqualTo(DateTime.UtcNow.Date)); Assert.That(isErrored, Is.EqualTo(isErrorExpected)); Assert.That(error, isErrorExpected ? Is.Not.Null : Is.Null); }