CppUnit project page | FAQ | CppUnit home page |
The path can be converted to a string and resolved from a string with toString() and TestPath( Test *root, const std::string &pathAsString ). More...
#include <TestPath.h>
Public Member Functions | ||||
TestPath () | ||||
Constructs an invalid path. | ||||
TestPath (Test *root) | ||||
Constructs a valid path. | ||||
TestPath (const TestPath &otherPath, int indexFirst, int count=-1) | ||||
Constructs a path using a slice of another path. | ||||
TestPath (Test *searchRoot, const std::string &pathAsString) | ||||
Resolves a path from a string returned by toString(). | ||||
TestPath (const TestPath &other) | ||||
Copy constructor. | ||||
virtual | ~TestPath () | |||
virtual bool | isValid () const | |||
Tests if the path contains at least one test. | ||||
virtual void | add (Test *test) | |||
Adds a test to the path. | ||||
virtual void | add (const TestPath &path) | |||
Adds all the tests of the specified path. | ||||
virtual void | insert (Test *test, int index) | |||
Inserts a test at the specified index. | ||||
virtual void | insert (const TestPath &path, int index) | |||
Inserts all the tests at the specified path at a given index. | ||||
virtual void | removeTests () | |||
Removes all the test from the path. | ||||
virtual void | removeTest (int index) | |||
Removes the test at the specified index of the path. | ||||
virtual void | up () | |||
Removes the last test.
| ||||
virtual int | getTestCount () const | |||
Returns the number of tests in the path. | ||||
virtual Test * | getTestAt (int index) const | |||
Returns the test of the specified index. | ||||
virtual Test * | getChildTest () const | |||
Get the last test of the path. | ||||
virtual std::string | toString () const | |||
Returns the path as a string. | ||||
TestPath & | operator= (const TestPath &other) | |||
Assignment operator. | ||||
Protected Types | ||||
typedef CppUnitDeque< std::string > | PathTestNames | |||
A list of test names. | ||||
typedef CppUnitDeque< Test * > | Tests | |||
Protected Member Functions | ||||
void | checkIndexValid (int index) const | |||
Checks that the specified test index is within valid range. | ||||
bool | splitPathString (const std::string &pathAsString, PathTestNames &testNames) | |||
Splits a path string into its test name components. | ||||
Test * | findActualRoot (Test *searchRoot, const std::string &pathAsString, PathTestNames &testNames) | |||
Finds the actual root of a path string and get the path string name components. | ||||
Protected Attributes | ||||
Tests | m_tests |
The path can be converted to a string and resolved from a string with toString() and TestPath( Test *root, const std::string &pathAsString ).
Pointed tests are not owned by the class.
typedef CppUnitDeque<std::string> TestPath::PathTestNames [protected] |
A list of test names.
typedef CppUnitDeque<Test *> TestPath::Tests [protected] |
CPPUNIT_NS_BEGIN TestPath::TestPath | ( | ) |
Constructs an invalid path.
The path is invalid until a test is added with add().
TestPath::TestPath | ( | const TestPath & | otherPath, | |
int | indexFirst, | |||
int | count = -1 | |||
) |
Constructs a path using a slice of another path.
otherPath | Path the test are copied from. | |
indexFirst | Zero based index of the first test to copy. Adjusted to be in valid range. count is adjusted with indexFirst. | |
count | Number of tests to copy. If < 0 then all test starting from index indexFirst are copied. |
TestPath::TestPath | ( | Test * | searchRoot, | |
const std::string & | pathAsString | |||
) |
Resolves a path from a string returned by toString().
If pathAsString is an absolute path (begins with '/'), then the first test name of the path must be the name of searchRoot. Otherwise, pathAsString is a relative path, and the first test found using Test::findTest() matching the first test name is used as root. An empty string resolve to a path containing searchRoot.
The resolved path is always valid.
searchRoot | Test used to resolve the path. | |
pathAsString | String that contains the path as a string created by toString(). |
std::invalid_argument | if one of the test names can not be resolved. |
TestPath::TestPath | ( | const TestPath & | other | ) |
Copy constructor.
other | Object to copy. |
TestPath::~TestPath | ( | ) | [virtual] |
bool TestPath::isValid | ( | ) | const [virtual] |
Tests if the path contains at least one test.
true
if the path contains at least one test, otherwise returns false
. void TestPath::add | ( | Test * | test | ) | [virtual] |
Adds a test to the path.
test | Pointer on the test to add. Must not be NULL . |
void TestPath::add | ( | const TestPath & | path | ) | [virtual] |
Adds all the tests of the specified path.
path | Path that contains the test to add. |
void TestPath::insert | ( | Test * | test, | |
int | index | |||
) | [virtual] |
Inserts a test at the specified index.
test | Pointer on the test to insert. Must not be NULL . | |
index | Zero based index indicating where the test is inserted. |
std::out_of_range | is index < 0 or index > getTestCount(). |
void TestPath::insert | ( | const TestPath & | path, | |
int | index | |||
) | [virtual] |
Inserts all the tests at the specified path at a given index.
path | Path that contains the test to insert. | |
index | Zero based index indicating where the tests are inserted. |
std::out_of_range | is index < 0 or index > getTestCount(), and path is valid. |
void TestPath::removeTests | ( | ) | [virtual] |
Removes all the test from the path.
The path becomes invalid after this call.
void TestPath::removeTest | ( | int | index | ) | [virtual] |
Removes the test at the specified index of the path.
index | Zero based index of the test to remove. |
std::out_of_range | is index < 0 or index >= getTestCount(). |
void TestPath::up | ( | ) | [virtual] |
int TestPath::getTestCount | ( | ) | const [virtual] |
Returns the number of tests in the path.
Test * TestPath::getTestAt | ( | int | index | ) | const [virtual] |
Returns the test of the specified index.
index | Zero based index of the test to return. |
NULL
. std::out_of_range | is index < 0 or index >= getTestCount(). |
Test * TestPath::getChildTest | ( | ) | const [virtual] |
Get the last test of the path.
NULL
. std::out_of_range | if the path is not valid ( isValid() returns false ). |
std::string TestPath::toString | ( | ) | const [virtual] |
Returns the path as a string.
For example, if a path is composed of three tests named "All Tests", "Math" and "Math::testAdd", toString() will return:
"All Tests/Math/Math::testAdd".
Assignment operator.
other | Object to copy. |
void TestPath::checkIndexValid | ( | int | index | ) | const [protected] |
Checks that the specified test index is within valid range.
index | Zero based index to check. |
std::out_of_range | is index < 0 or index >= getTestCount(). |
bool TestPath::splitPathString | ( | const std::string & | pathAsString, | |
PathTestNames & | testNames | |||
) | [protected] |
Splits a path string into its test name components.
pathAsString | Path string created with toString(). | |
testNames | Test name components are added to that container. |
true
if the path is relative (does not begin with '/'), false
if it is absolute (begin with '/'). Test * TestPath::findActualRoot | ( | Test * | searchRoot, | |
const std::string & | pathAsString, | |||
PathTestNames & | testNames | |||
) | [protected] |
Finds the actual root of a path string and get the path string name components.
searchRoot | Test used as root if the path string is absolute, or to search the root test if the path string is relative. | |
pathAsString | Path string. May be absolute or relative. | |
testNames | Test name components are added to that container. |
NULL
. std::invalid_argument | if either the root name can not be resolved or if pathAsString contains no name components. |
Tests TestPath::m_tests [protected] |
|
hosts this site. |
Send comments to: CppUnit Developers |