summaryrefslogtreecommitdiff
path: root/file_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'file_test.go')
-rw-r--r--file_test.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/file_test.go b/file_test.go
index 8c5050c..e27b754 100644
--- a/file_test.go
+++ b/file_test.go
@@ -1,7 +1,12 @@
package excelize
import (
+ "bufio"
+ "bytes"
+ "strings"
"testing"
+
+ "github.com/stretchr/testify/assert"
)
func BenchmarkWrite(b *testing.B) {
@@ -26,3 +31,18 @@ func BenchmarkWrite(b *testing.B) {
}
}
}
+
+func TestWriteTo(t *testing.T) {
+ f := File{}
+ buf := bytes.Buffer{}
+ f.XLSX = make(map[string][]byte, 0)
+ f.XLSX["/d/"] = []byte("s")
+ _, err := f.WriteTo(bufio.NewWriter(&buf))
+ assert.EqualError(t, err, "zip: write to directory")
+ delete(f.XLSX, "/d/")
+ // Test file path overflow
+ const maxUint16 = 1<<16 - 1
+ f.XLSX[strings.Repeat("s", maxUint16+1)] = nil
+ _, err = f.WriteTo(bufio.NewWriter(&buf))
+ assert.EqualError(t, err, "zip: FileHeader.Name too long")
+}