| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- /*-----------------------------------------------------------------------------
- * Name: cv_framework.c
- * Purpose: Test framework entry point
- *----------------------------------------------------------------------------
- * Copyright (c) 2017 ARM Limited. All rights reserved.
- *----------------------------------------------------------------------------*/
- #include "CV_Framework.h"
- #include "cmsis_cv.h"
-
- /* Prototypes */
- void ts_cmsis_cv(void);
- void closeDebug(void);
- /*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
- /**
- \defgroup framework_funcs Framework Functions
- \brief Functions in the Framework software component
- \details
- @{
- */
- /*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
- /**
- \brief Close the debug session.
- \details
- Debug session dead end - debug script should close session here.
- */
- void closeDebug(void) {
- __NOP();
- // Test completed
- }
- /*=======0=========1=========2=========3=========4=========5=========6=========7=========8=========9=========0=========1====*/
- /**
- \brief This is CORE Validation test suite.
- \details
- Program flow:
- -# Test report statistics is initialized
- -# Test report headers are written to the standard output
- -# All defined test cases are executed:
- - Test case statistics is initialized
- - Test case report header is written to the standard output
- - Test case is executed
- - Test case results are written to the standard output
- - Test case report footer is written to the standard output
- - Test case is closed
- -# Test report footer is written to the standard output
- -# Debug session ends in dead loop
- */
- void ts_cmsis_cv () {
- const char *fn;
- uint32_t tc, no;
- (void)ritf.Init (); /* Init test report */
- (void)ritf.Open (ts.ReportTitle, /* Write test report title */
- ts.Date, /* Write compilation date */
- ts.Time, /* Write compilation time */
- ts.FileName); /* Write module file name */
- /* Execute all test cases */
- for (tc = 0; tc < ts.NumOfTC; tc++) {
- no = ts.TCBaseNum+tc; /* Test case number */
- fn = ts.TC[tc].TFName; /* Test function name string */
- (void)ritf.Open_TC (no, fn); /* Open test case #(Base + TC) */
- if (ts.TC[tc].en != 0U) {
- ts.TC[tc].TestFunc(); /* Execute test case if enabled */
- }
- (void)ritf.Close_TC (); /* Close test case */
- }
- (void)ritf.Close (); /* Close test report */
- closeDebug(); /* Close debug session */
- }
- /**
- \brief This is the entry point of the test framework.
- \details
- Program flow:
- -# Hardware is first initialized if Init callback function is provided
- -# Main thread is initialized
- */
- void cmsis_cv (void) {
-
- /* Init test suite */
- if (ts.Init != NULL) {
- ts.Init(); /* Init hardware */
- }
- ts_cmsis_cv();
- }
- void cmsis_cv_abort (const char *fn, uint32_t ln, char *desc) {
- (void)__set_result(fn, ln, FAILED, desc);
- (void)ritf.Close_TC();
- (void)ritf.Close();
- closeDebug();
- }
- /**
- @}
- */
- // end of group framework_funcs
|