$include_dir="/home/hyper-archives/boost-users/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-users] [Boost.Test]feature request to list testcase tree
From: Tan, Tom (Shanghai) (TTan_at_[hidden])
Date: 2011-08-25 01:41:38
I am a fan of Boost.Test. As a habbit, I organize my code this way:
 
// file: Foo.h
 
Class foo
{
                // implementations
};
 
#ifdef ENABLE_TEST    
namespace test_cases
{
                BOOST_AUTO_TEST_CASE(foo_tests)
{
//  test predicates of class foo
}
 
} //namespace test_cases
#endif    
 
//end of file Foo.h
 
 
With this structure, I can always carry test cases with any class I
write, I just need to copy the file around. When I need to test it there
is a universal test main.cpp
 
//File test_main.cpp
 
#define BOOST_TEST_MAIN
#include <boost/test/unit_test.hpp>
 
#define ENABLE_TEST
 
#include "foo.h"
//#include other includes
 
//End of File test_main
 
This pattern has helped me to use TDD easily.
 
The only issue is that test cases are scattered among each header files.
Usually I do not know exactly how many test cases/suites are included.  
If there is a {--list|-l } option to print a tree of registered test
suites and test cases, so that one can quickly look them up here and
filter the test cases to be run, it would be a great feature.