DynamicReaderTests.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using ExcelORM;
  2. namespace ExcelORMTests;
  3. public class DynamicReaderTests
  4. {
  5. private const string RegularFile = "testFiles/first.xlsx";
  6. private const string DifferentTypesFile = "testFiles/differentTypes.xlsx";
  7. private const string MultipleSheetsFile = "testFiles/multipleSheets.xlsx";
  8. private const string DifficultFile = "testFiles/dynamicDifficult.xlsx";
  9. [Fact]
  10. public void Read()
  11. {
  12. using var reader = new ExcelDynamicReader(RegularFile);
  13. var results = reader.Read("Sheet 1").ToArray();
  14. Assert.NotEmpty(results);
  15. }
  16. [Fact]
  17. public void ReadDifferentTypes()
  18. {
  19. using var reader = new ExcelDynamicReader(DifferentTypesFile);
  20. var results = reader.Read().ToArray();
  21. Assert.NotEmpty(results);
  22. var first = results.First();
  23. Assert.Equal(typeof(string), first[0].Type);
  24. Assert.Equal(typeof(DateTime), first[1].Type);
  25. Assert.Equal(typeof(TimeSpan), first[2].Type);
  26. Assert.Equal(typeof(double), first[3].Type);
  27. Assert.Equal(typeof(double), first[4].Type);
  28. }
  29. [Fact]
  30. public void ReadAll()
  31. {
  32. using var reader = new ExcelDynamicReader(MultipleSheetsFile);
  33. var results = reader.ReadAll().ToArray();
  34. Assert.NotEmpty(results);
  35. }
  36. [Fact]
  37. public void ReadDifficult()
  38. {
  39. using var reader = new ExcelDynamicReader(DifficultFile);
  40. var results = reader.Read().ToArray();
  41. Assert.NotEmpty(results);
  42. Assert.Equal(results.First().Count, results.Last().Count);
  43. }
  44. private const string EmptyFileForAppend = "testFiles/emptyForAppend.xlsx";
  45. [Fact]
  46. public void ReadEmptyFile()
  47. {
  48. using var reader = new ExcelDynamicReader(EmptyFileForAppend);
  49. var results = reader.Read().ToArray();
  50. Assert.Empty(results);
  51. }
  52. }