Establishes the foundational structure, core Excel functionality, and tooling. - Implements base components for cells, ranges, columns, and rows. - Integrates a custom calculation engine with a wide range of Excel functions. - Adds comprehensive support for styling, conditional formatting, data validation, comments, pictures, and charts. - Configures build setup, project metadata (NuGet), and developer guidelines. - Includes editor and Git attributes for consistent code style and line endings.
78 lines
2.5 KiB
C#
78 lines
2.5 KiB
C#
using System.Diagnostics;
|
|
using ClosedXML.Excel;
|
|
using NUnit.Framework;
|
|
|
|
namespace ClosedXML_Tests.Excel
|
|
{
|
|
[TestFixture]
|
|
public class PageBreaksTests
|
|
{
|
|
[Test]
|
|
public void RowBreaksShouldBeSorted()
|
|
{
|
|
var wb = new XLWorkbook();
|
|
IXLWorksheet sheet = wb.AddWorksheet("Sheet1");
|
|
|
|
sheet.PageSetup.AddHorizontalPageBreak(10);
|
|
sheet.PageSetup.AddHorizontalPageBreak(12);
|
|
sheet.PageSetup.AddHorizontalPageBreak(5);
|
|
Assert.That(sheet.PageSetup.RowBreaks, Is.EqualTo(new[] { 5, 10, 12 }));
|
|
}
|
|
|
|
[Test]
|
|
public void ColumnBreaksShouldBeSorted()
|
|
{
|
|
var wb = new XLWorkbook();
|
|
IXLWorksheet sheet = wb.AddWorksheet("Sheet1");
|
|
|
|
sheet.PageSetup.AddVerticalPageBreak(10);
|
|
sheet.PageSetup.AddVerticalPageBreak(12);
|
|
sheet.PageSetup.AddVerticalPageBreak(5);
|
|
Assert.That(sheet.PageSetup.ColumnBreaks, Is.EqualTo(new[] { 5, 10, 12 }));
|
|
}
|
|
|
|
[Test]
|
|
public void RowBreaksShiftWhenInsertedRowAbove()
|
|
{
|
|
var wb = new XLWorkbook();
|
|
IXLWorksheet sheet = wb.AddWorksheet("Sheet1");
|
|
|
|
sheet.PageSetup.AddHorizontalPageBreak(10);
|
|
sheet.Row(5).InsertRowsAbove(1);
|
|
Assert.AreEqual(11, sheet.PageSetup.RowBreaks[0]);
|
|
}
|
|
|
|
[Test]
|
|
public void RowBreaksNotShiftWhenInsertedRowBelow()
|
|
{
|
|
var wb = new XLWorkbook();
|
|
IXLWorksheet sheet = wb.AddWorksheet("Sheet1");
|
|
|
|
sheet.PageSetup.AddHorizontalPageBreak(10);
|
|
sheet.Row(15).InsertRowsAbove(1);
|
|
Assert.AreEqual(10, sheet.PageSetup.RowBreaks[0]);
|
|
}
|
|
|
|
[Test]
|
|
public void ColumnBreaksShiftWhenInsertedColumnBefore()
|
|
{
|
|
var wb = new XLWorkbook();
|
|
IXLWorksheet sheet = wb.AddWorksheet("Sheet1");
|
|
|
|
sheet.PageSetup.AddVerticalPageBreak(10);
|
|
sheet.Column(5).InsertColumnsBefore(1);
|
|
Assert.AreEqual(11, sheet.PageSetup.ColumnBreaks[0]);
|
|
}
|
|
|
|
[Test]
|
|
public void ColumnBreaksNotShiftWhenInsertedColumnAfter()
|
|
{
|
|
var wb = new XLWorkbook();
|
|
IXLWorksheet sheet = wb.AddWorksheet("Sheet1");
|
|
|
|
sheet.PageSetup.AddVerticalPageBreak(10);
|
|
sheet.Column(15).InsertColumnsBefore(1);
|
|
Assert.AreEqual(10, sheet.PageSetup.ColumnBreaks[0]);
|
|
}
|
|
}
|
|
} |