summaryrefslogtreecommitdiff
path: root/pivotTable_test.go
diff options
context:
space:
mode:
authorxuri <xuri.me@gmail.com>2020-04-10 00:04:23 +0800
committerxuri <xuri.me@gmail.com>2020-04-10 00:08:17 +0800
commit10115b5d889bb229d8707803b9413b20fe798588 (patch)
tree5ab719ea216a95580556c957a1568eb93f0ef43f /pivotTable_test.go
parente36650f4ffd3e305d2c3834620f97ec382cf6faf (diff)
- Resolve #611, fix failure BenchmarkSetCellValue
- Allow empty filter, data, and rows in the pivot table - Add more test case for pivot table
Diffstat (limited to 'pivotTable_test.go')
-rw-r--r--pivotTable_test.go40
1 files changed, 40 insertions, 0 deletions
diff --git a/pivotTable_test.go b/pivotTable_test.go
index 767206b..cc80835 100644
--- a/pivotTable_test.go
+++ b/pivotTable_test.go
@@ -179,6 +179,46 @@ func TestAddPivotTable(t *testing.T) {
assert.EqualError(t, err, `parameter 'DataRange' parsing error: parameter is required`)
}
+func TestAddPivotRowFields(t *testing.T) {
+ f := NewFile()
+ // Test invalid data range
+ assert.EqualError(t, f.addPivotRowFields(&xlsxPivotTableDefinition{}, &PivotTableOption{
+ DataRange: "Sheet1!$A$1:$A$1",
+ }), `parameter 'DataRange' parsing error: parameter is invalid`)
+}
+
+func TestAddPivotPageFields(t *testing.T) {
+ f := NewFile()
+ // Test invalid data range
+ assert.EqualError(t, f.addPivotPageFields(&xlsxPivotTableDefinition{}, &PivotTableOption{
+ DataRange: "Sheet1!$A$1:$A$1",
+ }), `parameter 'DataRange' parsing error: parameter is invalid`)
+}
+
+func TestAddPivotDataFields(t *testing.T) {
+ f := NewFile()
+ // Test invalid data range
+ assert.EqualError(t, f.addPivotDataFields(&xlsxPivotTableDefinition{}, &PivotTableOption{
+ DataRange: "Sheet1!$A$1:$A$1",
+ }), `parameter 'DataRange' parsing error: parameter is invalid`)
+}
+
+func TestAddPivotColFields(t *testing.T) {
+ f := NewFile()
+ // Test invalid data range
+ assert.EqualError(t, f.addPivotColFields(&xlsxPivotTableDefinition{}, &PivotTableOption{
+ DataRange: "Sheet1!$A$1:$A$1",
+ Columns: []PivotTableField{{Data: "Type"}},
+ }), `parameter 'DataRange' parsing error: parameter is invalid`)
+}
+
+func TestGetPivotFieldsOrder(t *testing.T) {
+ f := NewFile()
+ // Test get pivot fields order with not exist worksheet
+ _, err := f.getPivotFieldsOrder("SheetN!$A$1:$E$31")
+ assert.EqualError(t, err, "sheet SheetN is not exist")
+}
+
func TestInStrSlice(t *testing.T) {
assert.EqualValues(t, -1, inStrSlice([]string{}, ""))
}