1 /****************************************************************************** 2 ** $Header: svn+ssh://jmmcg@svn.code.sf.net/p/libjmmcg/code/trunk/libjmmcg/examples/backtrace.cpp 2185 2017-10-13 10:14:17Z jmmcg $ 3 ** 4 ** Copyright © 2011 by J.M.McGuiness, coder@hussar.me.uk 5 ** 6 ** This library is free software; you can redistribute it and/or 7 ** modify it under the terms of the GNU Lesser General Public 8 ** License as published by the Free Software Foundation; either 9 ** version 2.1 of the License, or (at your option) any later version. 10 ** 11 ** This library is distributed in the hope that it will be useful, 12 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 13 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 ** Lesser General Public License for more details. 15 ** 16 ** You should have received a copy of the GNU Lesser General Public 17 ** License along with this library; if not, write to the Free Software 18 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19 */ 20 21 #include "stdafx.h" 22 23 #define BOOST_TEST_MODULE libjmmcg_tests 24 #include <boost/test/included/unit_test.hpp> 25 26 #include "core/thread_api_traits.hpp" 27 28 using namespace jmmcg; 29 using namespace jmmcg::ppd; 30 31 typedef boost::mpl::list< 32 sequential_mode, 33 heavyweight_threading 34 > thread_types; 35 36 BOOST_AUTO_TEST_SUITE(backtrace_tests) 37 38 BOOST_AUTO_TEST_CASE_TEMPLATE(generate, T, thread_types) 39 { 40 typedef api_threading_traits<platform_api, T> thread_traits; 41 42 auto const &bt=thread_traits::gen_backtrace(); 43 BOOST_CHECK(!bt.empty()); 44 } 45 46 BOOST_AUTO_TEST_SUITE_END()