summaryrefslogtreecommitdiff
path: root/calc_test.go
diff options
context:
space:
mode:
authorxuri <xuri.me@gmail.com>2022-06-20 22:05:23 +0800
committerxuri <xuri.me@gmail.com>2022-06-20 22:05:23 +0800
commit7819cd7fec50513786a5d47c6f11a59cceba541a (patch)
treed3960f52636a9fc7f18085382969971cc98668e1 /calc_test.go
parent5f4131aece5071cd98ac080b6ace85726d922f19 (diff)
ref #65, new formula function: STEYX
Diffstat (limited to 'calc_test.go')
-rw-r--r--calc_test.go36
1 files changed, 36 insertions, 0 deletions
diff --git a/calc_test.go b/calc_test.go
index c9891a3..92460d7 100644
--- a/calc_test.go
+++ b/calc_test.go
@@ -5325,6 +5325,42 @@ func TestCalcSHEETS(t *testing.T) {
}
}
+func TestCalcSTEY(t *testing.T) {
+ cellData := [][]interface{}{
+ {"known_x's", "known_y's"},
+ {1, 3},
+ {2, 7.9},
+ {3, 8},
+ {4, 9.2},
+ {4.5, 12},
+ {5, 10.5},
+ {6, 15},
+ {7, 15.5},
+ {8, 17},
+ }
+ f := prepareCalcData(cellData)
+ formulaList := map[string]string{
+ "=STEYX(B2:B11,A2:A11)": "1.20118634668221",
+ }
+ for formula, expected := range formulaList {
+ assert.NoError(t, f.SetCellFormula("Sheet1", "C1", formula))
+ result, err := f.CalcCellValue("Sheet1", "C1")
+ assert.NoError(t, err, formula)
+ assert.Equal(t, expected, result, formula)
+ }
+ calcError := map[string]string{
+ "=STEYX()": "STEYX requires 2 arguments",
+ "=STEYX(B2:B11,A1:A9)": "#N/A",
+ "=STEYX(B2,A2)": "#DIV/0!",
+ }
+ for formula, expected := range calcError {
+ assert.NoError(t, f.SetCellFormula("Sheet1", "C1", formula))
+ result, err := f.CalcCellValue("Sheet1", "C1")
+ assert.EqualError(t, err, expected, formula)
+ assert.Equal(t, "", result, formula)
+ }
+}
+
func TestCalcTTEST(t *testing.T) {
cellData := [][]interface{}{
{4, 8, nil, 1, 1},