summaryrefslogtreecommitdiff
path: root/excelize_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'excelize_test.go')
-rw-r--r--excelize_test.go28
1 files changed, 25 insertions, 3 deletions
diff --git a/excelize_test.go b/excelize_test.go
index 02abce5..f556d83 100644
--- a/excelize_test.go
+++ b/excelize_test.go
@@ -167,6 +167,7 @@ func TestOpenFile(t *testing.T) {
}
assert.NoError(t, f.SaveAs(filepath.Join("test", "TestOpenFile.xlsx")))
assert.EqualError(t, f.SaveAs(filepath.Join("test", strings.Repeat("c", 199), ".xlsx")), ErrMaxFileNameLength.Error())
+ assert.NoError(t, f.Close())
}
func TestSaveFile(t *testing.T) {
@@ -175,11 +176,13 @@ func TestSaveFile(t *testing.T) {
t.FailNow()
}
assert.NoError(t, f.SaveAs(filepath.Join("test", "TestSaveFile.xlsx")))
+ assert.NoError(t, f.Close())
f, err = OpenFile(filepath.Join("test", "TestSaveFile.xlsx"))
if !assert.NoError(t, err) {
t.FailNow()
}
assert.NoError(t, f.Save())
+ assert.NoError(t, f.Close())
}
func TestSaveAsWrongPath(t *testing.T) {
@@ -187,6 +190,7 @@ func TestSaveAsWrongPath(t *testing.T) {
assert.NoError(t, err)
// Test write file to not exist directory.
assert.EqualError(t, f.SaveAs(""), "open .: is a directory")
+ assert.NoError(t, f.Close())
}
func TestCharsetTranscoder(t *testing.T) {
@@ -197,7 +201,7 @@ func TestCharsetTranscoder(t *testing.T) {
func TestOpenReader(t *testing.T) {
_, err := OpenReader(strings.NewReader(""))
assert.EqualError(t, err, "zip: not a valid zip file")
- _, err = OpenReader(bytes.NewReader(oleIdentifier), Options{Password: "password"})
+ _, err = OpenReader(bytes.NewReader(oleIdentifier), Options{Password: "password", WorksheetUnzipMemLimit: UnzipSizeLimit + 1})
assert.EqualError(t, err, "decrypted file failed")
// Test open spreadsheet with unzip size limit.
@@ -210,6 +214,7 @@ func TestOpenReader(t *testing.T) {
val, err := f.GetCellValue("Sheet1", "A1")
assert.NoError(t, err)
assert.Equal(t, "SECRET", val)
+ assert.NoError(t, f.Close())
// Test open password protected spreadsheet created by LibreOffice 7.0.0.3.
f, err = OpenFile(filepath.Join("test", "encryptAES.xlsx"), Options{Password: "password"})
@@ -217,6 +222,11 @@ func TestOpenReader(t *testing.T) {
val, err = f.GetCellValue("Sheet1", "A1")
assert.NoError(t, err)
assert.Equal(t, "SECRET", val)
+ assert.NoError(t, f.Close())
+
+ // Test open spreadsheet with invalid optioins.
+ _, err = OpenReader(bytes.NewReader(oleIdentifier), Options{UnzipSizeLimit: 1, WorksheetUnzipMemLimit: 2})
+ assert.EqualError(t, err, ErrOptionsUnzipSizeLimit.Error())
// Test unexpected EOF.
var b bytes.Buffer
@@ -266,6 +276,7 @@ func TestBrokenFile(t *testing.T) {
f3.GetActiveSheetIndex()
f3.SetActiveSheet(1)
assert.NoError(t, err)
+ assert.NoError(t, f3.Close())
})
t.Run("OpenNotExistsFile", func(t *testing.T) {
@@ -340,6 +351,7 @@ func TestSetCellHyperLink(t *testing.T) {
assert.EqualError(t, f.SetCellHyperLink("Sheet2", "", "Sheet1!D60", "Location"), `invalid cell name ""`)
assert.NoError(t, f.SaveAs(filepath.Join("test", "TestSetCellHyperLink.xlsx")))
+ assert.NoError(t, f.Close())
f = NewFile()
_, err = f.workSheetReader("Sheet1")
@@ -377,6 +389,7 @@ func TestGetCellHyperLink(t *testing.T) {
link, target, err = f.GetCellHyperLink("Sheet3", "H3")
assert.EqualError(t, err, "sheet Sheet3 is not exist")
t.Log(link, target)
+ assert.NoError(t, f.Close())
f = NewFile()
_, err = f.workSheetReader("Sheet1")
@@ -398,7 +411,6 @@ func TestGetCellHyperLink(t *testing.T) {
assert.EqualError(t, err, `cannot convert cell "A" to coordinates: invalid cell name "A"`)
assert.Equal(t, link, false)
assert.Equal(t, target, "")
-
}
func TestSetSheetBackground(t *testing.T) {
@@ -418,6 +430,7 @@ func TestSetSheetBackground(t *testing.T) {
}
assert.NoError(t, f.SaveAs(filepath.Join("test", "TestSetSheetBackground.xlsx")))
+ assert.NoError(t, f.Close())
}
func TestSetSheetBackgroundErrors(t *testing.T) {
@@ -433,6 +446,7 @@ func TestSetSheetBackgroundErrors(t *testing.T) {
err = f.SetSheetBackground("Sheet2", filepath.Join("test", "Book1.xlsx"))
assert.EqualError(t, err, ErrImgExt.Error())
+ assert.NoError(t, f.Close())
}
// TestWriteArrayFormula tests the extended options of SetCellFormula by writing an array function
@@ -1052,6 +1066,7 @@ func TestConditionalFormat(t *testing.T) {
if !assert.NoError(t, err) {
t.FailNow()
}
+ assert.NoError(t, f.Close())
}
func TestConditionalFormatError(t *testing.T) {
@@ -1082,6 +1097,7 @@ func TestSharedStrings(t *testing.T) {
t.FailNow()
}
assert.Equal(t, "Test Weight (Kgs)", rows[0][0])
+ assert.NoError(t, f.Close())
}
func TestSetSheetRow(t *testing.T) {
@@ -1098,6 +1114,7 @@ func TestSetSheetRow(t *testing.T) {
assert.EqualError(t, f.SetSheetRow("Sheet1", "B27", []interface{}{}), ErrParameterInvalid.Error())
assert.EqualError(t, f.SetSheetRow("Sheet1", "B27", &f), ErrParameterInvalid.Error())
assert.NoError(t, f.SaveAs(filepath.Join("test", "TestSetSheetRow.xlsx")))
+ assert.NoError(t, f.Close())
}
func TestHSL(t *testing.T) {
@@ -1155,6 +1172,7 @@ func TestUnprotectSheet(t *testing.T) {
assert.NoError(t, f.UnprotectSheet("Sheet1"))
assert.NoError(t, f.SaveAs(filepath.Join("test", "TestUnprotectSheet.xlsx")))
+ assert.NoError(t, f.Close())
}
func TestSetDefaultTimeStyle(t *testing.T) {
@@ -1323,7 +1341,11 @@ func fillCells(f *File, sheet string, colCount, rowCount int) {
func BenchmarkOpenFile(b *testing.B) {
for i := 0; i < b.N; i++ {
- if _, err := OpenFile(filepath.Join("test", "Book1.xlsx")); err != nil {
+ f, err := OpenFile(filepath.Join("test", "Book1.xlsx"))
+ if err != nil {
+ b.Error(err)
+ }
+ if err := f.Close(); err != nil {
b.Error(err)
}
}