Add unit test case
This commit is contained in:
parent
3ce4b91be9
commit
736362694a
|
@ -4,7 +4,6 @@ install:
|
||||||
- go get -d -t -v ./... && go build -v ./...
|
- go get -d -t -v ./... && go build -v ./...
|
||||||
|
|
||||||
go:
|
go:
|
||||||
- 1.10.x
|
|
||||||
- 1.11.x
|
- 1.11.x
|
||||||
- 1.12.x
|
- 1.12.x
|
||||||
- 1.13.x
|
- 1.13.x
|
||||||
|
|
20
file_test.go
20
file_test.go
|
@ -1,7 +1,12 @@
|
||||||
package excelize
|
package excelize
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bufio"
|
||||||
|
"bytes"
|
||||||
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
"github.com/stretchr/testify/assert"
|
||||||
)
|
)
|
||||||
|
|
||||||
func BenchmarkWrite(b *testing.B) {
|
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")
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue