summaryrefslogtreecommitdiff
path: root/cellmerged_test.go
diff options
context:
space:
mode:
authorXudong Zhang <zxdvd@users.noreply.github.com>2019-12-13 21:43:59 +0800
committerxuri <xuri.me@gmail.com>2019-12-13 21:43:59 +0800
commit4c433c57e65734094f959d25b50f138a6ca88020 (patch)
treed8245e617b8f8942fe5307c5a477eb5884f7aa5a /cellmerged_test.go
parent5d8365ca17240f5b144d437a7b47052f22c4f3c6 (diff)
Resolve #527, unmerge an area (#528)
Diffstat (limited to 'cellmerged_test.go')
-rw-r--r--cellmerged_test.go36
1 files changed, 36 insertions, 0 deletions
diff --git a/cellmerged_test.go b/cellmerged_test.go
index d53acc2..0c5ac76 100644
--- a/cellmerged_test.go
+++ b/cellmerged_test.go
@@ -52,3 +52,39 @@ func TestGetMergeCells(t *testing.T) {
_, err = f.GetMergeCells("SheetN")
assert.EqualError(t, err, "sheet SheetN is not exist")
}
+
+func TestUnmergeCell(t *testing.T) {
+ f, err := OpenFile(filepath.Join("test", "MergeCell.xlsx"))
+ if !assert.NoError(t, err) {
+ t.FailNow()
+ }
+ sheet1 := f.GetSheetName(1)
+
+ xlsx, err := f.workSheetReader(sheet1)
+ assert.NoError(t, err)
+
+ mergeCellNum := len(xlsx.MergeCells.Cells)
+
+ assert.EqualError(t, f.UnmergeCell("Sheet1", "A", "A"), `cannot convert cell "A" to coordinates: invalid cell name "A"`)
+
+ // unmerge the mergecell that contains A1
+ err = f.UnmergeCell(sheet1, "A1", "A1")
+ assert.NoError(t, err)
+
+ if len(xlsx.MergeCells.Cells) != mergeCellNum-1 {
+ t.FailNow()
+ }
+
+ // unmerge area A7:D3(A3:D7)
+ // this will unmerge all since this area overlaps with all others
+ err = f.UnmergeCell(sheet1, "D7", "A3")
+ assert.NoError(t, err)
+
+ if len(xlsx.MergeCells.Cells) != 0 {
+ t.FailNow()
+ }
+
+ // Test unmerged area on not exists worksheet.
+ err = f.UnmergeCell("SheetN", "A1", "A1")
+ assert.EqualError(t, err, "sheet SheetN is not exist")
+}