Adding
This commit is contained in:
+84
@@ -0,0 +1,84 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using LCU.API.Collections.RepoApi.Models.Reporting;
|
||||
using LCU.Shared.Collections.RepoApiLib.Formatting;
|
||||
using LCU.Shared.Collections.RepoApiLib.Models.Reporting.Responses;
|
||||
using Xunit;
|
||||
|
||||
namespace LCU.API.Collections.RepoApiTests
|
||||
{
|
||||
internal class DummyClass
|
||||
{
|
||||
public int RepoId { get; set; }
|
||||
public string SomeString { get; set; }
|
||||
}
|
||||
|
||||
public class DataTableFormattingTest
|
||||
{
|
||||
[Fact]
|
||||
public void CreateDataTable_Ok()
|
||||
{
|
||||
// Arrange
|
||||
var dummyData = new List<DummyClass>()
|
||||
{
|
||||
new DummyClass()
|
||||
{
|
||||
RepoId = 49,
|
||||
SomeString = "String"
|
||||
},
|
||||
new DummyClass()
|
||||
{
|
||||
RepoId = 51
|
||||
}
|
||||
};
|
||||
|
||||
// Act
|
||||
var dataTable = DataTableFormatting.CreateDataTable(
|
||||
dummyData,
|
||||
(entry) => entry.RepoId,
|
||||
(entry) => new ReportHeaderCellMap()
|
||||
{
|
||||
Header = "First Header",
|
||||
Cell = new ReportCell()
|
||||
{
|
||||
Display = entry?.SomeString,
|
||||
Value = 123
|
||||
}
|
||||
},
|
||||
(entry) => new ReportHeaderCellMap()
|
||||
{
|
||||
Header = "2nd Header",
|
||||
Cell = new ReportCell()
|
||||
{
|
||||
Display = "Whatever I want",
|
||||
Value = true
|
||||
}
|
||||
});
|
||||
|
||||
// Assert
|
||||
Assert.NotNull(dataTable);
|
||||
|
||||
Assert.Equal(2, dataTable.Headers.Length);
|
||||
Assert.Equal("First Header", dataTable.Headers[0]);
|
||||
Assert.Equal("2nd Header", dataTable.Headers[1]);
|
||||
|
||||
Assert.Equal(2, dataTable.Rows.Count());
|
||||
|
||||
var firstRow = dataTable.Rows.ElementAt(0);
|
||||
Assert.Equal(49, firstRow.RepoId);
|
||||
Assert.Equal("String", firstRow.Cells[0].Display);
|
||||
Assert.Equal(123, firstRow.Cells[0].Value);
|
||||
Assert.Equal("Whatever I want", firstRow.Cells[1].Display);
|
||||
Assert.Equal(true, firstRow.Cells[1].Value);
|
||||
|
||||
var secondRow = dataTable.Rows.ElementAt(1);
|
||||
Assert.Equal(51, secondRow.RepoId);
|
||||
Assert.Null(secondRow.Cells[0].Display);
|
||||
Assert.Equal(123, secondRow.Cells[0].Value);
|
||||
Assert.Equal("Whatever I want", secondRow.Cells[1].Display);
|
||||
Assert.Equal(true, secondRow.Cells[1].Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user