Browse Source

Added FallbackToPropertyName test

Piotr Czajkowski 1 week ago
parent
commit
089e3e3c45

+ 3 - 0
ExcelORM/ExcelORMTests/ExcelORMTests.csproj

@@ -62,6 +62,9 @@
       <None Update="testFiles\emptyForAppend.xlsx">
         <CopyToOutputDirectory>Always</CopyToOutputDirectory>
       </None>
+      <None Update="testFiles\fallBackToPropertyName.xlsx">
+        <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+      </None>
     </ItemGroup>
 
     <ItemGroup>

+ 20 - 0
ExcelORM/ExcelORMTests/ReaderTests.cs

@@ -12,6 +12,7 @@ public class ReaderTests
     private const string DifferentTypesFile = "testFiles/differentTypes.xlsx";
     private const string WithFormulaFile = "testFiles/withFormula.xlsx";
     private const string AdditionalTypes = "testFiles/additionalTypes.xlsx";
+    private const string FallBackToPropertyName = "testFiles/fallBackToPropertyName.xlsx";
     
     [Fact]
     public void Read()
@@ -148,4 +149,23 @@ public class ReaderTests
         Assert.NotEmpty(resultsWorkbook);
         Assert.Equal(results, resultsWorkbook);
     }
+    
+    [Fact]
+    public void FallbackToPropertyName()
+    {
+        using var reader = new ExcelReader(FallBackToPropertyName);
+        var resultsNoFallback = reader.Read<Test>().ToArray();
+        Assert.NotEmpty(resultsNoFallback);
+        
+        reader.FallbackToPropertyName = true;
+        var resultsFallback = reader.Read<Test>().ToArray();
+        Assert.NotEmpty(resultsFallback);
+        
+        for (var i = 0; i < resultsNoFallback.Length; i++)
+        {
+            Assert.NotEqual(resultsNoFallback[i].Name, resultsFallback[i].Name);
+            Assert.Equal(resultsNoFallback[i].Surname, resultsFallback[i].Surname);
+            Assert.Equal(resultsNoFallback[i].Job, resultsFallback[i].Job);
+        }
+    }
 }

+ 0 - 1
ExcelORM/ExcelORMTests/WriterTests.cs

@@ -1,6 +1,5 @@
 using ExcelORM;
 using ExcelORM.Models;
-using ClosedXML.Excel;
 
 namespace ExcelORMTests;