MCPcopy Create free account
hub / github.com/KDE/labplot / testSpecialFunctions

Method testSpecialFunctions

tests/backend/gsl/ExpressionParserTest.cpp:282–328  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

280}
281
282void ExpressionParserTest::testSpecialFunctions() {
283 auto fnct = getFunction1(QStringLiteral("cbrt"));
284 QVERIFY(fnct);
285
286 QCOMPARE(fnct(8.), 2.);
287 QCOMPARE(fnct(-8.), -2.);
288
289 fnct = getFunction1(QStringLiteral("logb"));
290 QVERIFY(fnct);
291
292 QCOMPARE(fnct(0.1), -4.);
293 QCOMPARE(fnct(0.4), -2.);
294 QCOMPARE(fnct(0.5), -1.);
295 QCOMPARE(fnct(8.), 3.);
296 QCOMPARE(fnct(10.), 3.);
297 QCOMPARE(fnct(100.), 6.);
298
299 fnct = getFunction1(QStringLiteral("rint"));
300 QVERIFY(fnct);
301
302 QCOMPARE(fnct(0.), 0.);
303 QCOMPARE(fnct(0.5), 0.);
304 QCOMPARE(fnct(1.49), 1.);
305 QCOMPARE(fnct(-0.5), 0.);
306 QCOMPARE(fnct(-0.99), -1.);
307 QCOMPARE(fnct(-1.5), -2.);
308
309 fnct = getFunction1(QStringLiteral("round"));
310 QVERIFY(fnct);
311
312 QCOMPARE(fnct(0.), 0.);
313 QCOMPARE(fnct(0.5), 1.);
314 QCOMPARE(fnct(1.49), 1.);
315 QCOMPARE(fnct(-0.5), -1.);
316 QCOMPARE(fnct(-0.99), -1.);
317 QCOMPARE(fnct(-1.5), -2.);
318
319 fnct = getFunction1(QStringLiteral("trunc"));
320 QVERIFY(fnct);
321
322 QCOMPARE(fnct(0.), 0.);
323 QCOMPARE(fnct(0.5), 0.);
324 QCOMPARE(fnct(1.49), 1.);
325 QCOMPARE(fnct(-0.5), -0.);
326 QCOMPARE(fnct(-0.99), -0.);
327 QCOMPARE(fnct(-1.5), -1.);
328}
329
330void ExpressionParserTest::testevaluateCartesian() {
331 const QString expr = QStringLiteral("x+y");

Callers

nothing calls this directly

Calls 1

getFunction1Function · 0.85

Tested by

no test coverage detected