1 //  (C) Copyright Gennadiy Rozental 2001-2014.
2 //  Distributed under the Boost Software License, Version 1.0.
3 //  (See accompanying file LICENSE_1_0.txt or copy at
4 //  http://www.boost.org/LICENSE_1_0.txt)
5 
6 //  See http://www.boost.org/libs/test for the library home page.
7 //
8 /// @file
9 /// @brief Provides access to various Unit Test Framework runtime parameters
10 ///
11 /// Primarily for use by the framework itself
12 // ***************************************************************************
13 
14 #ifndef BOOST_TEST_UNIT_TEST_PARAMETERS_HPP_071894GER
15 #define BOOST_TEST_UNIT_TEST_PARAMETERS_HPP_071894GER
16 
17 #include <boost/test/detail/global_typedef.hpp>
18 #include <boost/test/detail/log_level.hpp>
19 
20 #include <boost/test/detail/suppress_warnings.hpp>
21 
22 // STL
23 #include <iosfwd>
24 #include <list>
25 
26 //____________________________________________________________________________//
27 
28 namespace boost {
29 namespace unit_test {
30 namespace runtime_config {
31 
32 // ************************************************************************** //
33 // **************                 runtime_config               ************** //
34 // ************************************************************************** //
35 
36 BOOST_TEST_DECL void                    init( int& argc, char** argv );
37 
38 /// Automatically attach debugger in a location of fatal error
39 BOOST_TEST_DECL bool                    auto_start_dbg();
40 BOOST_TEST_DECL const_string            break_exec_path();
41 /// Should we catch system errors/sygnals?
42 BOOST_TEST_DECL bool                    catch_sys_errors();
43 /// Should we try to produce color output?
44 BOOST_TEST_DECL bool                    color_output();
45 /// Should we detect floating point exceptions?
46 BOOST_TEST_DECL bool                    detect_fp_exceptions();
47 /// Should we detect memory leaks (>0)? And if yes, which specific memory allocation should we break.
48 BOOST_TEST_DECL long                    detect_memory_leaks();
49 /// List content of test tree?
50 BOOST_TEST_DECL output_format           list_content();
51 /// List available labels?
52 BOOST_TEST_DECL bool                    list_labels();
53 /// Which output format to use
54 BOOST_TEST_DECL output_format           log_format();
55 /// Which log level to set
56 BOOST_TEST_DECL unit_test::log_level    log_level();
57 /// Where to direct log stream into
58 BOOST_TEST_DECL std::ostream*           log_sink();
59 /// If memory leak detection, where to direct the report
60 BOOST_TEST_DECL const_string            memory_leaks_report_file();
61 /// Do not prodce result code
62 BOOST_TEST_DECL bool                    no_result_code();
63 /// Random seed to use to randomize order of test units being run
64 BOOST_TEST_DECL unsigned                random_seed();
65 /// Which format to use to report results
66 BOOST_TEST_DECL output_format           report_format();
67 /// Wht lever of report format to set
68 BOOST_TEST_DECL unit_test::report_level report_level();
69 /// Where to direct results report into
70 BOOST_TEST_DECL std::ostream*           report_sink();
71 /// Should we save pattern (true) or match against existing pattern (used by output validation tool)
72 BOOST_TEST_DECL bool                    save_pattern();
73 /// Should Unit Test framework show the build information?
74 BOOST_TEST_DECL bool                    show_build_info();
75 /// Tells Unit Test Framework to show test progress (forces specific log level)
76 BOOST_TEST_DECL bool                    show_progress();
77 /// Specific test units to run/exclude
78 BOOST_TEST_DECL std::list<std::string> const& test_to_run();
79 /// Should execution monitor use alternative stack for signal handling
80 BOOST_TEST_DECL bool                    use_alt_stack();
81 /// Tells Unit Test Framework to wait for debugger to attach
82 BOOST_TEST_DECL bool                    wait_for_debugger();
83 
84 } // namespace runtime_config
85 } // namespace unit_test
86 } // namespace boost
87 
88 //____________________________________________________________________________//
89 
90 #include <boost/test/detail/enable_warnings.hpp>
91 
92 #endif // BOOST_TEST_UNIT_TEST_PARAMETERS_HPP_071894GER
93