]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/math/reporting/accuracy/test_ibeta_inva.cpp
import quincy beta 17.1.0
[ceph.git] / ceph / src / boost / libs / math / reporting / accuracy / test_ibeta_inva.cpp
CommitLineData
7c673cae
FG
1// Copyright John Maddock 2006-15.
2// Copyright Paul A. Bristow 2007
3// Use, modification and distribution are subject to the
4// Boost Software License, Version 1.0. (See accompanying file
5// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6
7#include "bindings.hpp"
8#include "../../test/test_ibeta_inv_ab.hpp"
9#include <boost/math/special_functions/beta.hpp>
10
11BOOST_AUTO_TEST_CASE_EXPECTED_FAILURES(test_main, 10000);
12
13BOOST_AUTO_TEST_CASE(test_main)
14{
15 BOOST_MATH_CONTROL_FP;
16
17 error_stream_replacer rep;
18
19#ifdef TYPE_TO_TEST
20
21 test_beta(static_cast<TYPE_TO_TEST>(0), NAME_OF_TYPE_TO_TEST);
22
23#else
24 bool test_float = false;
25 bool test_double = false;
26 bool test_long_double = false;
27
28 if(std::numeric_limits<long double>::digits == std::numeric_limits<double>::digits)
29 {
30 //
31 // Don't bother with long double, it's the same as double:
32 //
33 if(BOOST_MATH_PROMOTE_FLOAT_POLICY == false)
34 test_float = true;
35 test_double = true;
36 }
37 else
38 {
39 if(BOOST_MATH_PROMOTE_FLOAT_POLICY == false)
40 test_float = true;
41 if(BOOST_MATH_PROMOTE_DOUBLE_POLICY == false)
42 test_double = true;
43 test_long_double = true;
44 }
45
46#ifdef ALWAYS_TEST_DOUBLE
47 test_double = true;
48#endif
49
50 if(test_float)
51 test_beta(0.0f, "float");
52 if(test_double)
53 test_beta(0.0, "double");
54 if(test_long_double)
55 test_beta(0.0L, "long double");
56#ifdef BOOST_MATH_USE_FLOAT128
57 //test_beta(0.0Q, "__float128");
58#endif
59
60
61#endif
62}
63