소스 검색

Added ReadNoAttributesWithSkip

Piotr Czajkowski 1 주 전
부모
커밋
46c680618b
3개의 변경된 파일과 52개의 추가작업 그리고 0개의 파일을 삭제
  1. 13 0
      ExcelORM/ExcelORMTests/Models/TestNoAttributesWithSkip.cs
  2. 16 0
      ExcelORM/ExcelORMTests/Models/TestWithSkip.cs
  3. 23 0
      ExcelORM/ExcelORMTests/ReaderTests.cs

+ 13 - 0
ExcelORM/ExcelORMTests/Models/TestNoAttributesWithSkip.cs

@@ -0,0 +1,13 @@
+using ExcelORM.Attributes;
+
+namespace ExcelORMTests;
+
+public record TestNoAttributesWithSkip
+{
+    public string? name { get; set; }
+
+    [Skip]
+    public string? SurName { get; set; }
+
+    public string? joB { get; set; }
+}

+ 16 - 0
ExcelORM/ExcelORMTests/Models/TestWithSkip.cs

@@ -0,0 +1,16 @@
+using ExcelORM.Attributes;
+
+namespace ExcelORMTests;
+
+public record TestWithSkip
+{
+    [Column("first name" )]
+    public string? Name { get; set; }
+
+    [Skip]
+    [Column("Last Name")]
+    public string? Surname { get; set; }
+
+    [Column(["Occupation", "JoB"])]
+    public string? Job { get; set; }
+}

+ 23 - 0
ExcelORM/ExcelORMTests/ReaderTests.cs

@@ -188,4 +188,27 @@ public class ReaderTests
             Assert.Equal(results[i].Job, resultsNoAttributes[i].joB);
         }
     }
+    
+    [Fact]
+    public void ReadNoAttributesWithSkip()
+    {
+        using var reader = new ExcelReader(RegularFile);
+        var results = reader.Read<TestWithSkip>().ToArray();
+        Assert.NotEmpty(results);
+        
+        using var readerNoAttributes = new ExcelReader(RegularFileNoAttributes);
+        var resultsNoAttributes = readerNoAttributes.Read<TestNoAttributesWithSkip>().ToArray();
+        Assert.NotEmpty(resultsNoAttributes);
+        
+        for (var i = 0; i < results.Length; i++)
+        {
+            Assert.Equal(results[i].Name, resultsNoAttributes[i].name);
+            
+            Assert.Equal(results[i].Surname, resultsNoAttributes[i].SurName);
+            Assert.Null(results[i].Surname);
+            Assert.Null(resultsNoAttributes[i].SurName);
+            
+            Assert.Equal(results[i].Job, resultsNoAttributes[i].joB);
+        }
+    }
 }