Welcome to mirror list, hosted at ThFree Co, Russian Federation.

TestStdAbs.cpp « TestStdAbs « tests « src - github.com/mumble-voip/mumble.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 2824c1c75eab7230d2ad3a81d36d09f98e9e540e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// Copyright 2017-2022 The Mumble Developers. All rights reserved.
// Use of this source code is governed by a BSD-style license
// that can be found in the LICENSE file at the root of the
// Mumble source tree or at <https://www.mumble.info/LICENSE>.

#include <QtCore>
#include <QtTest>

#include <cmath>

/// Test the std::abs works with floats.
/// In fixing mumble-voip/mumble#3281, I
/// stumbled upon http://eigen.tuxfamily.org/bz/show_bug.cgi?id=619.
/// It seems that, on some platforms, std::abs
/// might not call through to the correct libc
/// function.
/// Test that it works for us.
class TestStdAbs : public QObject {
	Q_OBJECT
private slots:
	void floatWorks();
};

void TestStdAbs::floatWorks() {
	const float in = -1.5;
	float out      = std::abs(in);
	QVERIFY(out > 1.2 && out < 1.8);
}

QTEST_MAIN(TestStdAbs)
#include "TestStdAbs.moc"