diff options
author | xuri <xuri.me@gmail.com> | 2022-06-20 22:05:23 +0800 |
---|---|---|
committer | xuri <xuri.me@gmail.com> | 2022-06-20 22:05:23 +0800 |
commit | 7819cd7fec50513786a5d47c6f11a59cceba541a (patch) | |
tree | d3960f52636a9fc7f18085382969971cc98668e1 /calc_test.go | |
parent | 5f4131aece5071cd98ac080b6ace85726d922f19 (diff) |
ref #65, new formula function: STEYX
Diffstat (limited to 'calc_test.go')
-rw-r--r-- | calc_test.go | 36 |
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}, |