diff options
author | Giovanni Di Sirio <gdisirio@gmail.com> | 2016-03-08 08:38:54 +0000 |
---|---|---|
committer | Giovanni Di Sirio <gdisirio@gmail.com> | 2016-03-08 08:38:54 +0000 |
commit | 742a1d93c841fc87fd91ae4feca78a736e812388 (patch) | |
tree | 74f613fcca72475a65d2f0d2c83d3787e6d767b7 /test | |
parent | c3e44eb92936293097f1503e42ba6ccafaffac3d (diff) | |
download | ChibiOS-742a1d93c841fc87fd91ae4feca78a736e812388.tar.gz ChibiOS-742a1d93c841fc87fd91ae4feca78a736e812388.tar.bz2 ChibiOS-742a1d93c841fc87fd91ae4feca78a736e812388.zip |
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@9053 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'test')
-rw-r--r-- | test/nasa_osal/configuration.xml | 79 | ||||
-rw-r--r-- | test/nasa_osal/source/test/test_root.c | 4 | ||||
-rw-r--r-- | test/nasa_osal/source/test/test_sequence_001.c | 64 |
3 files changed, 141 insertions, 6 deletions
diff --git a/test/nasa_osal/configuration.xml b/test/nasa_osal/configuration.xml index 824637759..7eab9b5a9 100644 --- a/test/nasa_osal/configuration.xml +++ b/test/nasa_osal/configuration.xml @@ -10,7 +10,7 @@ <instance locked="false" id="org.chibios.spc5.components.chibios_unitary_tests_engine">
<description>
<introduction>
- <value>This document has been automatically generated.</value>
+ <value>Test suite for NASA OSAL implementation over ChibiOS/RT. The purpose of this suite is to perform unit tests on the OSAL module and to converge to 100% code coverage through successive improvements.</value>
</introduction>
</description>
<global_data_and_code>
@@ -44,7 +44,7 @@ THD_WORKING_AREA(wa_test4, TASKS_STACK_SIZE);]]></value> <value>This sequence tests the NASA OSAL over ChibiOS/RT functionalities related to threading.</value>
</description>
<shared_code>
- <value><![CDATA[#include "osapi.h" + <value><![CDATA[#include "osapi.h"
static void test_thread1(void) { @@ -60,10 +60,18 @@ static void test_thread3(void) { test_emit_token('C'); } +
+static void test_thread4(void) {
+
+ test_emit_token('D');
+} +
+static void test_thread_delete(void) {
-static void test_thread4(void) { - - test_emit_token('D'); + while (!OS_TaskDeleteCheck()) { + OS_TaskDelay(1); + }
+ test_emit_token('A');
}]]></value>
</shared_code>
<cases>
@@ -490,6 +498,67 @@ test_assert_sequence("ABCD", "task order violation");]]></value> </step>
</steps>
</case>
+ <case>
+ <brief>
+ <value>OS_TaskDelete() errors</value>
+ </brief>
+ <description>
+ <value>Parameters checking in OS_TaskDelete() is tested.</value>
+ </description>
+ <condition>
+ <value />
+ </condition>
+ <various_code>
+ <setup_code>
+ <value />
+ </setup_code>
+ <teardown_code>
+ <value />
+ </teardown_code>
+ <local_variables>
+ <value />
+ </local_variables>
+ </various_code>
+ <steps>
+ <step>
+ <description>
+ <value>OS_TaskDelete() is invoked with task_id set to -1, an error is expected.</value>
+ </description>
+ <tags>
+ <value />
+ </tags>
+ <code>
+ <value><![CDATA[int32 err;
+
+err = OS_TaskDelete((uint32)-1);
+test_assert(err == OS_ERR_INVALID_ID, "wrong task id not detected");]]></value>
+ </code>
+ </step>
+ </steps>
+ </case>
+ <case>
+ <brief>
+ <value>OS_TaskDelete() and OS_TaskInstallDeleteHandler() functionality</value>
+ </brief>
+ <description>
+ <value>OS_TaskDelete() and OS_TaskInstallDeleteHandler() are tested for functionality.</value>
+ </description>
+ <condition>
+ <value />
+ </condition>
+ <various_code>
+ <setup_code>
+ <value />
+ </setup_code>
+ <teardown_code>
+ <value />
+ </teardown_code>
+ <local_variables>
+ <value />
+ </local_variables>
+ </various_code>
+ <steps />
+ </case>
</cases>
</sequence>
</sequences>
diff --git a/test/nasa_osal/source/test/test_root.c b/test/nasa_osal/source/test/test_root.c index 5c5ef9316..0a1119188 100644 --- a/test/nasa_osal/source/test/test_root.c +++ b/test/nasa_osal/source/test/test_root.c @@ -16,7 +16,9 @@ /**
* @mainpage Test Suite Specification
- * This document has been automatically generated.
+ * Test suite for NASA OSAL implementation over ChibiOS/RT. The purpose
+ * of this suite is to perform unit tests on the OSAL module and to
+ * converge to 100% code coverage through successive improvements.
*
* <h2>Test Sequences</h2>
* - @subpage test_sequence_001
diff --git a/test/nasa_osal/source/test/test_sequence_001.c b/test/nasa_osal/source/test/test_sequence_001.c index c5863f171..7c7829d8a 100644 --- a/test/nasa_osal/source/test/test_sequence_001.c +++ b/test/nasa_osal/source/test/test_sequence_001.c @@ -30,6 +30,8 @@ * <h2>Test Cases</h2>
* - @subpage test_001_001
* - @subpage test_001_002
+ * - @subpage test_001_003
+ * - @subpage test_001_004
* .
*/
@@ -57,6 +59,14 @@ static void test_thread3(void) { static void test_thread4(void) { test_emit_token('D'); +} + +static void test_thread_delete(void) { + + while (!OS_TaskDeleteCheck()) { + OS_TaskDelay(1); + } + test_emit_token('A'); }
/****************************************************************************
@@ -448,6 +458,58 @@ static const testcase_t test_001_002 = { test_001_002_execute
};
+/**
+ * @page test_001_003 OS_TaskDelete() errors
+ *
+ * <h2>Description</h2>
+ * Parameters checking in OS_TaskDelete() is tested.
+ *
+ * <h2>Test Steps</h2>
+ * - OS_TaskDelete() is invoked with task_id set to -1, an error is
+ * expected.
+ * .
+ */
+
+static void test_001_003_execute(void) {
+
+ /* OS_TaskDelete() is invoked with task_id set to -1, an error is
+ expected.*/
+ test_set_step(1);
+ {
+ int32 err;
+
+ err = OS_TaskDelete((uint32)-1);
+ test_assert(err == OS_ERR_INVALID_ID, "wrong task id not detected");
+ }
+}
+
+static const testcase_t test_001_003 = {
+ "OS_TaskDelete() errors",
+ NULL,
+ NULL,
+ test_001_003_execute
+};
+
+/**
+ * @page test_001_004 OS_TaskDelete() and OS_TaskInstallDeleteHandler() functionality
+ *
+ * <h2>Description</h2>
+ * OS_TaskDelete() and OS_TaskInstallDeleteHandler() are tested for
+ * functionality.
+ *
+ * <h2>Test Steps</h2>
+ */
+
+static void test_001_004_execute(void) {
+}
+
+static const testcase_t test_001_004 = {
+ "OS_TaskDelete() and OS_TaskInstallDeleteHandler() functionality",
+ NULL,
+ NULL,
+ test_001_004_execute
+};
+
/****************************************************************************
* Exported data.
****************************************************************************/
@@ -458,5 +520,7 @@ static const testcase_t test_001_002 = { const testcase_t * const test_sequence_001[] = {
&test_001_001,
&test_001_002,
+ &test_001_003,
+ &test_001_004,
NULL
};
|