| [ CCUnit project page ] | [ CCUnit home page ] |
|
Data Structures | |
| struct | CCUnitTestCase |
| Wraps a test case with setUp and tearDown function. More... | |
| struct | CCUnitTestFunc |
| A single test function object. More... | |
Typedefs | |
| typedef struct CCUnitTestCase | CCUnitTestCase |
| Wraps a test case with setUp and tearDown function. | |
| typedef struct CCUnitTestFunc | CCUnitTestFunc |
| A single test function object. | |
Functions | |
| CCUnitTestCase * | ccunit_newTestCase (const char *name) |
| create new test case. | |
| void | ccunit_deleteTestCase (CCUnitTestCase *testCase) |
| Destructs test case. | |
| void | ccunit_addTestFunc (CCUnitTestCase *testCase, CCUnitTestFunc *f) |
| add test function to test case. | |
| CCUnitTestFunc * | ccunit_addNewTestFunc (CCUnitTestCase *testCase, const char *name, const char *desc, void(*runTest)()) |
| add new test func to test case. | |
| CCUnitTestFunc * | ccunit_newTestFunc (const char *name, const char *desc, void(*runTest)()) |
| Create new test function. | |
| void | ccunit_deleteTestFunc (CCUnitTestFunc *f) |
| Delete test function. | |
| typedef struct CCUnitTestCase CCUnitTestCase |
Wraps a test case with setUp and tearDown function.
A TestCase is used to provide a common environment for a set of test cases.
To define a test case, do the following:
Each test runs in its own case so there can be no side effects among test runs. Here is an example:
static int value1, value2; void setUp_MathTest () { value1 = 2; value2 = 3; } ... CCUnitTestCase* MathTest_newTestCase () { return ccunit_newTestCase ("MathTest", setUp_MathTest, NULL); }
For each test implement a function which interacts with the case. Verify the expected results with assertions specified by calling CCUNIT_ASSERT on the expression you want to test:
void testAdd () { int result = value1 + value2; CCUNIT_ASSERT (result == 5); } ... void MathTest_newTestCase_testAdd () { return ccunit_newTestCase ("testAdd", "add test", testAdd); }
The tests to be run can be collected into a TestSuite.
CCUintTestSuite* MathTest_suite ()
{
CCUnitTestSuite* suite = ccunit_newTestSuite ("MathTest");
CCUnitTestCase* tcase = MathTest_newTestCase ();
ccunit_addTestCase (suite, tcase);
ccunit_addTestCase (tcase, MathTest_newTestCase_testAdd ());
ccunit_addTestCase (tcase, MathTest_newTestCase_testDivZero ())
return suite;
}
Once the functions are defined you can run them. To do this, use a TestRunner.
CCUnitTestRunner *runner = ccunit_newTestRunner (stdout); CCUnitTestSuite *suite = MathTest_suite (); runner->run (runner, suite);
A command line tool have been created for convenience. It is located in src/tools/ccunit_makeSuite.c.
| typedef struct CCUnitTestFunc CCUnitTestFunc |
A single test function object.
For each test implement a function which interacts with the case. Verify the expected results with assertions specified by calling CCUNIT_ASSERT on the expression you want to test:
void testAdd () { int result = value1 + value2; CCUNIT_ASSERT (result == 5); } ... int main () { CCUnitTestResult* r; CCUnitTestCase* c = ccunit_newTestCase ("math test"); CCUnitTestFunc* f = ccunit_newTestFunc ("testAdd", "add test", testAdd); ccunit_addTestFunc (c, f); r = ccunit_runTestCase (c); return 0; }
| CCUnitTestFunc* ccunit_addNewTestFunc | ( | CCUnitTestCase * | testCase, | |
| const char * | name, | |||
| const char * | desc, | |||
| void(*)() | runTest | |||
| ) |
add new test func to test case.
| testCase | test case. | |
| name | test case name. | |
| desc | test case description. | |
| runTest | run test function. |
References ccunit_addTestFunc(), ccunit_newTestFunc(), and runTest().

| void ccunit_addTestFunc | ( | CCUnitTestCase * | testCase, | |
| CCUnitTestFunc * | f | |||
| ) |
add test function to test case.
| testCase | test case. | |
| f | test function. |
References ccunit_addList(), ccunit_deleteTestFunc(), CCUnitTestFunc::name, CCUnitTestCase::setUp, CCUnitTestCase::setup_setUp, CCUnitTestCase::setup_tearDown, CCUnitTestCase::tearDown, and CCUnitTestCase::testFuncs.
Referenced by ccunit_addNewTestFunc().


| void ccunit_deleteTestCase | ( | CCUnitTestCase * | testCase | ) | [inline] |
Destructs test case.
| testCase | deleting case. |
References ccunit_deleteTest(), and CCUnitTestCase::test.
Referenced by ccunit_setTestFixtureSetup(), and destroy().


| void ccunit_deleteTestFunc | ( | CCUnitTestFunc * | f | ) | [inline] |
Delete test function.
| f | deleting function. |
Referenced by ccunit_addTestFunc(), and destroy().

| CCUnitTestCase* ccunit_newTestCase | ( | const char * | name | ) |
create new test case.
| name | test case name. |
References ccunit_initList(), ccunit_initTest(), ccunitTypeTestCase, destroy(), CCUnitTestCase::name, run(), safe_strdup, CCUnitTestCase::test, and CCUnitTestCase::testFuncs.
Referenced by ccunit_addNewTestCase().


| CCUnitTestFunc * ccunit_newTestFunc | ( | const char * | name, | |
| const char * | desc, | |||
| void(*)() | runTest | |||
| ) |
Create new test function.
| name | function name. | |
| desc | function description. | |
| runTest | run test function. |
Referenced by ccunit_addNewTestFunc().

|
|
hosts this site. | Send comments to: CCUnit Developer |
Generated on Sun Aug 29 2010 10:59:33 for CCUnit by 1.7.1
|