From fcca8a38389c7a7f99639dc142b9b10c827ac7ce Mon Sep 17 00:00:00 2001 From: Ted <37789839+Theodoree@users.noreply.github.com> Date: Tue, 3 Nov 2020 17:48:37 +0800 Subject: optimize memory allocation (#722) * optimize marshal * optimize mem alloc * add benchmark testing * add NewSheetWithRowNum testing * sync struct fields order * add BenchmarkNewSheetWithStreamWriter * delete NewSheetWithRowNum and benchmark test --- sheet_test.go | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'sheet_test.go') diff --git a/sheet_test.go b/sheet_test.go index 1a59b65..4626003 100644 --- a/sheet_test.go +++ b/sheet_test.go @@ -3,6 +3,7 @@ package excelize import ( "fmt" "path/filepath" + "strconv" "strings" "testing" @@ -344,3 +345,36 @@ func TestSetSheetName(t *testing.T) { f.SetSheetName("Sheet1", "Sheet1") assert.Equal(t, "Sheet1", f.GetSheetName(0)) } + +func BenchmarkNewSheet(b *testing.B) { + b.RunParallel(func(pb *testing.PB) { + for pb.Next() { + newSheetWithSet() + } + }) +} +func newSheetWithSet() { + file := NewFile() + file.NewSheet("sheet1") + for i := 0; i < 1000; i++ { + file.SetCellInt("sheet1", "A"+strconv.Itoa(i+1), i) + } + file = nil +} + +func BenchmarkFile_SaveAs(b *testing.B) { + b.RunParallel(func(pb *testing.PB) { + for pb.Next() { + newSheetWithSave() + } + + }) +} +func newSheetWithSave() { + file := NewFile() + file.NewSheet("sheet1") + for i := 0; i < 1000; i++ { + file.SetCellInt("sheet1", "A"+strconv.Itoa(i+1), i) + } + file.Save() +} -- cgit v1.2.1