1 ///////////////////////////////////////////////////////////////
2 // Copyright 2011 John Maddock. Distributed under the Boost
3 // Software License, Version 1.0. (See accompanying file
4 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_
5
6 #include "setup.hpp"
7 #include "table_type.hpp"
8
9 #include <boost/math/special_functions/gamma.hpp>
10 #include "libs/math/test/test_gamma.hpp"
11
expected_results()12 void expected_results()
13 {
14 //
15 // Define the max and mean errors expected for
16 // various compilers and platforms.
17 //
18 add_expected_result(
19 ".*", // compiler
20 ".*", // stdlib
21 ".*", // platform
22 ".*", // test type(s)
23 "near.*", // test data group
24 "tgamma", 200, 100); // test function
25 add_expected_result(
26 ".*", // compiler
27 ".*", // stdlib
28 ".*", // platform
29 ".*", // test type(s)
30 "near.*", // test data group
31 "lgamma", 10000000, 10000000); // test function
32 add_expected_result(
33 ".*", // compiler
34 ".*", // stdlib
35 ".*", // platform
36 ".*", // test type(s)
37 "tgamma1pm1.*", // test data group
38 "tgamma1pm1", 1000, 150); // test function
39 add_expected_result(
40 ".*", // compiler
41 ".*", // stdlib
42 ".*", // platform
43 ".*", // test type(s)
44 ".*", // test data group
45 "tgamma", 40, 20); // test function
46 //
47 // Finish off by printing out the compiler/stdlib/platform names,
48 // we do this to make it easier to mark up expected error rates.
49 //
50 std::cout << "Tests run with " << BOOST_COMPILER << ", "
51 << BOOST_STDLIB << ", " << BOOST_PLATFORM << std::endl;
52 }
53
54 template <class T>
test(T t,const char * p)55 void test(T t, const char* p)
56 {
57 test_gamma(t, p);
58 }
59
BOOST_AUTO_TEST_CASE(test_main)60 BOOST_AUTO_TEST_CASE( test_main )
61 {
62 expected_results();
63 ALL_TESTS
64 }
65
66