public void Append(EDiffStatus diffStatus, int recordPosition, string record, bool isSourceRecord) { var diffResultRecord = PerLineDiffResult.Create(diffStatus, recordPosition, record, isSourceRecord); if (_diffResultOption.DiffResultFilter.CanAppend(diffResultRecord)) { _perLineDiffResult.Add(diffResultRecord); } }
public void Append(EDiffStatus diffStatus, int recordPosition, string record, bool isSourceRecord) { var diffResultRecord = PerLineDiffResult.Create(diffStatus, recordPosition, record, isSourceRecord); if (_diffResultOption.DiffResultFilter.CanAppend(diffResultRecord)) { //The per line results will be appended in order, do require bucketing into range AddIntoRange(diffResultRecord); } }
private void AddIntoRange(PerLineDiffResult perlineDiffResult) { if (CheckIfSameStatus(perlineDiffResult)) { //should modify current range bucket _currentRangeBucket.Modify(perlineDiffResult); } else { _currentRangeBucket = LinesRangeDiffResult.CreateNew(perlineDiffResult); _lineRangeDiffResults.Add(_currentRangeBucket); } }
public static List <PerLineDiffResult> GetSamplePerLineDiffResults() { var expectations = new List <PerLineDiffResult>(); var result = new PerLineDiffResult(); var affectedLines = "This is an important notice! It should"; result.AffectedLine = affectedLines; result.LinePosition = 1; result.DiffStatus = EDiffStatus.Added; expectations.Add(result); result = new PerLineDiffResult(); affectedLines = "This paragraph contains text that is"; result.AffectedLine = affectedLines; result.LinePosition = 7; result.DiffStatus = EDiffStatus.Added; expectations.Add(result); return(expectations); }
private bool CheckIfSameStatus(PerLineDiffResult perlineDiffResult) { return(_currentRangeBucket.DiffStatus == perlineDiffResult.DiffStatus); }