name:
src/test/js/execution/ExecutorSupportedMathFormulasTest.ts
-rw-r--r--
7426
1import { runner, it, describe } from "../testutils/TestUtils";
2
3describe("Executor.execute - Math Formulas", function () {
4 it("should support ABS", function () {
5 runner().addCell("Alpha", "A1", "=ABS(-1)").addExpectedValue("Alpha", "A1", 1).run();
6 });
7
8 it("should support ACOS", function () {
9 runner().addCell("Alpha", "A1", "=ACOS(0)").addExpectedValue("Alpha", "A1", Math.acos(0)).run();
10 });
11
12 it("should support ACOSH", function () {
13 runner()
14 .addCell("Alpha", "A1", "=ACOSH(2)")
15 .addExpectedValue("Alpha", "A1", 1.3169578969248166)
16 .run();
17 });
18
19 it("should support ACOT", function () {
20 runner()
21 .addCell("Alpha", "A1", "=ACOT(10)")
22 .addExpectedValue("Alpha", "A1", 0.09966865249116204)
23 .run();
24 });
25
26 it("should support ACOTH", function () {
27 runner()
28 .addCell("Alpha", "A1", "=ACOTH(10)")
29 .addExpectedValue("Alpha", "A1", 0.10033534773107562)
30 .run();
31 });
32
33 it("should support ASIN", function () {
34 runner()
35 .addCell("Alpha", "A1", "=ASIN(0.1)")
36 .addExpectedValue("Alpha", "A1", Math.asin(0.1))
37 .run();
38 });
39
40 it("should support ASINH", function () {
41 runner()
42 .addCell("Alpha", "A1", "=ASINH(10)")
43 .addExpectedValue("Alpha", "A1", 2.99822295029797)
44 .run();
45 });
46
47 it("should support ATAN", function () {
48 runner()
49 .addCell("Alpha", "A1", "=ATAN(10)")
50 .addExpectedValue("Alpha", "A1", Math.atan(10))
51 .run();
52 });
53
54 it("should support ATAN2", function () {
55 runner()
56 .addCell("Alpha", "A1", "=ATAN2(10, 4)")
57 .addExpectedValue("Alpha", "A1", Math.atan2(10, 4))
58 .run();
59 });
60
61 it("should support ATANH", function () {
62 runner()
63 .addCell("Alpha", "A1", "=ATANH(0.489733)")
64 .addExpectedValue("Alpha", "A1", 0.5357090350574656)
65 .run();
66 });
67
68 it("should support COS", function () {
69 runner()
70 .addCell("Alpha", "A1", "=COS(0.489733)")
71 .addExpectedValue("Alpha", "A1", Math.cos(0.489733))
72 .run();
73 });
74
75 it("should support COSH", function () {
76 runner()
77 .addCell("Alpha", "A1", "=COSH(0.489733)")
78 .addExpectedValue("Alpha", "A1", Math["cosh"](0.489733))
79 .run();
80 });
81
82 it("should support COT", function () {
83 runner()
84 .addCell("Alpha", "A1", "=COT(1)")
85 .addExpectedValue("Alpha", "A1", 0.6420926159343306)
86 .run();
87 });
88
89 it("should support ADD", function () {
90 runner().addCell("Alpha", "A1", "=ADD(1.0, 2)").addExpectedValue("Alpha", "A1", 3).run();
91 });
92
93 it("should support DIVIDE", function () {
94 runner().addCell("Alpha", "A1", "=DIVIDE(1.0, 2)").addExpectedValue("Alpha", "A1", 0.5).run();
95 });
96
97 it("should support EVEN", function () {
98 runner().addCell("Alpha", "A1", "=EVEN(1.1)").addExpectedValue("Alpha", "A1", 2).run();
99 });
100
101 it("should support FLOOR", function () {
102 runner().addCell("Alpha", "A1", "=FLOOR(1.9)").addExpectedValue("Alpha", "A1", 1).run();
103 });
104
105 it("should support INT", function () {
106 runner().addCell("Alpha", "A1", "=INT(1.1)").addExpectedValue("Alpha", "A1", 1).run();
107 });
108
109 it("should support ISEVEN", function () {
110 runner().addCell("Alpha", "A1", "=ISEVEN(4)").addExpectedValue("Alpha", "A1", true).run();
111 });
112
113 it("should support ISODD", function () {
114 runner().addCell("Alpha", "A1", "=ISODD(1)").addExpectedValue("Alpha", "A1", true).run();
115 });
116
117 it("should support LN", function () {
118 runner()
119 .addCell("Alpha", "A1", "=LN(2)")
120 .addExpectedValue("Alpha", "A1", 0.6931471805599453)
121 .run();
122 });
123
124 it("should support LOG", function () {
125 runner()
126 .addCell("Alpha", "A1", "=LOG(10, 2)")
127 .addExpectedValue("Alpha", "A1", 3.3219280948873626)
128 .run();
129 });
130
131 it("should support LOG10", function () {
132 runner()
133 .addCell("Alpha", "A1", "=LOG10(128)")
134 .addExpectedValue("Alpha", "A1", Math["log10"](128))
135 .run();
136 });
137
138 it("should support MINUS", function () {
139 runner().addCell("Alpha", "A1", "=MINUS(1, 2)").addExpectedValue("Alpha", "A1", -1).run();
140 });
141
142 it("should support MOD", function () {
143 runner().addCell("Alpha", "A1", "=MOD(10, 3)").addExpectedValue("Alpha", "A1", 1).run();
144 });
145
146 it("should support MULTIPLY", function () {
147 runner().addCell("Alpha", "A1", "=MULTIPLY(2.0, 4)").addExpectedValue("Alpha", "A1", 8).run();
148 });
149
150 it("should support ODD", function () {
151 runner().addCell("Alpha", "A1", "=ODD(2)").addExpectedValue("Alpha", "A1", 3).run();
152 });
153
154 it("should support PI", function () {
155 runner().addCell("Alpha", "A1", "=PI()").addExpectedValue("Alpha", "A1", Math.PI).run();
156 });
157
158 it("should support POW", function () {
159 runner().addCell("Alpha", "A1", "=POW(2.0, 6)").addExpectedValue("Alpha", "A1", 64).run();
160 });
161
162 it("should support POWER", function () {
163 runner().addCell("Alpha", "A1", "=POWER(2, 6)").addExpectedValue("Alpha", "A1", 64).run();
164 });
165
166 it("should support PRODUCT", function () {
167 runner().addCell("Alpha", "A1", "=PRODUCT(2, 6, 2)").addExpectedValue("Alpha", "A1", 24).run();
168 });
169
170 it("should support QUOTIENT", function () {
171 runner().addCell("Alpha", "A1", "=QUOTIENT(10, 3)").addExpectedValue("Alpha", "A1", 3).run();
172 });
173
174 it("should support ROUNDDOWN", function () {
175 runner().addCell("Alpha", "A1", "=ROUNDDOWN(2.11)").addExpectedValue("Alpha", "A1", 2).run();
176 });
177
178 it("should support ROUNDUP", function () {
179 runner().addCell("Alpha", "A1", "=ROUNDUP(2.11)").addExpectedValue("Alpha", "A1", 3).run();
180 });
181
182 it("should support ROUND", function () {
183 runner().addCell("Alpha", "A1", "=ROUND(2.11)").addExpectedValue("Alpha", "A1", 2).run();
184 });
185
186 it("should support SIGN", function () {
187 runner().addCell("Alpha", "A1", "=SIGN(8)").addExpectedValue("Alpha", "A1", 1).run();
188 });
189
190 it("should support SIN", function () {
191 runner()
192 .addCell("Alpha", "A1", "=SIN(2)")
193 .addExpectedValue("Alpha", "A1", 0.9092974268256817)
194 .run();
195 });
196
197 it("should support SINH", function () {
198 runner()
199 .addCell("Alpha", "A1", "=SINH(2)")
200 .addExpectedValue("Alpha", "A1", Math["sinh"](2))
201 .run();
202 });
203
204 it("should support SQRT", function () {
205 runner().addCell("Alpha", "A1", "=SQRT(2)").addExpectedValue("Alpha", "A1", Math.sqrt(2)).run();
206 });
207
208 it("should support SQRTPI", function () {
209 runner()
210 .addCell("Alpha", "A1", "=SQRTPI(2)")
211 .addExpectedValue("Alpha", "A1", 2.5066282746310002)
212 .run();
213 });
214
215 it("should support SUM", function () {
216 runner().addCell("Alpha", "A1", "=SUM(2, 6)").addExpectedValue("Alpha", "A1", 8).run();
217 });
218
219 it("should support TAN", function () {
220 runner().addCell("Alpha", "A1", "=TAN(2)").addExpectedValue("Alpha", "A1", Math.tan(2)).run();
221 });
222
223 it("should support TANH", function () {
224 runner()
225 .addCell("Alpha", "A1", "=TANH(2)")
226 .addExpectedValue("Alpha", "A1", Math["tanh"](2))
227 .run();
228 });
229
230 it("should support UMINUS", function () {
231 runner().addCell("Alpha", "A1", "=UMINUS(2)").addExpectedValue("Alpha", "A1", -2).run();
232 });
233
234 it("should support UNARY_PERCENT", function () {
235 runner()
236 .addCell("Alpha", "A1", "=UNARY_PERCENT(2)")
237 .addExpectedValue("Alpha", "A1", 0.02)
238 .run();
239 });
240
241 it("should support UPLUS", function () {
242 runner().addCell("Alpha", "A1", "=UPLUS(2)").addExpectedValue("Alpha", "A1", 2).run();
243 });
244});