From 736362694adff47424726a4e4e2569f8247e7fcf Mon Sep 17 00:00:00 2001 From: xuri Date: Wed, 1 Apr 2020 00:38:12 +0800 Subject: Add unit test case --- file_test.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'file_test.go') 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") +} -- cgit v1.2.1