-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathfile_test.go
65 lines (57 loc) · 1.21 KB
/
file_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package xlsxtra_test
import (
"testing"
"github.com/stanim/xlsxtra"
)
var sheetNames = []string{"sheet_test.go", "sort_test.go"}
func newFile(t *testing.T) *xlsxtra.File {
f := xlsxtra.NewFile()
for _, name := range sheetNames {
_, err := f.AddSheet(name)
if err != nil {
t.Fatal(err)
}
}
return f
}
func TestFile_AddSheet(t *testing.T) {
f := xlsxtra.NewFile()
_, _ = f.AddSheet("name")
_, err := f.AddSheet("name")
if err == nil {
t.Fatalf(
"Adding 2 sheets with same name should give an error")
}
}
func TestFile_SheetByIndex(t *testing.T) {
f := xlsxtra.NewFile()
_, err := f.AddSheet("name")
if err != nil {
t.Fatal(err)
}
sheet := f.SheetByIndex(0)
if sheet.Name != "name" {
t.Fatalf("got %q; want \"name\"", sheet.Name)
}
}
func TestFile_SheetRange(t *testing.T) {
f := newFile(t)
sheets := f.SheetRange(-2, -2)
if len(sheets) != 1 {
t.Fatal("Expected only one sheet")
}
if sheets[0].Name != sheetNames[0] {
t.Fatalf("got %q; want %q",
sheets[0].Name, sheetNames[0])
}
}
func TestFile_SheetMap(t *testing.T) {
f := newFile(t)
sheetMap := f.SheetMap()
for _, name := range sheetNames {
_, ok := sheetMap[name]
if !ok {
t.Fatalf("Expected sheet %q", name)
}
}
}