summaryrefslogtreecommitdiff
path: root/rows_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'rows_test.go')
-rw-r--r--rows_test.go175
1 files changed, 98 insertions, 77 deletions
diff --git a/rows_test.go b/rows_test.go
index 50e26dd..53c0677 100644
--- a/rows_test.go
+++ b/rows_test.go
@@ -23,13 +23,16 @@ func TestRows(t *testing.T) {
collectedRows := make([][]string, 0)
for rows.Next() {
- collectedRows = append(collectedRows, trimSliceSpace(rows.Columns()))
+ columns, err := rows.Columns()
+ assert.NoError(t, err)
+ collectedRows = append(collectedRows, trimSliceSpace(columns))
}
if !assert.NoError(t, rows.Error()) {
t.FailNow()
}
- returnedRows := xlsx.GetRows(sheet2)
+ returnedRows, err := xlsx.GetRows(sheet2)
+ assert.NoError(t, err)
for i := range returnedRows {
returnedRows[i] = trimSliceSpace(returnedRows[i])
}
@@ -54,21 +57,22 @@ func TestRowHeight(t *testing.T) {
xlsx := NewFile()
sheet1 := xlsx.GetSheetName(1)
- assert.Panics(t, func() {
- xlsx.SetRowHeight(sheet1, 0, defaultRowHeightPixels+1.0)
- })
+ assert.EqualError(t, xlsx.SetRowHeight(sheet1, 0, defaultRowHeightPixels+1.0), "invalid row number 0")
- assert.Panics(t, func() {
- xlsx.GetRowHeight("Sheet1", 0)
- })
+ height, err := xlsx.GetRowHeight("Sheet1", 0)
+ assert.EqualError(t, err, "invalid row number 0")
- xlsx.SetRowHeight(sheet1, 1, 111.0)
- assert.Equal(t, 111.0, xlsx.GetRowHeight(sheet1, 1))
+ assert.NoError(t, xlsx.SetRowHeight(sheet1, 1, 111.0))
+ height, err = xlsx.GetRowHeight(sheet1, 1)
+ assert.NoError(t, err)
+ assert.Equal(t, 111.0, height)
- xlsx.SetRowHeight(sheet1, 4, 444.0)
- assert.Equal(t, 444.0, xlsx.GetRowHeight(sheet1, 4))
+ assert.NoError(t, xlsx.SetRowHeight(sheet1, 4, 444.0))
+ height, err = xlsx.GetRowHeight(sheet1, 4)
+ assert.NoError(t, err)
+ assert.Equal(t, 444.0, height)
- err := xlsx.SaveAs(filepath.Join("test", "TestRowHeight.xlsx"))
+ err = xlsx.SaveAs(filepath.Join("test", "TestRowHeight.xlsx"))
if !assert.NoError(t, err) {
t.FailNow()
}
@@ -86,13 +90,11 @@ func TestRowVisibility(t *testing.T) {
xlsx.SetRowVisible("Sheet3", 2, true)
xlsx.GetRowVisible("Sheet3", 2)
- assert.Panics(t, func() {
- xlsx.SetRowVisible("Sheet3", 0, true)
- })
+ assert.EqualError(t, xlsx.SetRowVisible("Sheet3", 0, true), "invalid row number 0")
- assert.Panics(t, func() {
- xlsx.GetRowVisible("Sheet3", 0)
- })
+ visible, err := xlsx.GetRowVisible("Sheet3", 0)
+ assert.Equal(t, false, visible)
+ assert.EqualError(t, err, "invalid row number 0")
assert.NoError(t, xlsx.SaveAs(filepath.Join("test", "TestRowVisibility.xlsx")))
}
@@ -110,27 +112,23 @@ func TestRemoveRow(t *testing.T) {
xlsx.SetCellHyperLink(sheet1, "A5", "https://github.com/360EntSecGroup-Skylar/excelize", "External")
- assert.Panics(t, func() {
- xlsx.RemoveRow(sheet1, -1)
- })
+ assert.EqualError(t, xlsx.RemoveRow(sheet1, -1), "invalid row number -1")
- assert.Panics(t, func() {
- xlsx.RemoveRow(sheet1, 0)
- })
+ assert.EqualError(t, xlsx.RemoveRow(sheet1, 0), "invalid row number 0")
- xlsx.RemoveRow(sheet1, 4)
+ assert.NoError(t, xlsx.RemoveRow(sheet1, 4))
if !assert.Len(t, r.SheetData.Row, rowCount-1) {
t.FailNow()
}
xlsx.MergeCell(sheet1, "B3", "B5")
- xlsx.RemoveRow(sheet1, 2)
+ assert.NoError(t, xlsx.RemoveRow(sheet1, 2))
if !assert.Len(t, r.SheetData.Row, rowCount-2) {
t.FailNow()
}
- xlsx.RemoveRow(sheet1, 4)
+ assert.NoError(t, xlsx.RemoveRow(sheet1, 4))
if !assert.Len(t, r.SheetData.Row, rowCount-3) {
t.FailNow()
}
@@ -140,17 +138,17 @@ func TestRemoveRow(t *testing.T) {
t.FailNow()
}
- xlsx.RemoveRow(sheet1, 1)
+ assert.NoError(t, xlsx.RemoveRow(sheet1, 1))
if !assert.Len(t, r.SheetData.Row, rowCount-4) {
t.FailNow()
}
- xlsx.RemoveRow(sheet1, 2)
+ assert.NoError(t, xlsx.RemoveRow(sheet1, 2))
if !assert.Len(t, r.SheetData.Row, rowCount-5) {
t.FailNow()
}
- xlsx.RemoveRow(sheet1, 1)
+ assert.NoError(t, xlsx.RemoveRow(sheet1, 1))
if !assert.Len(t, r.SheetData.Row, rowCount-6) {
t.FailNow()
}
@@ -171,20 +169,16 @@ func TestInsertRow(t *testing.T) {
xlsx.SetCellHyperLink(sheet1, "A5", "https://github.com/360EntSecGroup-Skylar/excelize", "External")
- assert.Panics(t, func() {
- xlsx.InsertRow(sheet1, -1)
- })
+ assert.EqualError(t, xlsx.InsertRow(sheet1, -1), "invalid row number -1")
- assert.Panics(t, func() {
- xlsx.InsertRow(sheet1, 0)
- })
+ assert.EqualError(t, xlsx.InsertRow(sheet1, 0), "invalid row number 0")
- xlsx.InsertRow(sheet1, 1)
+ assert.NoError(t, xlsx.InsertRow(sheet1, 1))
if !assert.Len(t, r.SheetData.Row, rowCount+1) {
t.FailNow()
}
- xlsx.InsertRow(sheet1, 4)
+ assert.NoError(t, xlsx.InsertRow(sheet1, 4))
if !assert.Len(t, r.SheetData.Row, rowCount+2) {
t.FailNow()
}
@@ -198,11 +192,11 @@ func TestInsertRowInEmptyFile(t *testing.T) {
xlsx := NewFile()
sheet1 := xlsx.GetSheetName(1)
r := xlsx.workSheetReader(sheet1)
- xlsx.InsertRow(sheet1, 1)
+ assert.NoError(t, xlsx.InsertRow(sheet1, 1))
assert.Len(t, r.SheetData.Row, 0)
- xlsx.InsertRow(sheet1, 2)
+ assert.NoError(t, xlsx.InsertRow(sheet1, 2))
assert.Len(t, r.SheetData.Row, 0)
- xlsx.InsertRow(sheet1, 99)
+ assert.NoError(t, xlsx.InsertRow(sheet1, 99))
assert.Len(t, r.SheetData.Row, 0)
assert.NoError(t, xlsx.SaveAs(filepath.Join("test", "TestInsertRowInEmptyFile.xlsx")))
}
@@ -234,7 +228,7 @@ func TestDuplicateRow(t *testing.T) {
xlsx.SetCellStr(sheet, "A1", cells["A1"])
xlsx.SetCellStr(sheet, "B1", cells["B1"])
- xlsx.DuplicateRow(sheet, 1)
+ assert.NoError(t, xlsx.DuplicateRow(sheet, 1))
if !assert.NoError(t, xlsx.SaveAs(fmt.Sprintf(outFile, "TestDuplicateRow.FromSingleRow_1"))) {
t.FailNow()
}
@@ -243,12 +237,14 @@ func TestDuplicateRow(t *testing.T) {
"A2": cells["A1"], "B2": cells["B1"],
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell), cell) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v, cell) {
t.FailNow()
}
}
- xlsx.DuplicateRow(sheet, 2)
+ assert.NoError(t, xlsx.DuplicateRow(sheet, 2))
if !assert.NoError(t, xlsx.SaveAs(fmt.Sprintf(outFile, "TestDuplicateRow.FromSingleRow_2"))) {
t.FailNow()
}
@@ -258,7 +254,9 @@ func TestDuplicateRow(t *testing.T) {
"A3": cells["A1"], "B3": cells["B1"],
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell), cell) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v, cell) {
t.FailNow()
}
}
@@ -269,7 +267,7 @@ func TestDuplicateRow(t *testing.T) {
xlsx.SetCellStr(sheet, "A1", cells["A1"])
xlsx.SetCellStr(sheet, "B1", cells["B1"])
- xlsx.DuplicateRow(sheet, 1)
+ assert.NoError(t, xlsx.DuplicateRow(sheet, 1))
xlsx.SetCellStr(sheet, "A2", cells["A2"])
xlsx.SetCellStr(sheet, "B2", cells["B2"])
@@ -282,7 +280,9 @@ func TestDuplicateRow(t *testing.T) {
"A2": cells["A2"], "B2": cells["B2"],
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell), cell) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v, cell) {
t.FailNow()
}
}
@@ -291,7 +291,7 @@ func TestDuplicateRow(t *testing.T) {
t.Run("FirstOfMultipleRows", func(t *testing.T) {
xlsx := newFileWithDefaults()
- xlsx.DuplicateRow(sheet, 1)
+ assert.NoError(t, xlsx.DuplicateRow(sheet, 1))
if !assert.NoError(t, xlsx.SaveAs(fmt.Sprintf(outFile, "TestDuplicateRow.FirstOfMultipleRows"))) {
t.FailNow()
@@ -303,7 +303,9 @@ func TestDuplicateRow(t *testing.T) {
"A4": cells["A3"], "B4": cells["B3"],
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell), cell) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v, cell) {
t.FailNow()
}
}
@@ -312,26 +314,35 @@ func TestDuplicateRow(t *testing.T) {
t.Run("ZeroWithNoRows", func(t *testing.T) {
xlsx := NewFile()
- assert.Panics(t, func() {
- xlsx.DuplicateRow(sheet, 0)
- })
+ assert.EqualError(t, xlsx.DuplicateRow(sheet, 0), "invalid row number 0")
if !assert.NoError(t, xlsx.SaveAs(fmt.Sprintf(outFile, "TestDuplicateRow.ZeroWithNoRows"))) {
t.FailNow()
}
- assert.Equal(t, "", xlsx.GetCellValue(sheet, "A1"))
- assert.Equal(t, "", xlsx.GetCellValue(sheet, "B1"))
- assert.Equal(t, "", xlsx.GetCellValue(sheet, "A2"))
- assert.Equal(t, "", xlsx.GetCellValue(sheet, "B2"))
-
+ val, err := xlsx.GetCellValue(sheet, "A1")
+ assert.NoError(t, err)
+ assert.Equal(t, "", val)
+ val, err = xlsx.GetCellValue(sheet, "B1")
+ assert.NoError(t, err)
+ assert.Equal(t, "", val)
+ val, err = xlsx.GetCellValue(sheet, "A2")
+ assert.NoError(t, err)
+ assert.Equal(t, "", val)
+ val, err = xlsx.GetCellValue(sheet, "B2")
+ assert.NoError(t, err)
+ assert.Equal(t, "", val)
+
+ assert.NoError(t, err)
expect := map[string]string{
"A1": "", "B1": "",
"A2": "", "B2": "",
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell), cell) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v, cell) {
t.FailNow()
}
}
@@ -340,7 +351,7 @@ func TestDuplicateRow(t *testing.T) {
t.Run("MiddleRowOfEmptyFile", func(t *testing.T) {
xlsx := NewFile()
- xlsx.DuplicateRow(sheet, 99)
+ assert.NoError(t, xlsx.DuplicateRow(sheet, 99))
if !assert.NoError(t, xlsx.SaveAs(fmt.Sprintf(outFile, "TestDuplicateRow.MiddleRowOfEmptyFile"))) {
t.FailNow()
@@ -351,7 +362,9 @@ func TestDuplicateRow(t *testing.T) {
"A100": "",
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell), cell) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v, cell) {
t.FailNow()
}
}
@@ -360,7 +373,7 @@ func TestDuplicateRow(t *testing.T) {
t.Run("WithLargeOffsetToMiddleOfData", func(t *testing.T) {
xlsx := newFileWithDefaults()
- xlsx.DuplicateRowTo(sheet, 1, 3)
+ assert.NoError(t, xlsx.DuplicateRowTo(sheet, 1, 3))
if !assert.NoError(t, xlsx.SaveAs(fmt.Sprintf(outFile, "TestDuplicateRow.WithLargeOffsetToMiddleOfData"))) {
t.FailNow()
@@ -372,7 +385,9 @@ func TestDuplicateRow(t *testing.T) {
"A4": cells["A3"], "B4": cells["B3"],
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell), cell) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v, cell) {
t.FailNow()
}
}
@@ -381,7 +396,7 @@ func TestDuplicateRow(t *testing.T) {
t.Run("WithLargeOffsetToEmptyRows", func(t *testing.T) {
xlsx := newFileWithDefaults()
- xlsx.DuplicateRowTo(sheet, 1, 7)
+ assert.NoError(t, xlsx.DuplicateRowTo(sheet, 1, 7))
if !assert.NoError(t, xlsx.SaveAs(fmt.Sprintf(outFile, "TestDuplicateRow.WithLargeOffsetToEmptyRows"))) {
t.FailNow()
@@ -393,7 +408,9 @@ func TestDuplicateRow(t *testing.T) {
"A7": cells["A1"], "B7": cells["B1"],
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell), cell) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v, cell) {
t.FailNow()
}
}
@@ -402,7 +419,7 @@ func TestDuplicateRow(t *testing.T) {
t.Run("InsertBefore", func(t *testing.T) {
xlsx := newFileWithDefaults()
- xlsx.DuplicateRowTo(sheet, 2, 1)
+ assert.NoError(t, xlsx.DuplicateRowTo(sheet, 2, 1))
if !assert.NoError(t, xlsx.SaveAs(fmt.Sprintf(outFile, "TestDuplicateRow.InsertBefore"))) {
t.FailNow()
@@ -415,7 +432,9 @@ func TestDuplicateRow(t *testing.T) {
"A4": cells["A3"], "B4": cells["B3"],
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell), cell) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v, cell) {
t.FailNow()
}
}
@@ -424,7 +443,7 @@ func TestDuplicateRow(t *testing.T) {
t.Run("InsertBeforeWithLargeOffset", func(t *testing.T) {
xlsx := newFileWithDefaults()
- xlsx.DuplicateRowTo(sheet, 3, 1)
+ assert.NoError(t, xlsx.DuplicateRowTo(sheet, 3, 1))
if !assert.NoError(t, xlsx.SaveAs(fmt.Sprintf(outFile, "TestDuplicateRow.InsertBeforeWithLargeOffset"))) {
t.FailNow()
@@ -437,7 +456,9 @@ func TestDuplicateRow(t *testing.T) {
"A4": cells["A3"], "B4": cells["B3"],
}
for cell, val := range expect {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, cell)) {
+ v, err := xlsx.GetCellValue(sheet, cell)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v) {
t.FailNow()
}
}
@@ -467,12 +488,12 @@ func TestDuplicateRowInvalidRownum(t *testing.T) {
xlsx.SetCellStr(sheet, col, val)
}
- assert.Panics(t, func() {
- xlsx.DuplicateRow(sheet, row)
- })
+ assert.EqualError(t, xlsx.DuplicateRow(sheet, row), fmt.Sprintf("invalid row number %d", row))
for col, val := range cells {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, col)) {
+ v, err := xlsx.GetCellValue(sheet, col)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v) {
t.FailNow()
}
}
@@ -489,12 +510,12 @@ func TestDuplicateRowInvalidRownum(t *testing.T) {
xlsx.SetCellStr(sheet, col, val)
}
- assert.Panics(t, func() {
- xlsx.DuplicateRowTo(sheet, row1, row2)
- })
+ assert.EqualError(t, xlsx.DuplicateRowTo(sheet, row1, row2), fmt.Sprintf("invalid row number %d", row1))
for col, val := range cells {
- if !assert.Equal(t, val, xlsx.GetCellValue(sheet, col)) {
+ v, err := xlsx.GetCellValue(sheet, col)
+ assert.NoError(t, err)
+ if !assert.Equal(t, val, v) {
t.FailNow()
}
}