Scl test teardown: Difference between revisions

From STRIDE Wiki
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
= The scl_test_teardown pragma =
= 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.
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 ==
== Syntax ==
Line 13: Line 13:
|-
|-
| ''test-unit-name''
| ''test-unit-name''
| String
| Identifier
| Name of a captured test unit.
| Name of a captured test unit.
|-  
|-  
| ''function-name''
| ''function-name''
| String
| Identifier
| Name of a member function of the test unit to be used as a teardown fixture.  
| Name of a member function of the test unit to be used as a teardown fixture.  
|}
|}
Line 24: Line 24:
* This pragma identifies the setup fixture of an existing test unit, i.e. either a class with [[scl_test_class]] applied to it, a set of functions with [[scl_test_flist]] applied to it, or a C struct with [[scl_test_cclass]] applied to it.
* This pragma identifies the setup fixture of an existing test unit, i.e. either a class with [[scl_test_class]] applied to it, a set of functions with [[scl_test_flist]] applied to it, or a C struct with [[scl_test_cclass]] applied to it.
* There may be only one teardown fixture per test unit.
* There may be only one teardown fixture per test unit.
* This pragma can only work in STRIDE version 2.1 or later.


== Example ==
== Example ==

Revision as of 16:43, 14 June 2011

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 Identifier Name of a captured test unit.
function-name Identifier Name of a member function of the test unit to be used as a teardown 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, a set of functions with scl_test_flist applied to it, or a C struct with scl_test_cclass applied to it.
  • There may be only one teardown fixture per test unit.

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 units.