summaryrefslogtreecommitdiff
path: root/excelize_test.go
diff options
context:
space:
mode:
authorxuri <xuri.me@gmail.com>2022-01-23 00:32:34 +0800
committerxuri <xuri.me@gmail.com>2022-01-23 00:48:26 +0800
commit3ee3c38f9c63de3782fad21aae9c05ee0530fc32 (patch)
tree153928b23d79d259f6030cd902c836162f84e345 /excelize_test.go
parent74f6ea94eae45c8fb89a23cc94802e57ce279a84 (diff)
Fix file corrupted in some cases, check file extension and format code
Fix file corrupted when save as in XLAM / XLSM / XLTM / XLTX extension in some case New exported error ErrWorkbookExt has been added, and check file extension on save the workbook Format source code with `gofumpt`
Diffstat (limited to 'excelize_test.go')
-rw-r--r--excelize_test.go10
1 files changed, 7 insertions, 3 deletions
diff --git a/excelize_test.go b/excelize_test.go
index c78797d..1548cc6 100644
--- a/excelize_test.go
+++ b/excelize_test.go
@@ -175,7 +175,10 @@ func TestSaveFile(t *testing.T) {
if !assert.NoError(t, err) {
t.FailNow()
}
- assert.NoError(t, f.SaveAs(filepath.Join("test", "TestSaveFile.xlsx")))
+ assert.EqualError(t, f.SaveAs(filepath.Join("test", "TestSaveFile.xlsb")), ErrWorkbookExt.Error())
+ for _, ext := range []string{".xlam", ".xlsm", ".xlsx", ".xltm", ".xltx"} {
+ assert.NoError(t, f.SaveAs(filepath.Join("test", fmt.Sprintf("TestSaveFile%s", ext))))
+ }
assert.NoError(t, f.Close())
f, err = OpenFile(filepath.Join("test", "TestSaveFile.xlsx"))
if !assert.NoError(t, err) {
@@ -189,7 +192,7 @@ func TestSaveAsWrongPath(t *testing.T) {
f, err := OpenFile(filepath.Join("test", "Book1.xlsx"))
assert.NoError(t, err)
// Test write file to not exist directory.
- assert.EqualError(t, f.SaveAs(""), "open .: is a directory")
+ assert.Error(t, f.SaveAs(filepath.Join("x", "Book1.xlsx")))
assert.NoError(t, f.Close())
}
@@ -1305,7 +1308,8 @@ func TestDeleteSheetFromWorkbookRels(t *testing.T) {
func TestAttrValToInt(t *testing.T) {
_, err := attrValToInt("r", []xml.Attr{
- {Name: xml.Name{Local: "r"}, Value: "s"}})
+ {Name: xml.Name{Local: "r"}, Value: "s"},
+ })
assert.EqualError(t, err, `strconv.Atoi: parsing "s": invalid syntax`)
}