88 lines
2.7 KiB
C#
88 lines
2.7 KiB
C#
using JdeScoping.ExcelIO.Tests.Fixtures;
|
|
using NPOI.SS.UserModel;
|
|
using NPOI.XSSF.UserModel;
|
|
using Shouldly;
|
|
using Xunit;
|
|
|
|
namespace JdeScoping.ExcelIO.Tests.Integration;
|
|
|
|
public class InvestigationSheetTests : IClassFixture<WithMisDataFixture>
|
|
{
|
|
private readonly XSSFWorkbook _workbook;
|
|
private readonly ISheet _sheet;
|
|
private readonly List<string> _headers;
|
|
|
|
public InvestigationSheetTests(WithMisDataFixture fixture)
|
|
{
|
|
_workbook = fixture.Workbook;
|
|
_sheet = _workbook.GetSheet("Investigation")!;
|
|
_headers = ExcelTestHelpers.GetHeadersFromSheet(_sheet);
|
|
}
|
|
|
|
[Fact]
|
|
public void InvestigationSheet_Exists()
|
|
{
|
|
_workbook.GetSheet("Investigation").ShouldNotBeNull();
|
|
}
|
|
|
|
[Fact]
|
|
public void ColumnCount_Is12()
|
|
{
|
|
_headers.Count.ShouldBe(12);
|
|
}
|
|
|
|
[Fact]
|
|
public void ColumnHeaders_MatchExpected()
|
|
{
|
|
_headers.ShouldContain("Work Center Code");
|
|
_headers.ShouldContain("Work Order Number");
|
|
_headers.ShouldContain("Work Order Start Date");
|
|
_headers.ShouldContain("Job Step Number");
|
|
_headers.ShouldContain("Function Operation Description");
|
|
_headers.ShouldContain("Job Step End Date");
|
|
_headers.ShouldContain("Function Code");
|
|
_headers.ShouldContain("Was Job Step Added?");
|
|
_headers.ShouldContain("Matched Job Step Number");
|
|
_headers.ShouldContain("Item Number");
|
|
_headers.ShouldContain("Item Description");
|
|
_headers.ShouldContain("Routing Type");
|
|
}
|
|
|
|
[Fact]
|
|
public void ColumnOrder_MatchesSpec()
|
|
{
|
|
_headers[0].ShouldBe("Work Center Code");
|
|
_headers[1].ShouldBe("Work Order Number");
|
|
_headers[2].ShouldBe("Work Order Start Date");
|
|
_headers[3].ShouldBe("Job Step Number");
|
|
_headers[4].ShouldBe("Function Operation Description");
|
|
_headers[5].ShouldBe("Job Step End Date");
|
|
_headers[6].ShouldBe("Function Code");
|
|
_headers[7].ShouldBe("Was Job Step Added?");
|
|
_headers[8].ShouldBe("Matched Job Step Number");
|
|
_headers[9].ShouldBe("Item Number");
|
|
_headers[10].ShouldBe("Item Description");
|
|
_headers[11].ShouldBe("Routing Type");
|
|
}
|
|
|
|
[Fact]
|
|
public void TableStyle_IsLight18()
|
|
{
|
|
var table = ExcelTestHelpers.GetFirstTable(_sheet);
|
|
table.StyleName.ShouldBe("TableStyleLight18");
|
|
}
|
|
|
|
[Fact]
|
|
public void Protection_IsEnabled()
|
|
{
|
|
((XSSFSheet)_sheet).IsSheetLocked.ShouldBeTrue();
|
|
}
|
|
|
|
[Fact]
|
|
public void DataRow_ContainsExpectedValues()
|
|
{
|
|
ExcelTestHelpers.GetCellNumber(_sheet, 2, 2).ShouldBe(12345);
|
|
ExcelTestHelpers.GetCellText(_sheet, 2, 10).ShouldBe("ITEM-001");
|
|
}
|
|
}
|