summaryrefslogtreecommitdiff
path: root/calcchain_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'calcchain_test.go')
-rw-r--r--calcchain_test.go26
1 files changed, 23 insertions, 3 deletions
diff --git a/calcchain_test.go b/calcchain_test.go
index c36655b..fae3a51 100644
--- a/calcchain_test.go
+++ b/calcchain_test.go
@@ -1,12 +1,18 @@
package excelize
-import "testing"
+import (
+ "testing"
+
+ "github.com/stretchr/testify/assert"
+)
func TestCalcChainReader(t *testing.T) {
f := NewFile()
+ // Test read calculation chain with unsupported charset.
f.CalcChain = nil
f.Pkg.Store(defaultXMLPathCalcChain, MacintoshCyrillicCharset)
- f.calcChainReader()
+ _, err := f.calcChainReader()
+ assert.EqualError(t, err, "XML syntax error on line 1: invalid UTF-8")
}
func TestDeleteCalcChain(t *testing.T) {
@@ -15,5 +21,19 @@ func TestDeleteCalcChain(t *testing.T) {
f.ContentTypes.Overrides = append(f.ContentTypes.Overrides, xlsxOverride{
PartName: "/xl/calcChain.xml",
})
- f.deleteCalcChain(1, "A1")
+ assert.NoError(t, f.deleteCalcChain(1, "A1"))
+
+ f.CalcChain = nil
+ f.Pkg.Store(defaultXMLPathCalcChain, MacintoshCyrillicCharset)
+ assert.EqualError(t, f.deleteCalcChain(1, "A1"), "XML syntax error on line 1: invalid UTF-8")
+
+ f.CalcChain = nil
+ f.Pkg.Store(defaultXMLPathCalcChain, MacintoshCyrillicCharset)
+ assert.EqualError(t, f.SetCellFormula("Sheet1", "A1", ""), "XML syntax error on line 1: invalid UTF-8")
+
+ formulaType, ref := STCellFormulaTypeShared, "C1:C5"
+ assert.NoError(t, f.SetCellFormula("Sheet1", "C1", "=A1+B1", FormulaOpts{Ref: &ref, Type: &formulaType}))
+ f.CalcChain = nil
+ f.Pkg.Store(defaultXMLPathCalcChain, MacintoshCyrillicCharset)
+ assert.EqualError(t, f.SetCellValue("Sheet1", "C1", true), "XML syntax error on line 1: invalid UTF-8")
}