Enhancements in the test engine, not finished.

git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@10835 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
Giovanni Di Sirio 2017-10-16 15:09:11 +00:00
parent 6bbfd2126f
commit eb6b6685f0
37 changed files with 2359 additions and 2338 deletions

View File

@ -103,7 +103,7 @@ include $(CHIBIOS)/os/hal/osal/rt/osal.mk
include $(CHIBIOS)/os/rt/rt.mk
include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/port_v7m.mk
# Other files (optional).
#include $(CHIBIOS)/test/rt/test.mk
include $(CHIBIOS)/test/rt/test.mk
# Define linker script file here
LDSCRIPT= $(STARTUPLD)/STM32F746xG.ld

View File

@ -16,7 +16,8 @@
#include "ch.h"
#include "hal.h"
//#include "ch_test.h"
#include "ch_test.h"
#include "rt_test_root.h"
/*
* This is a periodic thread that does absolutely nothing except flashing
@ -71,8 +72,8 @@ int main(void) {
* sleeping in a loop and check the button state.
*/
while (true) {
// if (palReadLine(LINE_BUTTON_USER))
// test_execute((BaseSequentialStream *)&SD1);
if (palReadLine(LINE_BUTTON_USER))
test_execute((BaseSequentialStream *)&SD1, rt_test_suite);
chThdSleepMilliseconds(2000);
}
}

View File

@ -24,7 +24,6 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
/*===========================================================================*/
/* Module local definitions. */
@ -134,7 +133,7 @@ bool _test_assert_time_window(systime_t start,
systime_t end,
const char *msg) {
return _test_assert(osalOsIsTimeWithinX(osalOsGetSystemTimeX(), start, end),
return _test_assert(osalTimeIsInRangeX(osalOsGetSystemTimeX(), start, end),
msg);
}
@ -224,7 +223,7 @@ void test_emit_token_i(char token) {
*
* @api
*/
msg_t test_execute(BaseSequentialStream *stream) {
msg_t test_execute(BaseSequentialStream *stream, testsuite_t ts) {
int i, j;
test_chp = stream;
@ -252,21 +251,21 @@ msg_t test_execute(BaseSequentialStream *stream) {
test_global_fail = false;
i = 0;
while (test_suite[i]) {
while (ts[i] != NULL) {
j = 0;
while (test_suite[i][j]) {
while (ts[i][j] != NULL) {
print_line();
test_print("--- Test Case ");
test_printn(i + 1);
test_print(".");
test_printn(j + 1);
test_print(" (");
test_print(test_suite[i][j]->name);
test_print(ts[i][j]->name);
test_println(")");
#if TEST_DELAY_BETWEEN_TESTS > 0
osalThreadSleepMilliseconds(TEST_DELAY_BETWEEN_TESTS);
#endif
execute_test(test_suite[i][j]);
execute_test(ts[i][j]);
if (test_local_fail) {
test_print("--- Result: FAILURE (#");
test_printn(test_step);

View File

@ -65,6 +65,27 @@ typedef struct {
void (*execute)(void); /**< @brief Test case execution function. */
} testcase_t;
/**
* @brief Structure representing a test sequence.
*/
typedef const struct {
const char *name; /**< @brief Name of the test sequence. */
testcase_t *cases; /**< @brief Test cases array. */
} testsequence_t;
/**
* @brief Type of a test suite.
*/
typedef const struct {
const char *name; /**< @brief Name of the test suite. */
testsequence_t *sequences; /**< @brief Test sequences array. */
} ts_t;
/**
* @brief Type of a test suite.
*/
typedef const testcase_t * const *testsuite_t[];
/*===========================================================================*/
/* Module macros. */
/*===========================================================================*/
@ -173,7 +194,7 @@ extern "C" {
void test_println(const char *msgp);
void test_emit_token(char token);
void test_emit_token_i(char token);
msg_t test_execute(BaseSequentialStream *stream);
msg_t test_execute(BaseSequentialStream *stream, testsuite_t ts);
#ifdef __cplusplus
}
#endif
@ -182,12 +203,6 @@ extern "C" {
/* Module inline functions. */
/*===========================================================================*/
/*===========================================================================*/
/* Late inclusions. */
/*===========================================================================*/
#include "test_root.h"
#endif /* CH_TEST_H */
/** @} */

View File

@ -36,8 +36,8 @@
</toolChain>
</folderInfo>
<sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="components"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="source"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="components"/>
</sourceEntries>
</configuration>
</storageModule>

File diff suppressed because it is too large Load Diff

View File

@ -36,8 +36,8 @@
</toolChain>
</folderInfo>
<sourceEntries>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="components"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="source"/>
<entry flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name="components"/>
</sourceEntries>
</configuration>
</storageModule>

File diff suppressed because it is too large Load Diff

View File

@ -21,30 +21,30 @@
* through successive improvements.
*
* <h2>Test Sequences</h2>
* - @subpage test_sequence_001
* - @subpage test_sequence_002
* - @subpage test_sequence_003
* - @subpage test_sequence_004
* - @subpage test_sequence_005
* - @subpage test_sequence_006
* - @subpage test_sequence_007
* - @subpage test_sequence_008
* - @subpage test_sequence_009
* - @subpage test_sequence_010
* - @subpage test_sequence_011
* - @subpage test_sequence_012
* - @subpage test_sequence_013
* - @subpage rt_test_sequence_001
* - @subpage rt_test_sequence_002
* - @subpage rt_test_sequence_003
* - @subpage rt_test_sequence_004
* - @subpage rt_test_sequence_005
* - @subpage rt_test_sequence_006
* - @subpage rt_test_sequence_007
* - @subpage rt_test_sequence_008
* - @subpage rt_test_sequence_009
* - @subpage rt_test_sequence_010
* - @subpage rt_test_sequence_011
* - @subpage rt_test_sequence_012
* - @subpage rt_test_sequence_013
* .
*/
/**
* @file test_root.c
* @file rt_test_root.c
* @brief Test Suite root structures code.
*/
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
#if !defined(__DOXYGEN__)
@ -55,36 +55,36 @@
/**
* @brief Array of all the test sequences.
*/
const testcase_t * const *test_suite[] = {
test_sequence_001,
test_sequence_002,
test_sequence_003,
test_sequence_004,
const testcase_t * const *rt_test_suite[] = {
rt_test_sequence_001,
rt_test_sequence_002,
rt_test_sequence_003,
rt_test_sequence_004,
#if (CH_CFG_USE_SEMAPHORES) || defined(__DOXYGEN__)
test_sequence_005,
rt_test_sequence_005,
#endif
#if (CH_CFG_USE_MUTEXES) || defined(__DOXYGEN__)
test_sequence_006,
rt_test_sequence_006,
#endif
#if (CH_CFG_USE_MESSAGES) || defined(__DOXYGEN__)
test_sequence_007,
rt_test_sequence_007,
#endif
#if (CH_CFG_USE_EVENTS) || defined(__DOXYGEN__)
test_sequence_008,
rt_test_sequence_008,
#endif
#if (CH_CFG_USE_MAILBOXES) || defined(__DOXYGEN__)
test_sequence_009,
rt_test_sequence_009,
#endif
#if (CH_CFG_USE_MEMPOOLS) || defined(__DOXYGEN__)
test_sequence_010,
rt_test_sequence_010,
#endif
#if (CH_CFG_USE_HEAP) || defined(__DOXYGEN__)
test_sequence_011,
rt_test_sequence_011,
#endif
#if (CH_CFG_USE_DYNAMIC) || defined(__DOXYGEN__)
test_sequence_012,
rt_test_sequence_012,
#endif
test_sequence_013,
rt_test_sequence_013,
NULL
};

View File

@ -15,26 +15,26 @@
*/
/**
* @file test_root.h
* @file rt_test_root.h
* @brief Test Suite root structures header.
*/
#ifndef TEST_ROOT_H
#define TEST_ROOT_H
#ifndef RT_TEST_ROOT_H
#define RT_TEST_ROOT_H
#include "test_sequence_001.h"
#include "test_sequence_002.h"
#include "test_sequence_003.h"
#include "test_sequence_004.h"
#include "test_sequence_005.h"
#include "test_sequence_006.h"
#include "test_sequence_007.h"
#include "test_sequence_008.h"
#include "test_sequence_009.h"
#include "test_sequence_010.h"
#include "test_sequence_011.h"
#include "test_sequence_012.h"
#include "test_sequence_013.h"
#include "rt_test_sequence_001.h"
#include "rt_test_sequence_002.h"
#include "rt_test_sequence_003.h"
#include "rt_test_sequence_004.h"
#include "rt_test_sequence_005.h"
#include "rt_test_sequence_006.h"
#include "rt_test_sequence_007.h"
#include "rt_test_sequence_008.h"
#include "rt_test_sequence_009.h"
#include "rt_test_sequence_010.h"
#include "rt_test_sequence_011.h"
#include "rt_test_sequence_012.h"
#include "rt_test_sequence_013.h"
#if !defined(__DOXYGEN__)
@ -42,7 +42,7 @@
/* External declarations. */
/*===========================================================================*/
extern const testcase_t * const *test_suite[];
extern const testcase_t * const *rt_test_suite[];
#ifdef __cplusplus
extern "C" {
@ -60,7 +60,7 @@ extern "C" {
/*
* Allowed delay in timeout checks.
*/
#define ALLOWED_DELAY MS2ST(2)
#define ALLOWED_DELAY TIME_MS2I(2)
/*
* Maximum number of test threads.
@ -99,4 +99,4 @@ systime_t test_wait_tick(void);
#endif /* !defined(__DOXYGEN__) */
#endif /* TEST_ROOT_H */
#endif /* RT_TEST_ROOT_H */

View File

@ -16,23 +16,23 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_001.c
* @file rt_test_sequence_001.c
* @brief Test Sequence 001 code.
*
* @page test_sequence_001 [1] Information
* @page rt_test_sequence_001 [1] Information
*
* File: @ref test_sequence_001.c
* File: @ref rt_test_sequence_001.c
*
* <h2>Description</h2>
* This sequence reports configuration and version information about
* the RT kernel.
*
* <h2>Test Cases</h2>
* - @subpage test_001_001
* - @subpage test_001_002
* - @subpage rt_test_001_001
* - @subpage rt_test_001_002
* .
*/
@ -47,7 +47,7 @@
****************************************************************************/
/**
* @page test_001_001 [1.1] Kernel Info
* @page rt_test_001_001 [1.1] Kernel Info
*
* <h2>Description</h2>
* The version numbers are reported.
@ -57,7 +57,7 @@
* .
*/
static void test_001_001_execute(void) {
static void rt_test_001_001_execute(void) {
/* [1.1.1] Prints the version string.*/
test_set_step(1);
@ -80,15 +80,15 @@ static void test_001_001_execute(void) {
}
}
static const testcase_t test_001_001 = {
static const testcase_t rt_test_001_001 = {
"Kernel Info",
NULL,
NULL,
test_001_001_execute
rt_test_001_001_execute
};
/**
* @page test_001_002 [1.2] Kernel Settings
* @page rt_test_001_002 [1.2] Kernel Settings
*
* <h2>Description</h2>
* The static kernel settings are reported.
@ -98,7 +98,7 @@ static const testcase_t test_001_001 = {
* .
*/
static void test_001_002_execute(void) {
static void rt_test_001_002_execute(void) {
/* [1.2.1] Prints the configuration options settings.*/
test_set_step(1);
@ -208,11 +208,11 @@ static void test_001_002_execute(void) {
}
}
static const testcase_t test_001_002 = {
static const testcase_t rt_test_001_002 = {
"Kernel Settings",
NULL,
NULL,
test_001_002_execute
rt_test_001_002_execute
};
/****************************************************************************
@ -222,8 +222,8 @@ static const testcase_t test_001_002 = {
/**
* @brief Information.
*/
const testcase_t * const test_sequence_001[] = {
&test_001_001,
&test_001_002,
const testcase_t * const rt_test_sequence_001[] = {
&rt_test_001_001,
&rt_test_001_002,
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_001.h
* @file rt_test_sequence_001.h
* @brief Test Sequence 001 header.
*/
#ifndef TEST_SEQUENCE_001_H
#define TEST_SEQUENCE_001_H
#ifndef RT_TEST_SEQUENCE_001_H
#define RT_TEST_SEQUENCE_001_H
extern const testcase_t * const test_sequence_001[];
extern const testcase_t * const rt_test_sequence_001[];
#endif /* TEST_SEQUENCE_001_H */
#endif /* RT_TEST_SEQUENCE_001_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_002.c
* @file rt_test_sequence_002.c
* @brief Test Sequence 002 code.
*
* @page test_sequence_002 [2] System layer and port interface
* @page rt_test_sequence_002 [2] System layer and port interface
*
* File: @ref test_sequence_002.c
* File: @ref rt_test_sequence_002.c
*
* <h2>Description</h2>
* The functionality of the system layer and port interface is tested.
@ -34,10 +34,10 @@
* (CH_DBG_STATE_CHECKER=TRUE).
*
* <h2>Test Cases</h2>
* - @subpage test_002_001
* - @subpage test_002_002
* - @subpage test_002_003
* - @subpage test_002_004
* - @subpage rt_test_002_001
* - @subpage rt_test_002_002
* - @subpage rt_test_002_003
* - @subpage rt_test_002_004
* .
*/
@ -67,7 +67,7 @@ static void vtcb(void *p) {
****************************************************************************/
/**
* @page test_002_001 [2.1] System integrity functionality
* @page rt_test_002_001 [2.1] System integrity functionality
*
* <h2>Description</h2>
* The system self-test functionality is invoked in order to make an
@ -81,7 +81,7 @@ static void vtcb(void *p) {
* .
*/
static void test_002_001_execute(void) {
static void rt_test_002_001_execute(void) {
bool result;
/* [2.1.1] Testing Ready List integrity.*/
@ -121,15 +121,15 @@ static void test_002_001_execute(void) {
}
}
static const testcase_t test_002_001 = {
static const testcase_t rt_test_002_001 = {
"System integrity functionality",
NULL,
NULL,
test_002_001_execute
rt_test_002_001_execute
};
/**
* @page test_002_002 [2.2] Critical zones functionality
* @page rt_test_002_002 [2.2] Critical zones functionality
*
* <h2>Description</h2>
* The critical zones API is invoked for coverage.
@ -145,7 +145,7 @@ static const testcase_t test_002_001 = {
* .
*/
static void test_002_002_execute(void) {
static void rt_test_002_002_execute(void) {
syssts_t sts;
virtual_timer_t vt;
@ -194,15 +194,15 @@ static void test_002_002_execute(void) {
}
}
static const testcase_t test_002_002 = {
static const testcase_t rt_test_002_002 = {
"Critical zones functionality",
NULL,
NULL,
test_002_002_execute
rt_test_002_002_execute
};
/**
* @page test_002_003 [2.3] Interrupts handling functionality
* @page rt_test_002_003 [2.3] Interrupts handling functionality
*
* <h2>Description</h2>
* The interrupts handling API is invoked for coverage.
@ -212,7 +212,7 @@ static const testcase_t test_002_002 = {
* .
*/
static void test_002_003_execute(void) {
static void rt_test_002_003_execute(void) {
/* [2.3.1] Testing chSysSuspend(), chSysDisable() and
chSysEnable().*/
@ -225,15 +225,15 @@ static void test_002_003_execute(void) {
}
}
static const testcase_t test_002_003 = {
static const testcase_t rt_test_002_003 = {
"Interrupts handling functionality",
NULL,
NULL,
test_002_003_execute
rt_test_002_003_execute
};
/**
* @page test_002_004 [2.4] System Tick Counter functionality
* @page rt_test_002_004 [2.4] System Tick Counter functionality
*
* <h2>Description</h2>
* The functionality of the API @p chVTGetSystemTimeX() is tested.
@ -244,7 +244,7 @@ static const testcase_t test_002_003 = {
* .
*/
static void test_002_004_execute(void) {
static void rt_test_002_004_execute(void) {
/* [2.4.1] A System Tick Counter increment is expected, the test
simply hangs if it does not happen.*/
@ -259,11 +259,11 @@ static void test_002_004_execute(void) {
}
}
static const testcase_t test_002_004 = {
static const testcase_t rt_test_002_004 = {
"System Tick Counter functionality",
NULL,
NULL,
test_002_004_execute
rt_test_002_004_execute
};
/****************************************************************************
@ -273,10 +273,10 @@ static const testcase_t test_002_004 = {
/**
* @brief System layer and port interface.
*/
const testcase_t * const test_sequence_002[] = {
&test_002_001,
&test_002_002,
&test_002_003,
&test_002_004,
const testcase_t * const rt_test_sequence_002[] = {
&rt_test_002_001,
&rt_test_002_002,
&rt_test_002_003,
&rt_test_002_004,
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_002.h
* @file rt_test_sequence_002.h
* @brief Test Sequence 002 header.
*/
#ifndef TEST_SEQUENCE_002_H
#define TEST_SEQUENCE_002_H
#ifndef RT_TEST_SEQUENCE_002_H
#define RT_TEST_SEQUENCE_002_H
extern const testcase_t * const test_sequence_002[];
extern const testcase_t * const rt_test_sequence_002[];
#endif /* TEST_SEQUENCE_002_H */
#endif /* RT_TEST_SEQUENCE_002_H */

View File

@ -16,25 +16,25 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_003.c
* @file rt_test_sequence_003.c
* @brief Test Sequence 003 code.
*
* @page test_sequence_003 [3] Threads Functionality
* @page rt_test_sequence_003 [3] Threads Functionality
*
* File: @ref test_sequence_003.c
* File: @ref rt_test_sequence_003.c
*
* <h2>Description</h2>
* This sequence tests the ChibiOS/RT functionalities related to
* threading.
*
* <h2>Test Cases</h2>
* - @subpage test_003_001
* - @subpage test_003_002
* - @subpage test_003_003
* - @subpage test_003_004
* - @subpage rt_test_003_001
* - @subpage rt_test_003_002
* - @subpage rt_test_003_003
* - @subpage rt_test_003_004
* .
*/
@ -52,7 +52,7 @@ static THD_FUNCTION(thread, p) {
****************************************************************************/
/**
* @page test_003_001 [3.1] Thread Sleep functionality
* @page rt_test_003_001 [3.1] Thread Sleep functionality
*
* <h2>Description</h2>
* The functionality of @p chThdSleep() and derivatives is tested.
@ -74,7 +74,7 @@ static THD_FUNCTION(thread, p) {
* .
*/
static void test_003_001_execute(void) {
static void rt_test_003_001_execute(void) {
systime_t time;
/* [3.1.1] The current system time is read then a sleep is performed
@ -96,8 +96,8 @@ static void test_003_001_execute(void) {
{
time = chVTGetSystemTimeX();
chThdSleepMicroseconds(100000);
test_assert_time_window(time + US2ST(100000),
time + US2ST(100000) + CH_CFG_ST_TIMEDELTA + 1,
test_assert_time_window(time + TIME_US2I(100000),
time + TIME_US2I(100000) + CH_CFG_ST_TIMEDELTA + 1,
"out of time window");
}
@ -108,8 +108,8 @@ static void test_003_001_execute(void) {
{
time = chVTGetSystemTimeX();
chThdSleepMilliseconds(100);
test_assert_time_window(time + MS2ST(100),
time + MS2ST(100) + CH_CFG_ST_TIMEDELTA + 1,
test_assert_time_window(time + TIME_MS2I(100),
time + TIME_MS2I(100) + CH_CFG_ST_TIMEDELTA + 1,
"out of time window");
}
@ -119,8 +119,8 @@ static void test_003_001_execute(void) {
{
time = chVTGetSystemTimeX();
chThdSleepSeconds(1);
test_assert_time_window(time + S2ST(1),
time + S2ST(1) + CH_CFG_ST_TIMEDELTA + 1,
test_assert_time_window(time + TIME_S2I(1),
time + TIME_S2I(1) + CH_CFG_ST_TIMEDELTA + 1,
"out of time window");
}
@ -136,15 +136,15 @@ static void test_003_001_execute(void) {
}
}
static const testcase_t test_003_001 = {
static const testcase_t rt_test_003_001 = {
"Thread Sleep functionality",
NULL,
NULL,
test_003_001_execute
rt_test_003_001_execute
};
/**
* @page test_003_002 [3.2] Ready List functionality, threads priority order
* @page rt_test_003_002 [3.2] Ready List functionality, threads priority order
*
* <h2>Description</h2>
* Five threads, are enqueued in the ready list and atomically
@ -161,7 +161,7 @@ static const testcase_t test_003_001 = {
* .
*/
static void test_003_002_execute(void) {
static void rt_test_003_002_execute(void) {
/* [3.2.1] Creating 5 threads with increasing priority, execution
sequence is tested.*/
@ -203,15 +203,15 @@ static void test_003_002_execute(void) {
}
}
static const testcase_t test_003_002 = {
static const testcase_t rt_test_003_002 = {
"Ready List functionality, threads priority order",
NULL,
NULL,
test_003_002_execute
rt_test_003_002_execute
};
/**
* @page test_003_003 [3.3] Priority change test
* @page rt_test_003_003 [3.3] Priority change test
*
* <h2>Description</h2>
* A series of priority changes are performed on the current thread in
@ -225,7 +225,7 @@ static const testcase_t test_003_002 = {
* .
*/
static void test_003_003_execute(void) {
static void rt_test_003_003_execute(void) {
tprio_t prio, p1;
/* [3.3.1] Thread priority is increased by one then a check is
@ -248,16 +248,16 @@ static void test_003_003_execute(void) {
}
}
static const testcase_t test_003_003 = {
static const testcase_t rt_test_003_003 = {
"Priority change test",
NULL,
NULL,
test_003_003_execute
rt_test_003_003_execute
};
#if (CH_CFG_USE_MUTEXES) || defined(__DOXYGEN__)
/**
* @page test_003_004 [3.4] Priority change test with Priority Inheritance
* @page rt_test_003_004 [3.4] Priority change test with Priority Inheritance
*
* <h2>Description</h2>
* A series of priority changes are performed on the current thread in
@ -278,7 +278,7 @@ static const testcase_t test_003_003 = {
* .
*/
static void test_003_004_execute(void) {
static void rt_test_003_004_execute(void) {
tprio_t prio, p1;
/* [3.4.1] Simulating a priority boost situation (prio > realprio).*/
@ -318,11 +318,11 @@ static void test_003_004_execute(void) {
}
}
static const testcase_t test_003_004 = {
static const testcase_t rt_test_003_004 = {
"Priority change test with Priority Inheritance",
NULL,
NULL,
test_003_004_execute
rt_test_003_004_execute
};
#endif /* CH_CFG_USE_MUTEXES */
@ -333,12 +333,12 @@ static const testcase_t test_003_004 = {
/**
* @brief Threads Functionality.
*/
const testcase_t * const test_sequence_003[] = {
&test_003_001,
&test_003_002,
&test_003_003,
const testcase_t * const rt_test_sequence_003[] = {
&rt_test_003_001,
&rt_test_003_002,
&rt_test_003_003,
#if (CH_CFG_USE_MUTEXES) || defined(__DOXYGEN__)
&test_003_004,
&rt_test_003_004,
#endif
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_003.h
* @file rt_test_sequence_003.h
* @brief Test Sequence 003 header.
*/
#ifndef TEST_SEQUENCE_003_H
#define TEST_SEQUENCE_003_H
#ifndef RT_TEST_SEQUENCE_003_H
#define RT_TEST_SEQUENCE_003_H
extern const testcase_t * const test_sequence_003[];
extern const testcase_t * const rt_test_sequence_003[];
#endif /* TEST_SEQUENCE_003_H */
#endif /* RT_TEST_SEQUENCE_003_H */

View File

@ -16,22 +16,22 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_004.c
* @file rt_test_sequence_004.c
* @brief Test Sequence 004 code.
*
* @page test_sequence_004 [4] Suspend/Resume
* @page rt_test_sequence_004 [4] Suspend/Resume
*
* File: @ref test_sequence_004.c
* File: @ref rt_test_sequence_004.c
*
* <h2>Description</h2>
* This sequence tests the ChibiOS/RT functionalities related to
* threads suspend/resume.
*
* <h2>Test Cases</h2>
* - @subpage test_004_001
* - @subpage rt_test_004_001
* .
*/
@ -55,7 +55,7 @@ static THD_FUNCTION(thread1, p) {
****************************************************************************/
/**
* @page test_004_001 [4.1] Suspend and Resume functionality
* @page rt_test_004_001 [4.1] Suspend and Resume functionality
*
* <h2>Description</h2>
* The functionality of chThdSuspendTimeoutS() and chThdResumeI() is
@ -71,11 +71,11 @@ static THD_FUNCTION(thread1, p) {
* .
*/
static void test_004_001_setup(void) {
static void rt_test_004_001_setup(void) {
tr1 = NULL;
}
static void test_004_001_execute(void) {
static void rt_test_004_001_execute(void) {
systime_t time;
msg_t msg;
@ -100,21 +100,21 @@ static void test_004_001_execute(void) {
{
chSysLock();
time = chVTGetSystemTimeX();
msg = chThdSuspendTimeoutS(&tr1, MS2ST(1000));
msg = chThdSuspendTimeoutS(&tr1, TIME_MS2I(1000));
chSysUnlock();
test_assert_time_window(time + MS2ST(1000),
time + MS2ST(1000) + CH_CFG_ST_TIMEDELTA + 1,
test_assert_time_window(time + TIME_MS2I(1000),
time + TIME_MS2I(1000) + CH_CFG_ST_TIMEDELTA + 1,
"out of time window");
test_assert(NULL == tr1, "not NULL");
test_assert(MSG_TIMEOUT == msg, "wrong returned message");
}
}
static const testcase_t test_004_001 = {
static const testcase_t rt_test_004_001 = {
"Suspend and Resume functionality",
test_004_001_setup,
rt_test_004_001_setup,
NULL,
test_004_001_execute
rt_test_004_001_execute
};
/****************************************************************************
@ -124,7 +124,7 @@ static const testcase_t test_004_001 = {
/**
* @brief Suspend/Resume.
*/
const testcase_t * const test_sequence_004[] = {
&test_004_001,
const testcase_t * const rt_test_sequence_004[] = {
&rt_test_004_001,
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_004.h
* @file rt_test_sequence_004.h
* @brief Test Sequence 004 header.
*/
#ifndef TEST_SEQUENCE_004_H
#define TEST_SEQUENCE_004_H
#ifndef RT_TEST_SEQUENCE_004_H
#define RT_TEST_SEQUENCE_004_H
extern const testcase_t * const test_sequence_004[];
extern const testcase_t * const rt_test_sequence_004[];
#endif /* TEST_SEQUENCE_004_H */
#endif /* RT_TEST_SEQUENCE_004_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_005.c
* @file rt_test_sequence_005.c
* @brief Test Sequence 005 code.
*
* @page test_sequence_005 [5] Counter and Binary Semaphores
* @page rt_test_sequence_005 [5] Counter and Binary Semaphores
*
* File: @ref test_sequence_005.c
* File: @ref rt_test_sequence_005.c
*
* <h2>Description</h2>
* This sequence tests the ChibiOS/RT functionalities related to
@ -37,12 +37,12 @@
* .
*
* <h2>Test Cases</h2>
* - @subpage test_005_001
* - @subpage test_005_002
* - @subpage test_005_003
* - @subpage test_005_004
* - @subpage test_005_005
* - @subpage test_005_006
* - @subpage rt_test_005_001
* - @subpage rt_test_005_002
* - @subpage rt_test_005_003
* - @subpage rt_test_005_004
* - @subpage rt_test_005_005
* - @subpage rt_test_005_006
* .
*/
@ -89,7 +89,7 @@ static THD_FUNCTION(thread4, p) {
****************************************************************************/
/**
* @page test_005_001 [5.1] Semaphore primitives, no state change
* @page rt_test_005_001 [5.1] Semaphore primitives, no state change
*
* <h2>Description</h2>
* Wait, Signal and Reset primitives are tested. The testing thread
@ -105,15 +105,15 @@ static THD_FUNCTION(thread4, p) {
* .
*/
static void test_005_001_setup(void) {
static void rt_test_005_001_setup(void) {
chSemObjectInit(&sem1, 1);
}
static void test_005_001_teardown(void) {
static void rt_test_005_001_teardown(void) {
chSemReset(&sem1, 0);
}
static void test_005_001_execute(void) {
static void rt_test_005_001_execute(void) {
/* [5.1.1] The function chSemWait() is invoked, after return the
counter and the returned message are tested.*/
@ -143,15 +143,15 @@ static void test_005_001_execute(void) {
}
}
static const testcase_t test_005_001 = {
static const testcase_t rt_test_005_001 = {
"Semaphore primitives, no state change",
test_005_001_setup,
test_005_001_teardown,
test_005_001_execute
rt_test_005_001_setup,
rt_test_005_001_teardown,
rt_test_005_001_execute
};
/**
* @page test_005_002 [5.2] Semaphore enqueuing test
* @page rt_test_005_002 [5.2] Semaphore enqueuing test
*
* <h2>Description</h2>
* Five threads with randomized priorities are enqueued to a semaphore
@ -168,11 +168,11 @@ static const testcase_t test_005_001 = {
* .
*/
static void test_005_002_setup(void) {
static void rt_test_005_002_setup(void) {
chSemObjectInit(&sem1, 0);
}
static void test_005_002_execute(void) {
static void rt_test_005_002_execute(void) {
/* [5.2.1] Five threads are created with mixed priority levels (not
increasing nor decreasing). Threads enqueue on a semaphore
@ -204,15 +204,15 @@ static void test_005_002_execute(void) {
}
}
static const testcase_t test_005_002 = {
static const testcase_t rt_test_005_002 = {
"Semaphore enqueuing test",
test_005_002_setup,
rt_test_005_002_setup,
NULL,
test_005_002_execute
rt_test_005_002_execute
};
/**
* @page test_005_003 [5.3] Semaphore timeout test
* @page rt_test_005_003 [5.3] Semaphore timeout test
*
* <h2>Description</h2>
* The three possible semaphore waiting modes (do not wait, wait with
@ -228,11 +228,11 @@ static const testcase_t test_005_002 = {
* .
*/
static void test_005_003_setup(void) {
static void rt_test_005_003_setup(void) {
chSemObjectInit(&sem1, 0);
}
static void test_005_003_execute(void) {
static void rt_test_005_003_execute(void) {
unsigned i;
systime_t target_time;
msg_t msg;
@ -251,7 +251,7 @@ static void test_005_003_execute(void) {
{
threads[0] = chThdCreateStatic(wa[0], WA_SIZE, chThdGetPriorityX() - 1,
thread2, 0);
msg = chSemWaitTimeout(&sem1, MS2ST(500));
msg = chSemWaitTimeout(&sem1, TIME_MS2I(500));
test_wait_threads();
test_assert(msg == MSG_OK, "wrong wake-up message");
test_assert(queue_isempty(&sem1.queue), "queue not empty");
@ -261,10 +261,10 @@ static void test_005_003_execute(void) {
/* [5.3.3] Testing timeout condition.*/
test_set_step(3);
{
target_time = test_wait_tick() + MS2ST(5 * 50);
target_time = test_wait_tick() + TIME_MS2I(5 * 50);
for (i = 0; i < 5; i++) {
test_emit_token('A' + i);
msg = chSemWaitTimeout(&sem1, MS2ST(50));
msg = chSemWaitTimeout(&sem1, TIME_MS2I(50));
test_assert(msg == MSG_TIMEOUT, "wrong wake-up message");
test_assert(queue_isempty(&sem1.queue), "queue not empty");
test_assert(sem1.cnt == 0, "counter not zero");
@ -275,15 +275,15 @@ static void test_005_003_execute(void) {
}
}
static const testcase_t test_005_003 = {
static const testcase_t rt_test_005_003 = {
"Semaphore timeout test",
test_005_003_setup,
rt_test_005_003_setup,
NULL,
test_005_003_execute
rt_test_005_003_execute
};
/**
* @page test_005_004 [5.4] Testing chSemAddCounterI() functionality
* @page rt_test_005_004 [5.4] Testing chSemAddCounterI() functionality
*
* <h2>Description</h2>
* The functon is tested by waking up a thread then the semaphore
@ -296,11 +296,11 @@ static const testcase_t test_005_003 = {
* .
*/
static void test_005_004_setup(void) {
static void rt_test_005_004_setup(void) {
chSemObjectInit(&sem1, 0);
}
static void test_005_004_execute(void) {
static void rt_test_005_004_execute(void) {
/* [5.4.1] A thread is created, it goes to wait on the semaphore.*/
test_set_step(1);
@ -322,15 +322,15 @@ static void test_005_004_execute(void) {
}
}
static const testcase_t test_005_004 = {
static const testcase_t rt_test_005_004 = {
"Testing chSemAddCounterI() functionality",
test_005_004_setup,
rt_test_005_004_setup,
NULL,
test_005_004_execute
rt_test_005_004_execute
};
/**
* @page test_005_005 [5.5] Testing chSemWaitSignal() functionality
* @page rt_test_005_005 [5.5] Testing chSemWaitSignal() functionality
*
* <h2>Description</h2>
* This test case explicitly addresses the @p chSemWaitSignal()
@ -352,15 +352,15 @@ static const testcase_t test_005_004 = {
* .
*/
static void test_005_005_setup(void) {
static void rt_test_005_005_setup(void) {
chSemObjectInit(&sem1, 0);
}
static void test_005_005_teardown(void) {
static void rt_test_005_005_teardown(void) {
test_wait_threads();
}
static void test_005_005_execute(void) {
static void rt_test_005_005_execute(void) {
/* [5.5.1] An higher priority thread is created that performs
non-atomical wait and signal operations on a semaphore.*/
@ -390,15 +390,15 @@ static void test_005_005_execute(void) {
}
}
static const testcase_t test_005_005 = {
static const testcase_t rt_test_005_005 = {
"Testing chSemWaitSignal() functionality",
test_005_005_setup,
test_005_005_teardown,
test_005_005_execute
rt_test_005_005_setup,
rt_test_005_005_teardown,
rt_test_005_005_execute
};
/**
* @page test_005_006 [5.6] Testing Binary Semaphores special case
* @page rt_test_005_006 [5.6] Testing Binary Semaphores special case
*
* <h2>Description</h2>
* This test case tests the binary semaphores functionality. The test
@ -421,11 +421,11 @@ static const testcase_t test_005_005 = {
* .
*/
static void test_005_006_teardown(void) {
static void rt_test_005_006_teardown(void) {
test_wait_threads();
}
static void test_005_006_execute(void) {
static void rt_test_005_006_execute(void) {
binary_semaphore_t bsem;
msg_t msg;
@ -481,11 +481,11 @@ static void test_005_006_execute(void) {
}
}
static const testcase_t test_005_006 = {
static const testcase_t rt_test_005_006 = {
"Testing Binary Semaphores special case",
NULL,
test_005_006_teardown,
test_005_006_execute
rt_test_005_006_teardown,
rt_test_005_006_execute
};
/****************************************************************************
@ -495,13 +495,13 @@ static const testcase_t test_005_006 = {
/**
* @brief Counter and Binary Semaphores.
*/
const testcase_t * const test_sequence_005[] = {
&test_005_001,
&test_005_002,
&test_005_003,
&test_005_004,
&test_005_005,
&test_005_006,
const testcase_t * const rt_test_sequence_005[] = {
&rt_test_005_001,
&rt_test_005_002,
&rt_test_005_003,
&rt_test_005_004,
&rt_test_005_005,
&rt_test_005_006,
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_005.h
* @file rt_test_sequence_005.h
* @brief Test Sequence 005 header.
*/
#ifndef TEST_SEQUENCE_005_H
#define TEST_SEQUENCE_005_H
#ifndef RT_TEST_SEQUENCE_005_H
#define RT_TEST_SEQUENCE_005_H
extern const testcase_t * const test_sequence_005[];
extern const testcase_t * const rt_test_sequence_005[];
#endif /* TEST_SEQUENCE_005_H */
#endif /* RT_TEST_SEQUENCE_005_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_006.c
* @file rt_test_sequence_006.c
* @brief Test Sequence 006 code.
*
* @page test_sequence_006 [6] Mutexes, Condition Variables and Priority Inheritance
* @page rt_test_sequence_006 [6] Mutexes, Condition Variables and Priority Inheritance
*
* File: @ref test_sequence_006.c
* File: @ref rt_test_sequence_006.c
*
* <h2>Description</h2>
* This sequence tests the ChibiOS/RT functionalities related to
@ -37,15 +37,15 @@
* .
*
* <h2>Test Cases</h2>
* - @subpage test_006_001
* - @subpage test_006_002
* - @subpage test_006_003
* - @subpage test_006_004
* - @subpage test_006_005
* - @subpage test_006_006
* - @subpage test_006_007
* - @subpage test_006_008
* - @subpage test_006_009
* - @subpage rt_test_006_001
* - @subpage rt_test_006_002
* - @subpage rt_test_006_003
* - @subpage rt_test_006_004
* - @subpage rt_test_006_005
* - @subpage rt_test_006_006
* - @subpage rt_test_006_007
* - @subpage rt_test_006_008
* - @subpage rt_test_006_009
* .
*/
@ -72,7 +72,7 @@ void test_cpu_pulse(unsigned duration) {
systime_t start, end, now;
start = chThdGetTicksX(chThdGetSelfX());
end = start + MS2ST(duration);
end = start + TIME_MS2I(duration);
do {
now = chThdGetTicksX(chThdGetSelfX());
#if defined(SIMULATOR)
@ -234,7 +234,7 @@ static THD_FUNCTION(thread9, p) {
****************************************************************************/
/**
* @page test_006_001 [6.1] Priority enqueuing test
* @page rt_test_006_001 [6.1] Priority enqueuing test
*
* <h2>Description</h2>
* Five threads, with increasing priority, are enqueued on a locked
@ -253,11 +253,11 @@ static THD_FUNCTION(thread9, p) {
* .
*/
static void test_006_001_setup(void) {
static void rt_test_006_001_setup(void) {
chMtxObjectInit(&m1);
}
static void test_006_001_execute(void) {
static void rt_test_006_001_execute(void) {
tprio_t prio;
/* [6.1.1] Getting the initial priority.*/
@ -295,16 +295,16 @@ static void test_006_001_execute(void) {
}
}
static const testcase_t test_006_001 = {
static const testcase_t rt_test_006_001 = {
"Priority enqueuing test",
test_006_001_setup,
rt_test_006_001_setup,
NULL,
test_006_001_execute
rt_test_006_001_execute
};
#if (CH_DBG_THREADS_PROFILING) || defined(__DOXYGEN__)
/**
* @page test_006_002 [6.2] Priority inheritance, simple case
* @page rt_test_006_002 [6.2] Priority inheritance, simple case
*
* <h2>Description</h2>
* Three threads are involved in the classic priority inversion
@ -330,11 +330,11 @@ static const testcase_t test_006_001 = {
* .
*/
static void test_006_002_setup(void) {
static void rt_test_006_002_setup(void) {
chMtxObjectInit(&m1);
}
static void test_006_002_execute(void) {
static void rt_test_006_002_execute(void) {
systime_t time;
/* [6.2.1] Getting the system time for test duration measurement.*/
@ -359,22 +359,22 @@ static void test_006_002_execute(void) {
time windows (100mS...100mS+ALLOWED_DELAY).*/
test_set_step(3);
{
test_assert_time_window(time + MS2ST(100), time + MS2ST(100) + ALLOWED_DELAY,
test_assert_time_window(time + TIME_MS2I(100), time + TIME_MS2I(100) + ALLOWED_DELAY,
"out of time window");
}
}
static const testcase_t test_006_002 = {
static const testcase_t rt_test_006_002 = {
"Priority inheritance, simple case",
test_006_002_setup,
rt_test_006_002_setup,
NULL,
test_006_002_execute
rt_test_006_002_execute
};
#endif /* CH_DBG_THREADS_PROFILING */
#if (CH_DBG_THREADS_PROFILING) || defined(__DOXYGEN__)
/**
* @page test_006_003 [6.3] Priority inheritance, complex case
* @page rt_test_006_003 [6.3] Priority inheritance, complex case
*
* <h2>Description</h2>
* Five threads are involved in the complex priority inversion
@ -399,12 +399,12 @@ static const testcase_t test_006_002 = {
* .
*/
static void test_006_003_setup(void) {
static void rt_test_006_003_setup(void) {
chMtxObjectInit(&m1); /* Mutex B.*/
chMtxObjectInit(&m2); /* Mutex A.*/
}
static void test_006_003_execute(void) {
static void rt_test_006_003_execute(void) {
systime_t time;
/* [6.3.1] Getting the system time for test duration measurement.*/
@ -431,21 +431,21 @@ static void test_006_003_execute(void) {
time windows (110mS...110mS+ALLOWED_DELAY).*/
test_set_step(3);
{
test_assert_time_window(time + MS2ST(110), time + MS2ST(110) + ALLOWED_DELAY,
test_assert_time_window(time + TIME_MS2I(110), time + TIME_MS2I(110) + ALLOWED_DELAY,
"out of time window");
}
}
static const testcase_t test_006_003 = {
static const testcase_t rt_test_006_003 = {
"Priority inheritance, complex case",
test_006_003_setup,
rt_test_006_003_setup,
NULL,
test_006_003_execute
rt_test_006_003_execute
};
#endif /* CH_DBG_THREADS_PROFILING */
/**
* @page test_006_004 [6.4] Priority return verification
* @page rt_test_006_004 [6.4] Priority return verification
*
* <h2>Description</h2>
* Two threads are spawned that try to lock the mutexes already locked
@ -476,16 +476,16 @@ static const testcase_t test_006_003 = {
* .
*/
static void test_006_004_setup(void) {
static void rt_test_006_004_setup(void) {
chMtxObjectInit(&m1);
chMtxObjectInit(&m2);
}
static void test_006_004_teardown(void) {
static void rt_test_006_004_teardown(void) {
test_wait_threads();
}
static void test_006_004_execute(void) {
static void rt_test_006_004_execute(void) {
tprio_t p, pa, pb;
/* [6.4.1] Getting current thread priority P(0) and assigning to the
@ -555,16 +555,16 @@ static void test_006_004_execute(void) {
}
}
static const testcase_t test_006_004 = {
static const testcase_t rt_test_006_004 = {
"Priority return verification",
test_006_004_setup,
test_006_004_teardown,
test_006_004_execute
rt_test_006_004_setup,
rt_test_006_004_teardown,
rt_test_006_004_execute
};
#if (!CH_CFG_USE_MUTEXES_RECURSIVE) || defined(__DOXYGEN__)
/**
* @page test_006_005 [6.5] Repeated locks, non recursive scenario
* @page rt_test_006_005 [6.5] Repeated locks, non recursive scenario
*
* <h2>Description</h2>
* The behavior of multiple mutex locks from the same thread is tested
@ -590,11 +590,11 @@ static const testcase_t test_006_004 = {
* .
*/
static void test_006_005_setup(void) {
static void rt_test_006_005_setup(void) {
chMtxObjectInit(&m1);
}
static void test_006_005_execute(void) {
static void rt_test_006_005_execute(void) {
bool b;
tprio_t prio;
@ -655,17 +655,17 @@ static void test_006_005_execute(void) {
}
}
static const testcase_t test_006_005 = {
static const testcase_t rt_test_006_005 = {
"Repeated locks, non recursive scenario",
test_006_005_setup,
rt_test_006_005_setup,
NULL,
test_006_005_execute
rt_test_006_005_execute
};
#endif /* !CH_CFG_USE_MUTEXES_RECURSIVE */
#if (CH_CFG_USE_MUTEXES_RECURSIVE) || defined(__DOXYGEN__)
/**
* @page test_006_006 [6.6] Repeated locks using, recursive scenario
* @page rt_test_006_006 [6.6] Repeated locks using, recursive scenario
*
* <h2>Description</h2>
* The behavior of multiple mutex locks from the same thread is tested
@ -696,11 +696,11 @@ static const testcase_t test_006_005 = {
* .
*/
static void test_006_006_setup(void) {
static void rt_test_006_006_setup(void) {
chMtxObjectInit(&m1);
}
static void test_006_006_execute(void) {
static void rt_test_006_006_execute(void) {
bool b;
tprio_t prio;
@ -792,17 +792,17 @@ static void test_006_006_execute(void) {
}
}
static const testcase_t test_006_006 = {
static const testcase_t rt_test_006_006 = {
"Repeated locks using, recursive scenario",
test_006_006_setup,
rt_test_006_006_setup,
NULL,
test_006_006_execute
rt_test_006_006_execute
};
#endif /* CH_CFG_USE_MUTEXES_RECURSIVE */
#if (CH_CFG_USE_CONDVARS) || defined(__DOXYGEN__)
/**
* @page test_006_007 [6.7] Condition Variable signal test
* @page rt_test_006_007 [6.7] Condition Variable signal test
*
* <h2>Description</h2>
* Five threads take a mutex and then enter a conditional variable
@ -826,12 +826,12 @@ static const testcase_t test_006_006 = {
* .
*/
static void test_006_007_setup(void) {
static void rt_test_006_007_setup(void) {
chCondObjectInit(&c1);
chMtxObjectInit(&m1);
}
static void test_006_007_execute(void) {
static void rt_test_006_007_execute(void) {
/* [6.7.1] Starting the five threads with increasing priority, the
threads will queue on the condition variable.*/
@ -863,17 +863,17 @@ static void test_006_007_execute(void) {
}
}
static const testcase_t test_006_007 = {
static const testcase_t rt_test_006_007 = {
"Condition Variable signal test",
test_006_007_setup,
rt_test_006_007_setup,
NULL,
test_006_007_execute
rt_test_006_007_execute
};
#endif /* CH_CFG_USE_CONDVARS */
#if (CH_CFG_USE_CONDVARS) || defined(__DOXYGEN__)
/**
* @page test_006_008 [6.8] Condition Variable broadcast test
* @page rt_test_006_008 [6.8] Condition Variable broadcast test
*
* <h2>Description</h2>
* Five threads take a mutex and then enter a conditional variable
@ -895,12 +895,12 @@ static const testcase_t test_006_007 = {
* .
*/
static void test_006_008_setup(void) {
static void rt_test_006_008_setup(void) {
chCondObjectInit(&c1);
chMtxObjectInit(&m1);
}
static void test_006_008_execute(void) {
static void rt_test_006_008_execute(void) {
/* [6.8.1] Starting the five threads with increasing priority, the
threads will queue on the condition variable.*/
@ -924,17 +924,17 @@ static void test_006_008_execute(void) {
}
}
static const testcase_t test_006_008 = {
static const testcase_t rt_test_006_008 = {
"Condition Variable broadcast test",
test_006_008_setup,
rt_test_006_008_setup,
NULL,
test_006_008_execute
rt_test_006_008_execute
};
#endif /* CH_CFG_USE_CONDVARS */
#if (CH_CFG_USE_CONDVARS) || defined(__DOXYGEN__)
/**
* @page test_006_009 [6.9] Condition Variable priority boost test
* @page rt_test_006_009 [6.9] Condition Variable priority boost test
*
* <h2>Description</h2>
* This test case verifies the priority boost of a thread waiting on a
@ -966,13 +966,13 @@ static const testcase_t test_006_008 = {
* .
*/
static void test_006_009_setup(void) {
static void rt_test_006_009_setup(void) {
chCondObjectInit(&c1);
chMtxObjectInit(&m1);
chMtxObjectInit(&m2);
}
static void test_006_009_execute(void) {
static void rt_test_006_009_execute(void) {
tprio_t prio;
/* [6.9.1] Reading current base priority.*/
@ -1024,11 +1024,11 @@ static void test_006_009_execute(void) {
}
}
static const testcase_t test_006_009 = {
static const testcase_t rt_test_006_009 = {
"Condition Variable priority boost test",
test_006_009_setup,
rt_test_006_009_setup,
NULL,
test_006_009_execute
rt_test_006_009_execute
};
#endif /* CH_CFG_USE_CONDVARS */
@ -1039,29 +1039,29 @@ static const testcase_t test_006_009 = {
/**
* @brief Mutexes, Condition Variables and Priority Inheritance.
*/
const testcase_t * const test_sequence_006[] = {
&test_006_001,
const testcase_t * const rt_test_sequence_006[] = {
&rt_test_006_001,
#if (CH_DBG_THREADS_PROFILING) || defined(__DOXYGEN__)
&test_006_002,
&rt_test_006_002,
#endif
#if (CH_DBG_THREADS_PROFILING) || defined(__DOXYGEN__)
&test_006_003,
&rt_test_006_003,
#endif
&test_006_004,
&rt_test_006_004,
#if (!CH_CFG_USE_MUTEXES_RECURSIVE) || defined(__DOXYGEN__)
&test_006_005,
&rt_test_006_005,
#endif
#if (CH_CFG_USE_MUTEXES_RECURSIVE) || defined(__DOXYGEN__)
&test_006_006,
&rt_test_006_006,
#endif
#if (CH_CFG_USE_CONDVARS) || defined(__DOXYGEN__)
&test_006_007,
&rt_test_006_007,
#endif
#if (CH_CFG_USE_CONDVARS) || defined(__DOXYGEN__)
&test_006_008,
&rt_test_006_008,
#endif
#if (CH_CFG_USE_CONDVARS) || defined(__DOXYGEN__)
&test_006_009,
&rt_test_006_009,
#endif
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_006.h
* @file rt_test_sequence_006.h
* @brief Test Sequence 006 header.
*/
#ifndef TEST_SEQUENCE_006_H
#define TEST_SEQUENCE_006_H
#ifndef RT_TEST_SEQUENCE_006_H
#define RT_TEST_SEQUENCE_006_H
extern const testcase_t * const test_sequence_006[];
extern const testcase_t * const rt_test_sequence_006[];
#endif /* TEST_SEQUENCE_006_H */
#endif /* RT_TEST_SEQUENCE_006_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_007.c
* @file rt_test_sequence_007.c
* @brief Test Sequence 007 code.
*
* @page test_sequence_007 [7] Synchronous Messages
* @page rt_test_sequence_007 [7] Synchronous Messages
*
* File: @ref test_sequence_007.c
* File: @ref rt_test_sequence_007.c
*
* <h2>Description</h2>
* This module implements the test sequence for the Synchronous
@ -37,7 +37,7 @@
* .
*
* <h2>Test Cases</h2>
* - @subpage test_007_001
* - @subpage rt_test_007_001
* .
*/
@ -60,7 +60,7 @@ static THD_FUNCTION(msg_thread1, p) {
****************************************************************************/
/**
* @page test_007_001 [7.1] Messages Server loop
* @page rt_test_007_001 [7.1] Messages Server loop
*
* <h2>Description</h2>
* A messenger thread is spawned that sends four messages back to the
@ -73,7 +73,7 @@ static THD_FUNCTION(msg_thread1, p) {
* .
*/
static void test_007_001_execute(void) {
static void rt_test_007_001_execute(void) {
thread_t *tp;
msg_t msg;
@ -101,11 +101,11 @@ static void test_007_001_execute(void) {
}
}
static const testcase_t test_007_001 = {
static const testcase_t rt_test_007_001 = {
"Messages Server loop",
NULL,
NULL,
test_007_001_execute
rt_test_007_001_execute
};
/****************************************************************************
@ -115,8 +115,8 @@ static const testcase_t test_007_001 = {
/**
* @brief Synchronous Messages.
*/
const testcase_t * const test_sequence_007[] = {
&test_007_001,
const testcase_t * const rt_test_sequence_007[] = {
&rt_test_007_001,
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_007.h
* @file rt_test_sequence_007.h
* @brief Test Sequence 007 header.
*/
#ifndef TEST_SEQUENCE_007_H
#define TEST_SEQUENCE_007_H
#ifndef RT_TEST_SEQUENCE_007_H
#define RT_TEST_SEQUENCE_007_H
extern const testcase_t * const test_sequence_007[];
extern const testcase_t * const rt_test_sequence_007[];
#endif /* TEST_SEQUENCE_007_H */
#endif /* RT_TEST_SEQUENCE_007_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_008.c
* @file rt_test_sequence_008.c
* @brief Test Sequence 008 code.
*
* @page test_sequence_008 [8] Event Sources and Event Flags
* @page rt_test_sequence_008 [8] Event Sources and Event Flags
*
* File: @ref test_sequence_008.c
* File: @ref rt_test_sequence_008.c
*
* <h2>Description</h2>
* This module implements the test sequence for the Events subsystem.
@ -36,13 +36,13 @@
* .
*
* <h2>Test Cases</h2>
* - @subpage test_008_001
* - @subpage test_008_002
* - @subpage test_008_003
* - @subpage test_008_004
* - @subpage test_008_005
* - @subpage test_008_006
* - @subpage test_008_007
* - @subpage rt_test_008_001
* - @subpage rt_test_008_002
* - @subpage rt_test_008_003
* - @subpage rt_test_008_004
* - @subpage rt_test_008_005
* - @subpage rt_test_008_006
* - @subpage rt_test_008_007
* .
*/
@ -79,7 +79,7 @@ static THD_FUNCTION(evt_thread7, p) {
****************************************************************************/
/**
* @page test_008_001 [8.1] Events registration
* @page rt_test_008_001 [8.1] Events registration
*
* <h2>Description</h2>
* Two event listeners are registered on an event source and then
@ -99,7 +99,7 @@ static THD_FUNCTION(evt_thread7, p) {
* .
*/
static void test_008_001_execute(void) {
static void rt_test_008_001_execute(void) {
event_listener_t el1, el2;
/* [8.1.1] An Event Source is initialized.*/
@ -134,15 +134,15 @@ static void test_008_001_execute(void) {
}
}
static const testcase_t test_008_001 = {
static const testcase_t rt_test_008_001 = {
"Events registration",
NULL,
NULL,
test_008_001_execute
rt_test_008_001_execute
};
/**
* @page test_008_002 [8.2] Event Flags dispatching
* @page rt_test_008_002 [8.2] Event Flags dispatching
*
* <h2>Description</h2>
* The test dispatches three event flags and verifies that the
@ -154,11 +154,11 @@ static const testcase_t test_008_001 = {
* .
*/
static void test_008_002_setup(void) {
static void rt_test_008_002_setup(void) {
chEvtGetAndClearEvents(ALL_EVENTS);
}
static void test_008_002_execute(void) {
static void rt_test_008_002_execute(void) {
/* [8.2.1] Three evenf flag bits are raised then chEvtDispatch() is
invoked, the sequence of handlers calls is tested.*/
@ -169,15 +169,15 @@ static void test_008_002_execute(void) {
}
}
static const testcase_t test_008_002 = {
static const testcase_t rt_test_008_002 = {
"Event Flags dispatching",
test_008_002_setup,
rt_test_008_002_setup,
NULL,
test_008_002_execute
rt_test_008_002_execute
};
/**
* @page test_008_003 [8.3] Events Flags wait using chEvtWaitOne()
* @page rt_test_008_003 [8.3] Events Flags wait using chEvtWaitOne()
*
* <h2>Description</h2>
* Functionality of chEvtWaitOne() is tested under various scenarios.
@ -194,11 +194,11 @@ static const testcase_t test_008_002 = {
* .
*/
static void test_008_003_setup(void) {
static void rt_test_008_003_setup(void) {
chEvtGetAndClearEvents(ALL_EVENTS);
}
static void test_008_003_execute(void) {
static void rt_test_008_003_execute(void) {
eventmask_t m;
systime_t target_time;
@ -226,7 +226,7 @@ static void test_008_003_execute(void) {
thread will set an event flag after 50mS.*/
test_set_step(3);
{
target_time = test_wait_tick() + MS2ST(50);
target_time = test_wait_tick() + TIME_MS2I(50);
threads[0] = chThdCreateStatic(wa[0], WA_SIZE, chThdGetPriorityX() - 1,
evt_thread3, chThdGetSelfX());
}
@ -246,15 +246,15 @@ static void test_008_003_execute(void) {
}
}
static const testcase_t test_008_003 = {
static const testcase_t rt_test_008_003 = {
"Events Flags wait using chEvtWaitOne()",
test_008_003_setup,
rt_test_008_003_setup,
NULL,
test_008_003_execute
rt_test_008_003_execute
};
/**
* @page test_008_004 [8.4] Events Flags wait using chEvtWaitAny()
* @page rt_test_008_004 [8.4] Events Flags wait using chEvtWaitAny()
*
* <h2>Description</h2>
* Functionality of chEvtWaitAny() is tested under various scenarios.
@ -271,11 +271,11 @@ static const testcase_t test_008_003 = {
* .
*/
static void test_008_004_setup(void) {
static void rt_test_008_004_setup(void) {
chEvtGetAndClearEvents(ALL_EVENTS);
}
static void test_008_004_execute(void) {
static void rt_test_008_004_execute(void) {
eventmask_t m;
systime_t target_time;
@ -299,7 +299,7 @@ static void test_008_004_execute(void) {
thread will set an event flag after 50mS.*/
test_set_step(3);
{
target_time = test_wait_tick() + MS2ST(50);
target_time = test_wait_tick() + TIME_MS2I(50);
threads[0] = chThdCreateStatic(wa[0], WA_SIZE, chThdGetPriorityX() - 1,
evt_thread3, chThdGetSelfX());
}
@ -319,15 +319,15 @@ static void test_008_004_execute(void) {
}
}
static const testcase_t test_008_004 = {
static const testcase_t rt_test_008_004 = {
"Events Flags wait using chEvtWaitAny()",
test_008_004_setup,
rt_test_008_004_setup,
NULL,
test_008_004_execute
rt_test_008_004_execute
};
/**
* @page test_008_005 [8.5] Events Flags wait using chEvtWaitAll()
* @page rt_test_008_005 [8.5] Events Flags wait using chEvtWaitAll()
*
* <h2>Description</h2>
* Functionality of chEvtWaitAll() is tested under various scenarios.
@ -345,11 +345,11 @@ static const testcase_t test_008_004 = {
* .
*/
static void test_008_005_setup(void) {
static void rt_test_008_005_setup(void) {
chEvtGetAndClearEvents(ALL_EVENTS);
}
static void test_008_005_execute(void) {
static void rt_test_008_005_execute(void) {
eventmask_t m;
systime_t target_time;
@ -379,7 +379,7 @@ static void test_008_005_execute(void) {
thread will set another event flag after 50mS.*/
test_set_step(4);
{
target_time = test_wait_tick() + MS2ST(50);
target_time = test_wait_tick() + TIME_MS2I(50);
threads[0] = chThdCreateStatic(wa[0], WA_SIZE, chThdGetPriorityX() - 1,
evt_thread3, chThdGetSelfX());
}
@ -399,16 +399,16 @@ static void test_008_005_execute(void) {
}
}
static const testcase_t test_008_005 = {
static const testcase_t rt_test_008_005 = {
"Events Flags wait using chEvtWaitAll()",
test_008_005_setup,
rt_test_008_005_setup,
NULL,
test_008_005_execute
rt_test_008_005_execute
};
#if (CH_CFG_USE_EVENTS_TIMEOUT) || defined(__DOXYGEN__)
/**
* @page test_008_006 [8.6] Events Flags wait timeouts
* @page rt_test_008_006 [8.6] Events Flags wait timeouts
*
* <h2>Description</h2>
* Timeout functionality is tested for chEvtWaitOneTimeout(),
@ -428,11 +428,11 @@ static const testcase_t test_008_005 = {
* .
*/
static void test_008_006_setup(void) {
static void rt_test_008_006_setup(void) {
chEvtGetAndClearEvents(ALL_EVENTS);
}
static void test_008_006_execute(void) {
static void rt_test_008_006_execute(void) {
eventmask_t m;
/* [8.6.1] The functions are invoked first with TIME_IMMEDIATE
@ -451,25 +451,25 @@ static void test_008_006_execute(void) {
timeout condition is tested.*/
test_set_step(2);
{
m = chEvtWaitOneTimeout(ALL_EVENTS, MS2ST(50));
m = chEvtWaitOneTimeout(ALL_EVENTS, TIME_MS2I(50));
test_assert(m == 0, "spurious event");
m = chEvtWaitAnyTimeout(ALL_EVENTS, MS2ST(50));
m = chEvtWaitAnyTimeout(ALL_EVENTS, TIME_MS2I(50));
test_assert(m == 0, "spurious event");
m = chEvtWaitAllTimeout(ALL_EVENTS, MS2ST(50));
m = chEvtWaitAllTimeout(ALL_EVENTS, TIME_MS2I(50));
test_assert(m == 0, "spurious event");
}
}
static const testcase_t test_008_006 = {
static const testcase_t rt_test_008_006 = {
"Events Flags wait timeouts",
test_008_006_setup,
rt_test_008_006_setup,
NULL,
test_008_006_execute
rt_test_008_006_execute
};
#endif /* CH_CFG_USE_EVENTS_TIMEOUT */
/**
* @page test_008_007 [8.7] Broadcasting using chEvtBroadcast()
* @page rt_test_008_007 [8.7] Broadcasting using chEvtBroadcast()
*
* <h2>Description</h2>
* Functionality of chEvtBroadcast() is tested.
@ -487,13 +487,13 @@ static const testcase_t test_008_006 = {
* .
*/
static void test_008_007_setup(void) {
static void rt_test_008_007_setup(void) {
chEvtGetAndClearEvents(ALL_EVENTS);
chEvtObjectInit(&es1);
chEvtObjectInit(&es2);
}
static void test_008_007_execute(void) {
static void rt_test_008_007_execute(void) {
eventmask_t m;
event_listener_t el1, el2;
systime_t target_time;
@ -511,7 +511,7 @@ static void test_008_007_execute(void) {
other after 50mS.*/
test_set_step(2);
{
target_time = test_wait_tick() + MS2ST(50);
target_time = test_wait_tick() + TIME_MS2I(50);
threads[0] = chThdCreateStatic(wa[0], WA_SIZE, chThdGetPriorityX() - 1,
evt_thread7, "A");
}
@ -539,11 +539,11 @@ static void test_008_007_execute(void) {
}
}
static const testcase_t test_008_007 = {
static const testcase_t rt_test_008_007 = {
"Broadcasting using chEvtBroadcast()",
test_008_007_setup,
rt_test_008_007_setup,
NULL,
test_008_007_execute
rt_test_008_007_execute
};
/****************************************************************************
@ -553,16 +553,16 @@ static const testcase_t test_008_007 = {
/**
* @brief Event Sources and Event Flags.
*/
const testcase_t * const test_sequence_008[] = {
&test_008_001,
&test_008_002,
&test_008_003,
&test_008_004,
&test_008_005,
const testcase_t * const rt_test_sequence_008[] = {
&rt_test_008_001,
&rt_test_008_002,
&rt_test_008_003,
&rt_test_008_004,
&rt_test_008_005,
#if (CH_CFG_USE_EVENTS_TIMEOUT) || defined(__DOXYGEN__)
&test_008_006,
&rt_test_008_006,
#endif
&test_008_007,
&rt_test_008_007,
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_008.h
* @file rt_test_sequence_008.h
* @brief Test Sequence 008 header.
*/
#ifndef TEST_SEQUENCE_008_H
#define TEST_SEQUENCE_008_H
#ifndef RT_TEST_SEQUENCE_008_H
#define RT_TEST_SEQUENCE_008_H
extern const testcase_t * const test_sequence_008[];
extern const testcase_t * const rt_test_sequence_008[];
#endif /* TEST_SEQUENCE_008_H */
#endif /* RT_TEST_SEQUENCE_008_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_009.c
* @file rt_test_sequence_009.c
* @brief Test Sequence 009 code.
*
* @page test_sequence_009 [9] Mailboxes
* @page rt_test_sequence_009 [9] Mailboxes
*
* File: @ref test_sequence_009.c
* File: @ref rt_test_sequence_009.c
*
* <h2>Description</h2>
* This sequence tests the ChibiOS/RT functionalities related to
@ -37,9 +37,9 @@
* .
*
* <h2>Test Cases</h2>
* - @subpage test_009_001
* - @subpage test_009_002
* - @subpage test_009_003
* - @subpage rt_test_009_001
* - @subpage rt_test_009_002
* - @subpage rt_test_009_003
* .
*/
@ -59,7 +59,7 @@ static MAILBOX_DECL(mb1, mb_buffer, MB_SIZE);
****************************************************************************/
/**
* @page test_009_001 [9.1] Mailbox normal API, non-blocking tests
* @page rt_test_009_001 [9.1] Mailbox normal API, non-blocking tests
*
* <h2>Description</h2>
* The mailbox normal API is tested without triggering blocking
@ -84,15 +84,15 @@ static MAILBOX_DECL(mb1, mb_buffer, MB_SIZE);
* .
*/
static void test_009_001_setup(void) {
static void rt_test_009_001_setup(void) {
chMBObjectInit(&mb1, mb_buffer, MB_SIZE);
}
static void test_009_001_teardown(void) {
static void rt_test_009_001_teardown(void) {
chMBReset(&mb1);
}
static void test_009_001_execute(void) {
static void rt_test_009_001_execute(void) {
msg_t msg1, msg2;
unsigned i;
@ -180,15 +180,15 @@ static void test_009_001_execute(void) {
}
}
static const testcase_t test_009_001 = {
static const testcase_t rt_test_009_001 = {
"Mailbox normal API, non-blocking tests",
test_009_001_setup,
test_009_001_teardown,
test_009_001_execute
rt_test_009_001_setup,
rt_test_009_001_teardown,
rt_test_009_001_execute
};
/**
* @page test_009_002 [9.2] Mailbox I-Class API, non-blocking tests
* @page rt_test_009_002 [9.2] Mailbox I-Class API, non-blocking tests
*
* <h2>Description</h2>
* The mailbox I-Class API is tested without triggering blocking
@ -211,15 +211,15 @@ static const testcase_t test_009_001 = {
* .
*/
static void test_009_002_setup(void) {
static void rt_test_009_002_setup(void) {
chMBObjectInit(&mb1, mb_buffer, MB_SIZE);
}
static void test_009_002_teardown(void) {
static void rt_test_009_002_teardown(void) {
chMBReset(&mb1);
}
static void test_009_002_execute(void) {
static void rt_test_009_002_execute(void) {
msg_t msg1, msg2;
unsigned i;
@ -303,15 +303,15 @@ static void test_009_002_execute(void) {
}
}
static const testcase_t test_009_002 = {
static const testcase_t rt_test_009_002 = {
"Mailbox I-Class API, non-blocking tests",
test_009_002_setup,
test_009_002_teardown,
test_009_002_execute
rt_test_009_002_setup,
rt_test_009_002_teardown,
rt_test_009_002_execute
};
/**
* @page test_009_003 [9.3] Mailbox timeouts
* @page rt_test_009_003 [9.3] Mailbox timeouts
*
* <h2>Description</h2>
* The mailbox API is tested for timeouts.
@ -326,15 +326,15 @@ static const testcase_t test_009_002 = {
* .
*/
static void test_009_003_setup(void) {
static void rt_test_009_003_setup(void) {
chMBObjectInit(&mb1, mb_buffer, MB_SIZE);
}
static void test_009_003_teardown(void) {
static void rt_test_009_003_teardown(void) {
chMBReset(&mb1);
}
static void test_009_003_execute(void) {
static void rt_test_009_003_execute(void) {
msg_t msg1, msg2;
unsigned i;
@ -385,11 +385,11 @@ static void test_009_003_execute(void) {
}
}
static const testcase_t test_009_003 = {
static const testcase_t rt_test_009_003 = {
"Mailbox timeouts",
test_009_003_setup,
test_009_003_teardown,
test_009_003_execute
rt_test_009_003_setup,
rt_test_009_003_teardown,
rt_test_009_003_execute
};
/****************************************************************************
@ -399,10 +399,10 @@ static const testcase_t test_009_003 = {
/**
* @brief Mailboxes.
*/
const testcase_t * const test_sequence_009[] = {
&test_009_001,
&test_009_002,
&test_009_003,
const testcase_t * const rt_test_sequence_009[] = {
&rt_test_009_001,
&rt_test_009_002,
&rt_test_009_003,
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_009.h
* @file rt_test_sequence_009.h
* @brief Test Sequence 009 header.
*/
#ifndef TEST_SEQUENCE_009_H
#define TEST_SEQUENCE_009_H
#ifndef RT_TEST_SEQUENCE_009_H
#define RT_TEST_SEQUENCE_009_H
extern const testcase_t * const test_sequence_009[];
extern const testcase_t * const rt_test_sequence_009[];
#endif /* TEST_SEQUENCE_009_H */
#endif /* RT_TEST_SEQUENCE_009_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_010.c
* @file rt_test_sequence_010.c
* @brief Test Sequence 010 code.
*
* @page test_sequence_010 [10] Memory Pools
* @page rt_test_sequence_010 [10] Memory Pools
*
* File: @ref test_sequence_010.c
* File: @ref rt_test_sequence_010.c
*
* <h2>Description</h2>
* This sequence tests the ChibiOS/RT functionalities related to memory
@ -37,9 +37,9 @@
* .
*
* <h2>Test Cases</h2>
* - @subpage test_010_001
* - @subpage test_010_002
* - @subpage test_010_003
* - @subpage rt_test_010_001
* - @subpage rt_test_010_002
* - @subpage rt_test_010_003
* .
*/
@ -71,7 +71,7 @@ static void *null_provider(size_t size, unsigned align) {
****************************************************************************/
/**
* @page test_010_001 [10.1] Loading and emptying a memory pool
* @page rt_test_010_001 [10.1] Loading and emptying a memory pool
*
* <h2>Description</h2>
* The memory pool functionality is tested by loading and emptying it,
@ -89,11 +89,11 @@ static void *null_provider(size_t size, unsigned align) {
* .
*/
static void test_010_001_setup(void) {
static void rt_test_010_001_setup(void) {
chPoolObjectInit(&mp1, sizeof (uint32_t), NULL);
}
static void test_010_001_execute(void) {
static void rt_test_010_001_execute(void) {
unsigned i;
/* [10.1.1] Adding the objects to the pool using chPoolLoadArray().*/
@ -144,16 +144,16 @@ static void test_010_001_execute(void) {
}
}
static const testcase_t test_010_001 = {
static const testcase_t rt_test_010_001 = {
"Loading and emptying a memory pool",
test_010_001_setup,
rt_test_010_001_setup,
NULL,
test_010_001_execute
rt_test_010_001_execute
};
#if (CH_CFG_USE_SEMAPHORES) || defined(__DOXYGEN__)
/**
* @page test_010_002 [10.2] Loading and emptying a guarded memory pool without waiting
* @page rt_test_010_002 [10.2] Loading and emptying a guarded memory pool without waiting
*
* <h2>Description</h2>
* The memory pool functionality is tested by loading and emptying it,
@ -177,11 +177,11 @@ static const testcase_t test_010_001 = {
* .
*/
static void test_010_002_setup(void) {
static void rt_test_010_002_setup(void) {
chGuardedPoolObjectInit(&gmp1, sizeof (uint32_t));
}
static void test_010_002_execute(void) {
static void rt_test_010_002_execute(void) {
unsigned i;
/* [10.2.1] Adding the objects to the pool using
@ -227,17 +227,17 @@ static void test_010_002_execute(void) {
}
}
static const testcase_t test_010_002 = {
static const testcase_t rt_test_010_002 = {
"Loading and emptying a guarded memory pool without waiting",
test_010_002_setup,
rt_test_010_002_setup,
NULL,
test_010_002_execute
rt_test_010_002_execute
};
#endif /* CH_CFG_USE_SEMAPHORES */
#if (CH_CFG_USE_SEMAPHORES) || defined(__DOXYGEN__)
/**
* @page test_010_003 [10.3] Guarded Memory Pools timeout
* @page rt_test_010_003 [10.3] Guarded Memory Pools timeout
*
* <h2>Description</h2>
* The timeout features for the Guarded Memory Pools is tested.
@ -254,25 +254,25 @@ static const testcase_t test_010_002 = {
* .
*/
static void test_010_003_setup(void) {
static void rt_test_010_003_setup(void) {
chGuardedPoolObjectInit(&gmp1, sizeof (uint32_t));
}
static void test_010_003_execute(void) {
static void rt_test_010_003_execute(void) {
/* [10.3.1] Trying to allocate with 100mS timeout, must fail because
the pool is empty.*/
test_set_step(1);
{
test_assert(chGuardedPoolAllocTimeout(&gmp1, MS2ST(100)) == NULL, "list not empty");
test_assert(chGuardedPoolAllocTimeout(&gmp1, TIME_MS2I(100)) == NULL, "list not empty");
}
}
static const testcase_t test_010_003 = {
static const testcase_t rt_test_010_003 = {
"Guarded Memory Pools timeout",
test_010_003_setup,
rt_test_010_003_setup,
NULL,
test_010_003_execute
rt_test_010_003_execute
};
#endif /* CH_CFG_USE_SEMAPHORES */
@ -283,13 +283,13 @@ static const testcase_t test_010_003 = {
/**
* @brief Memory Pools.
*/
const testcase_t * const test_sequence_010[] = {
&test_010_001,
const testcase_t * const rt_test_sequence_010[] = {
&rt_test_010_001,
#if (CH_CFG_USE_SEMAPHORES) || defined(__DOXYGEN__)
&test_010_002,
&rt_test_010_002,
#endif
#if (CH_CFG_USE_SEMAPHORES) || defined(__DOXYGEN__)
&test_010_003,
&rt_test_010_003,
#endif
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_010.h
* @file rt_test_sequence_010.h
* @brief Test Sequence 010 header.
*/
#ifndef TEST_SEQUENCE_010_H
#define TEST_SEQUENCE_010_H
#ifndef RT_TEST_SEQUENCE_010_H
#define RT_TEST_SEQUENCE_010_H
extern const testcase_t * const test_sequence_010[];
extern const testcase_t * const rt_test_sequence_010[];
#endif /* TEST_SEQUENCE_010_H */
#endif /* RT_TEST_SEQUENCE_010_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_011.c
* @file rt_test_sequence_011.c
* @brief Test Sequence 011 code.
*
* @page test_sequence_011 [11] Memory Heaps
* @page rt_test_sequence_011 [11] Memory Heaps
*
* File: @ref test_sequence_011.c
* File: @ref rt_test_sequence_011.c
*
* <h2>Description</h2>
* This sequence tests the ChibiOS/RT functionalities related to memory
@ -37,8 +37,8 @@
* .
*
* <h2>Test Cases</h2>
* - @subpage test_011_001
* - @subpage test_011_002
* - @subpage rt_test_011_001
* - @subpage rt_test_011_002
* .
*/
@ -58,7 +58,7 @@ memory_heap_t test_heap;
****************************************************************************/
/**
* @page test_011_001 [11.1] Allocation and fragmentation
* @page rt_test_011_001 [11.1] Allocation and fragmentation
*
* <h2>Description</h2>
* Series of allocations/deallocations are performed in carefully
@ -87,11 +87,11 @@ memory_heap_t test_heap;
* .
*/
static void test_011_001_setup(void) {
static void rt_test_011_001_setup(void) {
chHeapObjectInit(&test_heap, test_buffer, sizeof(test_buffer));
}
static void test_011_001_execute(void) {
static void rt_test_011_001_execute(void) {
void *p1, *p2, *p3;
size_t n, sz;
@ -206,15 +206,15 @@ static void test_011_001_execute(void) {
}
}
static const testcase_t test_011_001 = {
static const testcase_t rt_test_011_001 = {
"Allocation and fragmentation",
test_011_001_setup,
rt_test_011_001_setup,
NULL,
test_011_001_execute
rt_test_011_001_execute
};
/**
* @page test_011_002 [11.2] Default Heap
* @page rt_test_011_002 [11.2] Default Heap
*
* <h2>Description</h2>
* The default heap is pre-allocated in the system. We test base
@ -227,7 +227,7 @@ static const testcase_t test_011_001 = {
* .
*/
static void test_011_002_execute(void) {
static void rt_test_011_002_execute(void) {
void *p1;
size_t total_size, largest_size;
@ -249,11 +249,11 @@ static void test_011_002_execute(void) {
}
}
static const testcase_t test_011_002 = {
static const testcase_t rt_test_011_002 = {
"Default Heap",
NULL,
NULL,
test_011_002_execute
rt_test_011_002_execute
};
/****************************************************************************
@ -263,9 +263,9 @@ static const testcase_t test_011_002 = {
/**
* @brief Memory Heaps.
*/
const testcase_t * const test_sequence_011[] = {
&test_011_001,
&test_011_002,
const testcase_t * const rt_test_sequence_011[] = {
&rt_test_011_001,
&rt_test_011_002,
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_011.h
* @file rt_test_sequence_011.h
* @brief Test Sequence 011 header.
*/
#ifndef TEST_SEQUENCE_011_H
#define TEST_SEQUENCE_011_H
#ifndef RT_TEST_SEQUENCE_011_H
#define RT_TEST_SEQUENCE_011_H
extern const testcase_t * const test_sequence_011[];
extern const testcase_t * const rt_test_sequence_011[];
#endif /* TEST_SEQUENCE_011_H */
#endif /* RT_TEST_SEQUENCE_011_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_012.c
* @file rt_test_sequence_012.c
* @brief Test Sequence 012 code.
*
* @page test_sequence_012 [12] Dynamic threads
* @page rt_test_sequence_012 [12] Dynamic threads
*
* File: @ref test_sequence_012.c
* File: @ref rt_test_sequence_012.c
*
* <h2>Description</h2>
* This module implements the test sequence for the dynamic thread
@ -37,8 +37,8 @@
* .
*
* <h2>Test Cases</h2>
* - @subpage test_012_001
* - @subpage test_012_002
* - @subpage rt_test_012_001
* - @subpage rt_test_012_002
* .
*/
@ -66,7 +66,7 @@ static THD_FUNCTION(dyn_thread1, p) {
#if (CH_CFG_USE_HEAP) || defined(__DOXYGEN__)
/**
* @page test_012_001 [12.1] Threads creation from Memory Heap
* @page rt_test_012_001 [12.1] Threads creation from Memory Heap
*
* <h2>Description</h2>
* Two threads are started by allocating the memory from the Memory
@ -92,11 +92,11 @@ static THD_FUNCTION(dyn_thread1, p) {
* .
*/
static void test_012_001_setup(void) {
static void rt_test_012_001_setup(void) {
chHeapObjectInit(&heap1, test_buffer, sizeof test_buffer);
}
static void test_012_001_execute(void) {
static void rt_test_012_001_execute(void) {
size_t n1, total1, largest1;
size_t n2, total2, largest2;
tprio_t prio;
@ -162,17 +162,17 @@ static void test_012_001_execute(void) {
}
}
static const testcase_t test_012_001 = {
static const testcase_t rt_test_012_001 = {
"Threads creation from Memory Heap",
test_012_001_setup,
rt_test_012_001_setup,
NULL,
test_012_001_execute
rt_test_012_001_execute
};
#endif /* CH_CFG_USE_HEAP */
#if (CH_CFG_USE_MEMPOOLS) || defined(__DOXYGEN__)
/**
* @page test_012_002 [12.2] Threads creation from Memory Pool
* @page rt_test_012_002 [12.2] Threads creation from Memory Pool
*
* <h2>Description</h2>
* Five thread creation are attempted from a pool containing only four
@ -196,11 +196,11 @@ static const testcase_t test_012_001 = {
* .
*/
static void test_012_002_setup(void) {
static void rt_test_012_002_setup(void) {
chPoolObjectInit(&mp1, THD_WORKING_AREA_SIZE(THREADS_STACK_SIZE), NULL);
}
static void test_012_002_execute(void) {
static void rt_test_012_002_execute(void) {
unsigned i;
tprio_t prio;
@ -256,11 +256,11 @@ static void test_012_002_execute(void) {
}
}
static const testcase_t test_012_002 = {
static const testcase_t rt_test_012_002 = {
"Threads creation from Memory Pool",
test_012_002_setup,
rt_test_012_002_setup,
NULL,
test_012_002_execute
rt_test_012_002_execute
};
#endif /* CH_CFG_USE_MEMPOOLS */
@ -271,12 +271,12 @@ static const testcase_t test_012_002 = {
/**
* @brief Dynamic threads.
*/
const testcase_t * const test_sequence_012[] = {
const testcase_t * const rt_test_sequence_012[] = {
#if (CH_CFG_USE_HEAP) || defined(__DOXYGEN__)
&test_012_001,
&rt_test_012_001,
#endif
#if (CH_CFG_USE_MEMPOOLS) || defined(__DOXYGEN__)
&test_012_002,
&rt_test_012_002,
#endif
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_012.h
* @file rt_test_sequence_012.h
* @brief Test Sequence 012 header.
*/
#ifndef TEST_SEQUENCE_012_H
#define TEST_SEQUENCE_012_H
#ifndef RT_TEST_SEQUENCE_012_H
#define RT_TEST_SEQUENCE_012_H
extern const testcase_t * const test_sequence_012[];
extern const testcase_t * const rt_test_sequence_012[];
#endif /* TEST_SEQUENCE_012_H */
#endif /* RT_TEST_SEQUENCE_012_H */

View File

@ -16,15 +16,15 @@
#include "hal.h"
#include "ch_test.h"
#include "test_root.h"
#include "rt_test_root.h"
/**
* @file test_sequence_013.c
* @file rt_test_sequence_013.c
* @brief Test Sequence 013 code.
*
* @page test_sequence_013 [13] Benchmarks
* @page rt_test_sequence_013 [13] Benchmarks
*
* File: @ref test_sequence_013.c
* File: @ref rt_test_sequence_013.c
*
* <h2>Description</h2>
* This module implements a series of system benchmarks. The benchmarks
@ -35,18 +35,18 @@
* regressions between successive ChibiOS/RT releases.
*
* <h2>Test Cases</h2>
* - @subpage test_013_001
* - @subpage test_013_002
* - @subpage test_013_003
* - @subpage test_013_004
* - @subpage test_013_005
* - @subpage test_013_006
* - @subpage test_013_007
* - @subpage test_013_008
* - @subpage test_013_009
* - @subpage test_013_010
* - @subpage test_013_011
* - @subpage test_013_012
* - @subpage rt_test_013_001
* - @subpage rt_test_013_002
* - @subpage rt_test_013_003
* - @subpage rt_test_013_004
* - @subpage rt_test_013_005
* - @subpage rt_test_013_006
* - @subpage rt_test_013_007
* - @subpage rt_test_013_008
* - @subpage rt_test_013_009
* - @subpage rt_test_013_010
* - @subpage rt_test_013_011
* - @subpage rt_test_013_012
* .
*/
@ -81,7 +81,7 @@ NOINLINE static unsigned int msg_loop_test(thread_t *tp) {
uint32_t n = 0;
start = test_wait_tick();
end = start + MS2ST(1000);
end = start + TIME_MS2I(1000);
do {
(void)chMsgSend(tp, 1);
n++;
@ -141,7 +141,7 @@ static THD_FUNCTION(bmk_thread8, p) {
#if (CH_CFG_USE_MESSAGES) || defined(__DOXYGEN__)
/**
* @page test_013_001 [13.1] Messages performance #1
* @page rt_test_013_001 [13.1] Messages performance #1
*
* <h2>Description</h2>
* A message server thread is created with a lower priority than the
@ -163,7 +163,7 @@ static THD_FUNCTION(bmk_thread8, p) {
* .
*/
static void test_013_001_execute(void) {
static void rt_test_013_001_execute(void) {
uint32_t n;
/* [13.1.1] The messenger thread is started at a lower priority than
@ -192,17 +192,17 @@ static void test_013_001_execute(void) {
}
}
static const testcase_t test_013_001 = {
static const testcase_t rt_test_013_001 = {
"Messages performance #1",
NULL,
NULL,
test_013_001_execute
rt_test_013_001_execute
};
#endif /* CH_CFG_USE_MESSAGES */
#if (CH_CFG_USE_MESSAGES) || defined(__DOXYGEN__)
/**
* @page test_013_002 [13.2] Messages performance #2
* @page rt_test_013_002 [13.2] Messages performance #2
*
* <h2>Description</h2>
* A message server thread is created with an higher priority than the
@ -224,7 +224,7 @@ static const testcase_t test_013_001 = {
* .
*/
static void test_013_002_execute(void) {
static void rt_test_013_002_execute(void) {
uint32_t n;
/* [13.2.1] The messenger thread is started at an higher priority
@ -253,17 +253,17 @@ static void test_013_002_execute(void) {
}
}
static const testcase_t test_013_002 = {
static const testcase_t rt_test_013_002 = {
"Messages performance #2",
NULL,
NULL,
test_013_002_execute
rt_test_013_002_execute
};
#endif /* CH_CFG_USE_MESSAGES */
#if (CH_CFG_USE_MESSAGES) || defined(__DOXYGEN__)
/**
* @page test_013_003 [13.3] Messages performance #3
* @page rt_test_013_003 [13.3] Messages performance #3
*
* <h2>Description</h2>
* A message server thread is created with an higher priority than the
@ -288,7 +288,7 @@ static const testcase_t test_013_002 = {
* .
*/
static void test_013_003_execute(void) {
static void rt_test_013_003_execute(void) {
uint32_t n;
/* [13.3.1] The messenger thread is started at an higher priority
@ -327,16 +327,16 @@ static void test_013_003_execute(void) {
}
}
static const testcase_t test_013_003 = {
static const testcase_t rt_test_013_003 = {
"Messages performance #3",
NULL,
NULL,
test_013_003_execute
rt_test_013_003_execute
};
#endif /* CH_CFG_USE_MESSAGES */
/**
* @page test_013_004 [13.4] Context Switch performance
* @page rt_test_013_004 [13.4] Context Switch performance
*
* <h2>Description</h2>
* A thread is created that just performs a @p chSchGoSleepS() into a
@ -354,7 +354,7 @@ static const testcase_t test_013_003 = {
* .
*/
static void test_013_004_execute(void) {
static void rt_test_013_004_execute(void) {
thread_t *tp;
uint32_t n;
@ -373,7 +373,7 @@ static void test_013_004_execute(void) {
n = 0;
start = test_wait_tick();
end = start + MS2ST(1000);
end = start + TIME_MS2I(1000);
do {
chSysLock();
chSchWakeupS(tp, MSG_OK);
@ -406,15 +406,15 @@ static void test_013_004_execute(void) {
}
}
static const testcase_t test_013_004 = {
static const testcase_t rt_test_013_004 = {
"Context Switch performance",
NULL,
NULL,
test_013_004_execute
rt_test_013_004_execute
};
/**
* @page test_013_005 [13.5] Threads performance, full cycle
* @page rt_test_013_005 [13.5] Threads performance, full cycle
*
* <h2>Description</h2>
* Threads are continuously created and terminated into a loop. A full
@ -431,7 +431,7 @@ static const testcase_t test_013_004 = {
* .
*/
static void test_013_005_execute(void) {
static void rt_test_013_005_execute(void) {
uint32_t n;
tprio_t prio = chThdGetPriorityX() - 1;
systime_t start, end;
@ -443,7 +443,7 @@ static void test_013_005_execute(void) {
{
n = 0;
start = test_wait_tick();
end = start + MS2ST(1000);
end = start + TIME_MS2I(1000);
do {
chThdWait(chThdCreateStatic(wa[0], WA_SIZE, prio, bmk_thread3, NULL));
n++;
@ -462,15 +462,15 @@ static void test_013_005_execute(void) {
}
}
static const testcase_t test_013_005 = {
static const testcase_t rt_test_013_005 = {
"Threads performance, full cycle",
NULL,
NULL,
test_013_005_execute
rt_test_013_005_execute
};
/**
* @page test_013_006 [13.6] Threads performance, create/exit only
* @page rt_test_013_006 [13.6] Threads performance, create/exit only
*
* <h2>Description</h2>
* Threads are continuously created and terminated into a loop. A
@ -488,7 +488,7 @@ static const testcase_t test_013_005 = {
* .
*/
static void test_013_006_execute(void) {
static void rt_test_013_006_execute(void) {
uint32_t n;
tprio_t prio = chThdGetPriorityX() + 1;
systime_t start, end;
@ -500,7 +500,7 @@ static void test_013_006_execute(void) {
{
n = 0;
start = test_wait_tick();
end = start + MS2ST(1000);
end = start + TIME_MS2I(1000);
do {
#if CH_CFG_USE_REGISTRY
chThdRelease(chThdCreateStatic(wa[0], WA_SIZE, prio, bmk_thread3, NULL));
@ -523,16 +523,16 @@ static void test_013_006_execute(void) {
}
}
static const testcase_t test_013_006 = {
static const testcase_t rt_test_013_006 = {
"Threads performance, create/exit only",
NULL,
NULL,
test_013_006_execute
rt_test_013_006_execute
};
#if (CH_CFG_USE_SEMAPHORES) || defined(__DOXYGEN__)
/**
* @page test_013_007 [13.7] Mass reschedule performance
* @page rt_test_013_007 [13.7] Mass reschedule performance
*
* <h2>Description</h2>
* Five threads are created and atomically rescheduled by resetting the
@ -556,11 +556,11 @@ static const testcase_t test_013_006 = {
* .
*/
static void test_013_007_setup(void) {
static void rt_test_013_007_setup(void) {
chSemObjectInit(&sem1, 0);
}
static void test_013_007_execute(void) {
static void rt_test_013_007_execute(void) {
uint32_t n;
/* [13.7.1] Five threads are created at higher priority that
@ -582,7 +582,7 @@ static void test_013_007_execute(void) {
n = 0;
start = test_wait_tick();
end = start + MS2ST(1000);
end = start + TIME_MS2I(1000);
do {
chSemReset(&sem1, 0);
n++;
@ -611,16 +611,16 @@ static void test_013_007_execute(void) {
}
}
static const testcase_t test_013_007 = {
static const testcase_t rt_test_013_007 = {
"Mass reschedule performance",
test_013_007_setup,
rt_test_013_007_setup,
NULL,
test_013_007_execute
rt_test_013_007_execute
};
#endif /* CH_CFG_USE_SEMAPHORES */
/**
* @page test_013_008 [13.8] Round-Robin voluntary reschedule
* @page rt_test_013_008 [13.8] Round-Robin voluntary reschedule
*
* <h2>Description</h2>
* Five threads are created at equal priority, each thread just
@ -637,7 +637,7 @@ static const testcase_t test_013_007 = {
* .
*/
static void test_013_008_execute(void) {
static void rt_test_013_008_execute(void) {
uint32_t n;
/* [13.8.1] The five threads are created at lower priority. The
@ -671,15 +671,15 @@ static void test_013_008_execute(void) {
}
}
static const testcase_t test_013_008 = {
static const testcase_t rt_test_013_008 = {
"Round-Robin voluntary reschedule",
NULL,
NULL,
test_013_008_execute
rt_test_013_008_execute
};
/**
* @page test_013_009 [13.9] Virtual Timers set/reset performance
* @page rt_test_013_009 [13.9] Virtual Timers set/reset performance
*
* <h2>Description</h2>
* A virtual timer is set and immediately reset into a continuous
@ -694,7 +694,7 @@ static const testcase_t test_013_008 = {
* .
*/
static void test_013_009_execute(void) {
static void rt_test_013_009_execute(void) {
static virtual_timer_t vt1, vt2;
uint32_t n;
@ -707,7 +707,7 @@ static void test_013_009_execute(void) {
n = 0;
start = test_wait_tick();
end = start + MS2ST(1000);
end = start + TIME_MS2I(1000);
do {
chSysLock();
chVTDoSetI(&vt1, 1, tmo, NULL);
@ -731,16 +731,16 @@ static void test_013_009_execute(void) {
}
}
static const testcase_t test_013_009 = {
static const testcase_t rt_test_013_009 = {
"Virtual Timers set/reset performance",
NULL,
NULL,
test_013_009_execute
rt_test_013_009_execute
};
#if (CH_CFG_USE_SEMAPHORES) || defined(__DOXYGEN__)
/**
* @page test_013_010 [13.10] Semaphores wait/signal performance
* @page rt_test_013_010 [13.10] Semaphores wait/signal performance
*
* <h2>Description</h2>
* A counting semaphore is taken/released into a continuous loop, no
@ -761,11 +761,11 @@ static const testcase_t test_013_009 = {
* .
*/
static void test_013_010_setup(void) {
static void rt_test_013_010_setup(void) {
chSemObjectInit(&sem1, 1);
}
static void test_013_010_execute(void) {
static void rt_test_013_010_execute(void) {
uint32_t n;
/* [13.10.1] A semaphore is teken and released. The operation is
@ -776,7 +776,7 @@ static void test_013_010_execute(void) {
n = 0;
start = test_wait_tick();
end = start + MS2ST(1000);
end = start + TIME_MS2I(1000);
do {
chSemWait(&sem1);
chSemSignal(&sem1);
@ -802,17 +802,17 @@ static void test_013_010_execute(void) {
}
}
static const testcase_t test_013_010 = {
static const testcase_t rt_test_013_010 = {
"Semaphores wait/signal performance",
test_013_010_setup,
rt_test_013_010_setup,
NULL,
test_013_010_execute
rt_test_013_010_execute
};
#endif /* CH_CFG_USE_SEMAPHORES */
#if (CH_CFG_USE_MUTEXES) || defined(__DOXYGEN__)
/**
* @page test_013_011 [13.11] Mutexes lock/unlock performance
* @page rt_test_013_011 [13.11] Mutexes lock/unlock performance
*
* <h2>Description</h2>
* A mutex is locked/unlocked into a continuous loop, no Context Switch
@ -833,11 +833,11 @@ static const testcase_t test_013_010 = {
* .
*/
static void test_013_011_setup(void) {
static void rt_test_013_011_setup(void) {
chMtxObjectInit(&mtx1);
}
static void test_013_011_execute(void) {
static void rt_test_013_011_execute(void) {
uint32_t n;
/* [13.11.1] A mutex is locked and unlocked. The operation is
@ -848,7 +848,7 @@ static void test_013_011_execute(void) {
n = 0;
start = test_wait_tick();
end = start + MS2ST(1000);
end = start + TIME_MS2I(1000);
do {
chMtxLock(&mtx1);
chMtxUnlock(&mtx1);
@ -874,16 +874,16 @@ static void test_013_011_execute(void) {
}
}
static const testcase_t test_013_011 = {
static const testcase_t rt_test_013_011 = {
"Mutexes lock/unlock performance",
test_013_011_setup,
rt_test_013_011_setup,
NULL,
test_013_011_execute
rt_test_013_011_execute
};
#endif /* CH_CFG_USE_MUTEXES */
/**
* @page test_013_012 [13.12] RAM Footprint
* @page rt_test_013_012 [13.12] RAM Footprint
*
* <h2>Description</h2>
* The memory size of the various kernel objects is printed.
@ -901,7 +901,7 @@ static const testcase_t test_013_011 = {
* .
*/
static void test_013_012_execute(void) {
static void rt_test_013_012_execute(void) {
/* [13.12.1] The size of the system area is printed.*/
test_set_step(1);
@ -988,11 +988,11 @@ static void test_013_012_execute(void) {
}
}
static const testcase_t test_013_012 = {
static const testcase_t rt_test_013_012 = {
"RAM Footprint",
NULL,
NULL,
test_013_012_execute
rt_test_013_012_execute
};
/****************************************************************************
@ -1002,30 +1002,30 @@ static const testcase_t test_013_012 = {
/**
* @brief Benchmarks.
*/
const testcase_t * const test_sequence_013[] = {
const testcase_t * const rt_test_sequence_013[] = {
#if (CH_CFG_USE_MESSAGES) || defined(__DOXYGEN__)
&test_013_001,
&rt_test_013_001,
#endif
#if (CH_CFG_USE_MESSAGES) || defined(__DOXYGEN__)
&test_013_002,
&rt_test_013_002,
#endif
#if (CH_CFG_USE_MESSAGES) || defined(__DOXYGEN__)
&test_013_003,
&rt_test_013_003,
#endif
&test_013_004,
&test_013_005,
&test_013_006,
&rt_test_013_004,
&rt_test_013_005,
&rt_test_013_006,
#if (CH_CFG_USE_SEMAPHORES) || defined(__DOXYGEN__)
&test_013_007,
&rt_test_013_007,
#endif
&test_013_008,
&test_013_009,
&rt_test_013_008,
&rt_test_013_009,
#if (CH_CFG_USE_SEMAPHORES) || defined(__DOXYGEN__)
&test_013_010,
&rt_test_013_010,
#endif
#if (CH_CFG_USE_MUTEXES) || defined(__DOXYGEN__)
&test_013_011,
&rt_test_013_011,
#endif
&test_013_012,
&rt_test_013_012,
NULL
};

View File

@ -15,13 +15,13 @@
*/
/**
* @file test_sequence_013.h
* @file rt_test_sequence_013.h
* @brief Test Sequence 013 header.
*/
#ifndef TEST_SEQUENCE_013_H
#define TEST_SEQUENCE_013_H
#ifndef RT_TEST_SEQUENCE_013_H
#define RT_TEST_SEQUENCE_013_H
extern const testcase_t * const test_sequence_013[];
extern const testcase_t * const rt_test_sequence_013[];
#endif /* TEST_SEQUENCE_013_H */
#endif /* RT_TEST_SEQUENCE_013_H */

View File

@ -1,19 +1,19 @@
# List of all the ChibiOS/RT test files.
TESTSRC = ${CHIBIOS}/test/lib/ch_test.c \
${CHIBIOS}/test/rt/source/test/test_root.c \
${CHIBIOS}/test/rt/source/test/test_sequence_001.c \
${CHIBIOS}/test/rt/source/test/test_sequence_002.c \
${CHIBIOS}/test/rt/source/test/test_sequence_003.c \
${CHIBIOS}/test/rt/source/test/test_sequence_004.c \
${CHIBIOS}/test/rt/source/test/test_sequence_005.c \
${CHIBIOS}/test/rt/source/test/test_sequence_006.c \
${CHIBIOS}/test/rt/source/test/test_sequence_007.c \
${CHIBIOS}/test/rt/source/test/test_sequence_008.c \
${CHIBIOS}/test/rt/source/test/test_sequence_009.c \
${CHIBIOS}/test/rt/source/test/test_sequence_010.c \
${CHIBIOS}/test/rt/source/test/test_sequence_011.c \
${CHIBIOS}/test/rt/source/test/test_sequence_012.c \
${CHIBIOS}/test/rt/source/test/test_sequence_013.c
${CHIBIOS}/test/rt/source/test/rt_test_root.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_001.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_002.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_003.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_004.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_005.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_006.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_007.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_008.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_009.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_010.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_011.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_012.c \
${CHIBIOS}/test/rt/source/test/rt_test_sequence_013.c
# Required include directories
TESTINC = ${CHIBIOS}/test/lib \