-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Welcome to the CSVComparer wiki!
The CSVComparer is simple tool that checks two csv style files and reports the differences between them in a structured way.
- Output files for comparisons with differences are saved with Filename.BREAKS.csv
- The output path is now specified as a directory. If it doesn't exist it will be created
- Improve exception reporting when non-unique key columns are defined
- Cosmetic improvements to logging/output file.
- Add line counts for CSV files to output
- In directory comparison if a candidate file doesn't match exactly, use file pattern to search
- Use Regex to match file to configuration in directory comparisons
- If a folder is passed as the outputfile parameter then in directory comparison a results file for each configuration key will be saved
Added support for simple directory comparisons
Change to API. ComparisonDefinition must now be applied in constructor
Fix bug where SplitStringWithQuotes does not exit when a quote is last character, for example: A,B,"C,D"
Add support for single-character delimiters to be enclosed within quotes. For example:
A,B,"This is a comma, in a quote", D
will resolve to:
- A
- B
- "This is a comma, in a quote"
- D
A single instance of the CSVComparer class can now be reused for multiple comparisons
Add support to optionally save output to file
Add IgnoreInvalidRows flag to configuration. If this is set to true then all rows that do not contain the same number of columns as the header row will be excluded from the comparison. Typically this will happen if a footer row is present
Improve output. Example break now reported as:
Break Type: ValueMismatch. Description Key:XY, Reference Row:100, Value:10.5 != Candidate Row:110, Value:1.5
The BreakDetail objects can also now be accessed programmatically
If none of the key columns listed in the configuration exist in the CSV files the comparison terminates with a break description added.
Added tool to create large random test csv files
Breaks include the row number
A: Row: 1 Value: 1.0 != Row: 1 Value: 1.2
Renamed 'Target' to 'Candidate'. Naming convention change
Added Tolerance for comparison of numeric fields