Scl test teardown: Difference between revisions
Jump to navigation
Jump to search
Line 36: | Line 36: | ||
void setup (void) | void setup (void) | ||
{ | { | ||
srTestCaseAddComment(srTEST_CASE_DEFAULT, "setup called"); | srTestCaseAddComment(srTEST_CASE_DEFAULT, srNULL, "setup called"); | ||
} | } | ||
void teardown (void) | void teardown (void) | ||
{ | { | ||
srTestCaseAddComment(srTEST_CASE_DEFAULT, "teardown called"); | srTestCaseAddComment(srTEST_CASE_DEFAULT, srNULL, "teardown called"); | ||
} | } | ||
void tc_ExpectPass(void) | void tc_ExpectPass(void) | ||
{ | { | ||
srTestCaseAddComment(srTEST_CASE_DEFAULT, "this test should pass"); | srTestCaseAddComment(srTEST_CASE_DEFAULT, srNULL, "this test should pass"); | ||
srTestCaseSetStatus(srTEST_CASE_DEFAULT, srTEST_PASS, 0); | srTestCaseSetStatus(srTEST_CASE_DEFAULT, srTEST_PASS, 0); | ||
} | } | ||
void tc_ExpectFail(void) | void tc_ExpectFail(void) | ||
{ | { | ||
srTestCaseAddComment(srTEST_CASE_DEFAULT, "this test should fail"); | srTestCaseAddComment(srTEST_CASE_DEFAULT, srNULL, "this test should fail"); | ||
srTestCaseSetStatus(srTEST_CASE_DEFAULT, srTEST_FAIL, 0); | srTestCaseSetStatus(srTEST_CASE_DEFAULT, srTEST_FAIL, 0); | ||
} | } |
Revision as of 19:06, 5 November 2008
The scl_test_teardown pragma
The scl_test_teardown pragma declares a member method to be a teardown fixture for an existing test unit. The teardown method will be called after the execution of each test method.
Syntax
#pragma scl_test_teardown(test-unit-name, function-name)
Parameters | Type | Description |
test-unit-name | String | Name of a captured test unit. |
function-name | String | Name of a member function of the test unit to be used as a teardown fixture. |
Notes
- This pragma identifies the teardown fixture of an existing test unit, i.e. either a class with scl_test_class applied to it, or a function name with scl_test_flist applied to it.
- There may be only one teardown fixture per test unit.
- The test unit name must match the class-name parameter of an scl_test_class pragma, or the test-unit-name parameter of an scl_test_flist pragma that has already been declared.
- This pragma can only work in STRIDE version 2.1 or later.
- The host PC must also have a recent distribution of ActiveState Perl installed.
Example
#include <srtest.h>
class RuntimeServices_fixtures {
public:
void setup (void)
{
srTestCaseAddComment(srTEST_CASE_DEFAULT, srNULL, "setup called");
}
void teardown (void)
{
srTestCaseAddComment(srTEST_CASE_DEFAULT, srNULL, "teardown called");
}
void tc_ExpectPass(void)
{
srTestCaseAddComment(srTEST_CASE_DEFAULT, srNULL, "this test should pass");
srTestCaseSetStatus(srTEST_CASE_DEFAULT, srTEST_PASS, 0);
}
void tc_ExpectFail(void)
{
srTestCaseAddComment(srTEST_CASE_DEFAULT, srNULL, "this test should fail");
srTestCaseSetStatus(srTEST_CASE_DEFAULT, srTEST_FAIL, 0);
}
};
#ifdef _SCL
#pragma scl_test_class(RuntimeServices_fixtures)
#pragma scl_test_setup(RuntimeServices_fixtures, setup)
#pragma scl_test_teardown(RuntimeServices_fixtures, teardown)
#endif
See Also
- Refer to the Test Units page for more information on capturing and qualifying test classes.