]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/multiprecision/test/math/test_carlson_1.cpp
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / libs / multiprecision / test / math / test_carlson_1.cpp
CommitLineData
7c673cae
FG
1///////////////////////////////////////////////////////////////
2// Copyright 2011 John Maddock. Distributed under the Boost
3// Software License, Version 1.0. (See accompanying file
92f5a8d4 4// LICENSE_1_0.txt or copy at https://www.boost.org/LICENSE_1_0.txt
7c673cae
FG
5
6#include "setup.hpp"
7#include "table_type.hpp"
8#define TEST_UDT
9#define TEST1
10
11#include <boost/math/special_functions/math_fwd.hpp>
12#include <boost/math/special_functions/ellint_rf.hpp>
13#include "libs/math/test/test_carlson.hpp"
14
15void expected_results()
16{
17 //
18 // Define the max and mean errors expected for
19 // various compilers and platforms.
20 //
21 add_expected_result(
92f5a8d4
TL
22 ".*", // compiler
23 ".*", // stdlib
24 ".*", // platform
25 ".*gmp_float<0>.*", // test type(s)
26 ".*RJ.*", // test data group
27 ".*", 40000, 4000); // test function
7c673cae 28 add_expected_result(
92f5a8d4
TL
29 ".*", // compiler
30 ".*", // stdlib
31 ".*", // platform
32 ".*", // test type(s)
33 ".*RJ.*", // test data group
34 ".*", 2700, 250); // test function
7c673cae 35 add_expected_result(
92f5a8d4
TL
36 ".*", // compiler
37 ".*", // stdlib
38 ".*", // platform
39 ".*gmp_float<0>.*", // test type(s)
40 ".*RC.*", // test data group
41 ".*", 7000, 1000); // test function
7c673cae 42 add_expected_result(
92f5a8d4
TL
43 ".*", // compiler
44 ".*", // stdlib
45 ".*", // platform
46 ".*gmp_float<0>.*", // test type(s)
47 ".*RF.*", // test data group
48 ".*", 12000, 700); // test function
7c673cae 49 add_expected_result(
92f5a8d4
TL
50 ".*", // compiler
51 ".*", // stdlib
52 ".*", // platform
53 ".*", // test type(s)
54 ".*", // test data group
55 ".*", 40, 20); // test function
7c673cae
FG
56 //
57 // Finish off by printing out the compiler/stdlib/platform names,
58 // we do this to make it easier to mark up expected error rates.
59 //
60 std::cout << "Tests run with " << BOOST_COMPILER << ", "
92f5a8d4 61 << BOOST_STDLIB << ", " << BOOST_PLATFORM << std::endl;
7c673cae
FG
62}
63
64template <class T>
65void test(T t, const char* p)
66{
67 test_spots(t, p);
68}
69
92f5a8d4 70BOOST_AUTO_TEST_CASE(test_main)
7c673cae
FG
71{
72 using namespace boost::multiprecision;
73 expected_results();
74 //
75 // Test at:
76 // 18 decimal digits: tests 80-bit long double approximations
77 // 30 decimal digits: tests 128-bit long double approximations
78 // 35 decimal digits: tests arbitrary precision code
79 //
80 ALL_TESTS
81}