forked from JanKallman/EPPlus
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathExcelRangeBaseTest.cs
93 lines (90 loc) · 4.75 KB
/
ExcelRangeBaseTest.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
using Microsoft.VisualStudio.TestTools.UnitTesting;
using OfficeOpenXml;
namespace EPPlusTest
{
[TestClass]
public class ExcelRangeBaseTest : TestBase
{
[TestMethod]
public void CopyCopiesCommentsFromSingleCellRanges()
{
InitBase();
var pck = new ExcelPackage();
var ws1 = pck.Workbook.Worksheets.Add("CommentCopying");
var sourceExcelRange = ws1.Cells[3, 3];
Assert.IsNull(sourceExcelRange.Comment);
sourceExcelRange.AddComment("Testing comment 1", "test1");
Assert.AreEqual("test1", sourceExcelRange.Comment.Author);
Assert.AreEqual("Testing comment 1", sourceExcelRange.Comment.Text);
var destinationExcelRange = ws1.Cells[5, 5];
Assert.IsNull(destinationExcelRange.Comment);
sourceExcelRange.Copy(destinationExcelRange);
// Assert the original comment is intact.
Assert.AreEqual("test1", sourceExcelRange.Comment.Author);
Assert.AreEqual("Testing comment 1", sourceExcelRange.Comment.Text);
// Assert the comment was copied.
Assert.AreEqual("test1", destinationExcelRange.Comment.Author);
Assert.AreEqual("Testing comment 1", destinationExcelRange.Comment.Text);
}
[TestMethod]
public void CopyCopiesCommentsFromMultiCellRanges()
{
InitBase();
var pck = new ExcelPackage();
var ws1 = pck.Workbook.Worksheets.Add("CommentCopying");
var sourceExcelRangeC3 = ws1.Cells[3, 3];
var sourceExcelRangeD3 = ws1.Cells[3, 4];
var sourceExcelRangeE3 = ws1.Cells[3, 5];
Assert.IsNull(sourceExcelRangeC3.Comment);
Assert.IsNull(sourceExcelRangeD3.Comment);
Assert.IsNull(sourceExcelRangeE3.Comment);
sourceExcelRangeC3.AddComment("Testing comment 1", "test1");
sourceExcelRangeD3.AddComment("Testing comment 2", "test1");
sourceExcelRangeE3.AddComment("Testing comment 3", "test1");
Assert.AreEqual("test1", sourceExcelRangeC3.Comment.Author);
Assert.AreEqual("Testing comment 1", sourceExcelRangeC3.Comment.Text);
Assert.AreEqual("test1", sourceExcelRangeD3.Comment.Author);
Assert.AreEqual("Testing comment 2", sourceExcelRangeD3.Comment.Text);
Assert.AreEqual("test1", sourceExcelRangeE3.Comment.Author);
Assert.AreEqual("Testing comment 3", sourceExcelRangeE3.Comment.Text);
// Copy the full row to capture each cell at once.
Assert.IsNull(ws1.Cells[5, 3].Comment);
Assert.IsNull(ws1.Cells[5, 4].Comment);
Assert.IsNull(ws1.Cells[5, 5].Comment);
ws1.Cells["3:3"].Copy(ws1.Cells["5:5"]);
// Assert the original comments are intact.
Assert.AreEqual("test1", sourceExcelRangeC3.Comment.Author);
Assert.AreEqual("Testing comment 1", sourceExcelRangeC3.Comment.Text);
Assert.AreEqual("test1", sourceExcelRangeD3.Comment.Author);
Assert.AreEqual("Testing comment 2", sourceExcelRangeD3.Comment.Text);
Assert.AreEqual("test1", sourceExcelRangeE3.Comment.Author);
Assert.AreEqual("Testing comment 3", sourceExcelRangeE3.Comment.Text);
// Assert the comments were copied.
var destinationExcelRangeC5 = ws1.Cells[5, 3];
var destinationExcelRangeD5 = ws1.Cells[5, 4];
var destinationExcelRangeE5 = ws1.Cells[5, 5];
Assert.AreEqual("test1", destinationExcelRangeC5.Comment.Author);
Assert.AreEqual("Testing comment 1", destinationExcelRangeC5.Comment.Text);
Assert.AreEqual("test1", destinationExcelRangeD5.Comment.Author);
Assert.AreEqual("Testing comment 2", destinationExcelRangeD5.Comment.Text);
Assert.AreEqual("test1", destinationExcelRangeE5.Comment.Author);
Assert.AreEqual("Testing comment 3", destinationExcelRangeE5.Comment.Text);
}
[TestMethod]
public void SettingAddressHandlesMultiAddresses()
{
using (ExcelPackage package = new ExcelPackage())
{
var worksheet = package.Workbook.Worksheets.Add("Sheet1");
var name = package.Workbook.Names.Add("Test", worksheet.Cells[3, 3]);
name.Address = "Sheet1!C3";
name.Address = "Sheet1!D3";
Assert.IsNull(name.Addresses);
name.Address = "C3:D3,E3:F3";
Assert.IsNotNull(name.Addresses);
name.Address = "Sheet1!C3";
Assert.IsNull(name.Addresses);
}
}
}
}