Add separated-value deserialization test

This commit is contained in:
Matt Nadareski
2023-07-14 13:20:11 -04:00
parent d973ad50d3
commit a32b1d7e6f
11 changed files with 263 additions and 1 deletions

View File

@@ -816,6 +816,32 @@ namespace SabreTools.Test.Parser
}
}
[Theory]
[InlineData("test-csv-files1.csv", ',', 2)]
[InlineData("test-csv-files2.csv", ',', 2)]
[InlineData("test-ssv-files1.ssv", ';', 2)]
[InlineData("test-ssv-files2.ssv", ';', 2)]
[InlineData("test-tsv-files2.tsv", '\t', 2)]
[InlineData("test-tsv-files1.tsv", '\t', 2)]
public void SeparatedValueDeserializeTest(string path, char delim, long count)
{
// Open the file for reading
string filename = System.IO.Path.Combine(Environment.CurrentDirectory, "TestData", path);
// Deserialize the file
var dat = Serialization.SeparatedValue.Deserialize(filename, delim);
// Validate the values
Assert.NotNull(dat);
Assert.Equal(count, dat.Row.Length);
// Validate we're not missing any attributes or elements
foreach (var rom in dat.Row ?? Array.Empty<Models.SeparatedValue.Row>())
{
Assert.Null(rom.ADDITIONAL_ELEMENTS);
}
}
[Theory]
[InlineData("test-softwarelist-files1.xml", 4531)]
[InlineData("test-softwarelist-files2.xml", 2797)]