Scl test setup: Difference between revisions
Jump to navigation
Jump to search
(New page: = The scl_test_setup pragma = The scl_test_setup pragma declares a member method to be a setup fixture for the class. If specified, the setup method will be called before to the execution...) |
No edit summary |
||
| Line 1: | Line 1: | ||
= The scl_test_setup pragma = | = The scl_test_setup pragma = | ||
The scl_test_setup pragma declares a member method to be a setup fixture for | The scl_test_setup pragma declares a member method to be a setup fixture for an existing test unit. The setup method will be called before the execution of each test method. | ||
== Syntax == | == Syntax == | ||
| Line 18: | Line 18: | ||
| ''function-name'' | | ''function-name'' | ||
| String | | String | ||
| Name of a member function of the test unit to be used as a setup fixture | | Name of a member function of the test unit to be used as a setup fixture. | ||
|} | |} | ||
== Notes == | == Notes == | ||
* This pragma identifies the setup 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 setup fixture per test unit. | |||
* The test unit name must match the class-name parameter of an [[scl_test_class|scl_test_class pragma]], or the test-unit-name parameter of an [[scl_test_flist|scl_test_flist pragma]] that has already been declared. | |||
* This pragma can only work in STRIDE version 2.1 or later. | * 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. | * The host PC must also have a recent distribution of ActiveState Perl installed. | ||
Revision as of 00:13, 12 July 2008
The scl_test_setup pragma
The scl_test_setup pragma declares a member method to be a setup fixture for an existing test unit. The setup method will be called before the execution of each test method.
Syntax
#pragma scl_test_setup(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 setup fixture. |
Notes
- This pragma identifies the setup 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 setup 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.
- Refer to the Test_Units page for more information on capturing and qualifying test classes.
Example
/*
* Example test class using Runtime test services
*
* @description
* this is a basic test class that uses the C runtime API to set status
* and add comments.
*
*/
#include <srtest.h>
class RuntimeServices_fixtures {
public:
void setup (void)
{
srTestCaseAddComment(srTEST_CASE_DEFAULT, "setup called");
}
void teardown (void)
{
srTestCaseAddComment(srTEST_CASE_DEFAULT, "teardown called");
}
void tc_ExpectPass(void)
{
srTestCaseAddComment(srTEST_CASE_DEFAULT, "this test should pass");
srTestCaseSetStatus(srTEST_CASE_DEFAULT, srTEST_PASS, 0);
}
void tc_ExpectFail(void)
{
srTestCaseAddComment(srTEST_CASE_DEFAULT, "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