diff options
Diffstat (limited to 'sheet_test.go')
-rw-r--r-- | sheet_test.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/sheet_test.go b/sheet_test.go index 93a4ab6..d33ba99 100644 --- a/sheet_test.go +++ b/sheet_test.go @@ -196,6 +196,24 @@ func TestSearchSheet(t *testing.T) { assert.NoError(t, f.SetCellValue("Sheet1", "A1", true)) _, err = f.SearchSheet("Sheet1", "") assert.NoError(t, err) + + f = NewFile() + f.Sheet.Delete("xl/worksheets/sheet1.xml") + f.Pkg.Store("xl/worksheets/sheet1.xml", []byte(`<worksheet><sheetData><row r="A"><c r="2" t="str"><v>A</v></c></row></sheetData></worksheet>`)) + f.checked = nil + result, err = f.SearchSheet("Sheet1", "A") + assert.EqualError(t, err, "strconv.Atoi: parsing \"A\": invalid syntax") + assert.Equal(t, []string(nil), result) + + f.Pkg.Store("xl/worksheets/sheet1.xml", []byte(`<worksheet><sheetData><row r="2"><c r="A" t="str"><v>A</v></c></row></sheetData></worksheet>`)) + result, err = f.SearchSheet("Sheet1", "A") + assert.EqualError(t, err, "cannot convert cell \"A\" to coordinates: invalid cell name \"A\"") + assert.Equal(t, []string(nil), result) + + f.Pkg.Store("xl/worksheets/sheet1.xml", []byte(`<worksheet><sheetData><row r="0"><c r="A1" t="str"><v>A</v></c></row></sheetData></worksheet>`)) + result, err = f.SearchSheet("Sheet1", "A") + assert.EqualError(t, err, "invalid cell coordinates [1, 0]") + assert.Equal(t, []string(nil), result) } func TestSetPageLayout(t *testing.T) { @@ -370,6 +388,14 @@ func TestSetActiveSheet(t *testing.T) { f = NewFile() f.SetActiveSheet(-1) assert.Equal(t, f.GetActiveSheetIndex(), 0) + + f = NewFile() + f.WorkBook.BookViews = nil + idx := f.NewSheet("Sheet2") + ws, ok = f.Sheet.Load("xl/worksheets/sheet2.xml") + assert.True(t, ok) + ws.(*xlsxWorksheet).SheetViews = &xlsxSheetViews{SheetView: []xlsxSheetView{}} + f.SetActiveSheet(idx) } func TestSetSheetName(t *testing.T) { @@ -414,6 +440,11 @@ func TestDeleteSheet(t *testing.T) { assert.NoError(t, f.SaveAs(filepath.Join("test", "TestDeleteSheet2.xlsx"))) } +func TestDeleteAndAdjustDefinedNames(t *testing.T) { + deleteAndAdjustDefinedNames(nil, 0) + deleteAndAdjustDefinedNames(&xlsxWorkbook{}, 0) +} + func BenchmarkNewSheet(b *testing.B) { b.RunParallel(func(pb *testing.PB) { for pb.Next() { |