diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/nasa_osal/test_sequence_001.c | 453 | ||||
| -rw-r--r-- | test/nasa_osal/test_sequence_001.h | 22 | 
2 files changed, 0 insertions, 475 deletions
| diff --git a/test/nasa_osal/test_sequence_001.c b/test/nasa_osal/test_sequence_001.c deleted file mode 100644 index 0e4063289..000000000 --- a/test/nasa_osal/test_sequence_001.c +++ /dev/null @@ -1,453 +0,0 @@ -/*
 -    ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
 -
 -    Licensed under the Apache License, Version 2.0 (the "License");
 -    you may not use this file except in compliance with the License.
 -    You may obtain a copy of the License at
 -
 -        http://www.apache.org/licenses/LICENSE-2.0
 -
 -    Unless required by applicable law or agreed to in writing, software
 -    distributed under the License is distributed on an "AS IS" BASIS,
 -    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 -    See the License for the specific language governing permissions and
 -    limitations under the License.
 -*/
 -
 -#include "hal.h"
 -#include "ch.h"
 -#include "osapi.h"
 -#include "ch_test.h"
 -
 -/**
 - * @page test_sequence_001 Threads Functionality
 - *
 - * File: @ref test_sequence_001.c
 - *
 - * <h2>Description</h2>
 - * This sequence tests the NASA OSAL over ChibiOS/RT functionalities related
 - * to threading.
 - *
 - * <h2>Test Cases</h2>
 - * - @subpage test_001_001
 - * .
 - */
 -
 -/****************************************************************************
 - * Shared code.
 - ****************************************************************************/
 -
 -static void test_thread1(void) {
 -
 -  test_emit_token('A');
 -}
 -
 -static void test_thread2(void) {
 -
 -  test_emit_token('B');
 -}
 -
 -static void test_thread3(void) {
 -
 -  test_emit_token('C');
 -}
 -
 -static void test_thread4(void) {
 -
 -  test_emit_token('D');
 -}
 -
 -/****************************************************************************
 - * Test cases.
 - ****************************************************************************/
 -
 -#if TRUE || defined(__DOXYGEN__)
 -/**
 - * @page test_001_001 OS_TaskCreate() errors
 - *
 - * <h2>Description</h2>
 - * Parameters checking in OS_TaskCreate() is tested.
 - *
 - * <h2>Conditions</h2>
 - * None.
 - *
 - * <h2>Test Steps</h2>
 - * - Testing NULL task_id.
 - * - Testing NULL task_name.
 - * - Testing NULL stack_pointer.
 - * - Testing long task name.
 - * - Testing priority limits.
 - * - Testing insufficient stack size.
 - * - Testing task name or task stack conflict.
 - * .
 - */
 -
 -static void test_001_001_execute(void) {
 -
 -  /* Testing NULL task_id.*/
 -  test_set_step(1);
 -  {
 -    int32 err;
 -
 -    err = OS_TaskCreate(NULL,                   /* Error.*/
 -                        "failing thread",
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY,
 -                        0);
 -    test_assert(err == OS_INVALID_POINTER, "NULL not detected");
 -    test_assert_sequence("", "task executed");
 -  }
 -
 -  /* Testing NULL task_name.*/
 -  test_set_step(2);
 -  {
 -    int32 err;
 -    uint32 tid;
 -
 -    err = OS_TaskCreate(&tid,
 -                        NULL,                   /* Error.*/
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY,
 -                        0);
 -    test_assert(err == OS_INVALID_POINTER, "NULL not detected");
 -    test_assert_sequence("", "task executed");
 -  }
 -
 -  /* Testing NULL stack_pointer.*/
 -  test_set_step(3);
 -  {
 -    int32 err;
 -    uint32 tid;
 -
 -    err = OS_TaskCreate(&tid,
 -                        "failing thread",
 -                        test_thread1,
 -                        (uint32 *)NULL,         /* Error.*/
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY,
 -                        0);
 -    test_assert(err == OS_INVALID_POINTER, "NULL not detected");
 -    test_assert_sequence("", "task executed");
 -  }
 -
 -  /* Testing long task name.*/
 -  test_set_step(4);
 -  {
 -    int32 err;
 -    uint32 tid;
 -
 -    err = OS_TaskCreate(&tid,
 -                        "this is a very very long task name", /* Error.*/
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY,
 -                        0);
 -    test_assert(err == OS_ERR_NAME_TOO_LONG, "name limit not detected");
 -    test_assert_sequence("", "task executed");
 -  }
 -
 -  /* Testing priority limits.*/
 -  test_set_step(5);
 -  {
 -    int32 err;
 -    uint32 tid;
 -
 -    err = OS_TaskCreate(&tid,
 -                        "failing thread",
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        0,                      /* Error.*/
 -                        0);
 -    test_assert(err == OS_ERR_INVALID_PRIORITY, "priority error not detected");
 -    test_assert_sequence("", "task executed");
 -
 -    err = OS_TaskCreate(&tid,
 -                       "failing thread",
 -                       test_thread1,
 -                       (uint32 *)wa_test1,
 -                       sizeof wa_test1,
 -                       256,                     /* Error.*/
 -                       0);
 -    test_assert(err == OS_ERR_INVALID_PRIORITY, "priority error not detected");
 -    test_assert_sequence("", "task executed");
 -  }
 -
 -  /* Testing insufficient stack size.*/
 -  test_set_step(6);
 -  {
 -    int32 err;
 -    uint32 tid;
 -
 -    err = OS_TaskCreate(&tid,
 -                        "failing thread",
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        16,                     /* Error.*/
 -                        TASKS_BASE_PRIORITY,
 -                        0);
 -    test_assert(err == OS_INVALID_INT_NUM, "stack insufficient size not detected");
 -    test_assert_sequence("", "task executed");
 -  }
 -
 -  /* Testing task name or task stack conflict.*/
 -  test_set_step(7);
 -  {
 -    int32 err;
 -    uint32 tid;
 -
 -    err = OS_TaskCreate(&tid,
 -                        "running thread",
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task creation failed");
 -
 -    err = OS_TaskCreate(&tid,
 -                        "running thread",
 -                        test_thread2,
 -                        (uint32 *)wa_test2,
 -                        sizeof wa_test2,
 -                        TASKS_BASE_PRIORITY,
 -                        0);
 -    test_assert(err == OS_ERR_NAME_TAKEN, "name conflict not detected");
 -
 -    err = OS_TaskCreate(&tid,
 -                        "another running thread",
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY,
 -                        0);
 -    test_assert(err == OS_ERR_NO_FREE_IDS, "stack conflict not detected");
 -
 -    OS_TaskDelay(5);
 -    test_assert_sequence("A", "task not executed");
 -
 -    err = OS_TaskCreate(&tid,
 -                        "running thread",
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task creation failed");
 -
 -    OS_TaskDelay(5);
 -    test_assert_sequence("A", "task not executed");
 -  }
 -}
 -
 -static const testcase_t test_001_001 = {
 -  "OS_TaskCreate() errors",
 -  NULL,
 -  NULL,
 -  test_001_001_execute
 -};
 -#endif /* TRUE */
 -
 -#if TRUE || defined(__DOXYGEN__)
 -/**
 - * @page test_001_001 OS_TaskCreate() priority ordering
 - *
 - * <h2>Description</h2>
 - * Four tasks are created at different priorities and in different orders
 - * then their execution order is tested.
 - *
 - * <h2>Conditions</h2>
 - * None.
 - *
 - * <h2>Test Steps</h2>
 - * - Tasks are created in priority order from low to high.
 - * - Tasks are made runnable atomically and their execution order tested.
 - * - Tasks are created in priority order from high to low.
 - * - Tasks are made runnable atomically and their execution order tested.
 - * - Tasks are created in an not ordered way.
 - * - Tasks are made runnable atomically and their execution order tested.
 - * .
 - */
 -
 -static void test_001_002_execute(void) {
 -
 -  /* Tasks are created in priority order from low to high.*/
 -  test_set_step(1);
 -  {
 -    int32 err;
 -    uint32 tid1, tid2, tid3, tid4;
 -
 -    err = OS_TaskCreate(&tid4,
 -                        "running thread 4",
 -                        test_thread4,
 -                        (uint32 *)wa_test4,
 -                        sizeof wa_test4,
 -                        TASKS_BASE_PRIORITY - 0,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 4 creation failed");
 -
 -    err = OS_TaskCreate(&tid3,
 -                        "running thread 3",
 -                        test_thread3,
 -                        (uint32 *)wa_test3,
 -                        sizeof wa_test3,
 -                        TASKS_BASE_PRIORITY - 1,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 3 creation failed");
 -
 -    err = OS_TaskCreate(&tid2,
 -                        "running thread 2",
 -                        test_thread2,
 -                        (uint32 *)wa_test2,
 -                        sizeof wa_test2,
 -                        TASKS_BASE_PRIORITY - 2,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 2 creation failed");
 -
 -    err = OS_TaskCreate(&tid1,
 -                        "running thread 1",
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY - 3,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 1 creation failed");
 -  }
 -
 -  /* Tasks are made runnable atomically and their execution order tested.*/
 -  test_set_step(2);
 -  {
 -    OS_TaskDelay(5);
 -    test_assert_sequence("ABCD", "task order violation");
 -  }
 -
 -  /* Tasks are created in priority order from high to low.*/
 -  test_set_step(3);
 -  {
 -    int32 err;
 -    uint32 tid1, tid2, tid3, tid4;
 -
 -    err = OS_TaskCreate(&tid1,
 -                        "running thread 1",
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY - 3,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 1 creation failed");
 -
 -    err = OS_TaskCreate(&tid2,
 -                        "running thread 2",
 -                        test_thread2,
 -                        (uint32 *)wa_test2,
 -                        sizeof wa_test2,
 -                        TASKS_BASE_PRIORITY - 2,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 2 creation failed");
 -
 -    err = OS_TaskCreate(&tid3,
 -                        "running thread 3",
 -                        test_thread3,
 -                        (uint32 *)wa_test3,
 -                        sizeof wa_test3,
 -                        TASKS_BASE_PRIORITY - 1,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 3 creation failed");
 -
 -    err = OS_TaskCreate(&tid4,
 -                        "running thread 4",
 -                        test_thread4,
 -                        (uint32 *)wa_test4,
 -                        sizeof wa_test4,
 -                        TASKS_BASE_PRIORITY - 0,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 4 creation failed");
 -  }
 -
 -  /* Tasks are made runnable atomically and their execution order tested.*/
 -  test_set_step(4);
 -  {
 -    OS_TaskDelay(5);
 -    test_assert_sequence("ABCD", "task order violation");
 -  }
 -
 -  /* Tasks are created in an not ordered way.*/
 -  test_set_step(5);
 -  {
 -    int32 err;
 -    uint32 tid1, tid2, tid3, tid4;
 -
 -    err = OS_TaskCreate(&tid2,
 -                        "running thread 2",
 -                        test_thread2,
 -                        (uint32 *)wa_test2,
 -                        sizeof wa_test2,
 -                        TASKS_BASE_PRIORITY - 2,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 2 creation failed");
 -
 -    err = OS_TaskCreate(&tid1,
 -                        "running thread 1",
 -                        test_thread1,
 -                        (uint32 *)wa_test1,
 -                        sizeof wa_test1,
 -                        TASKS_BASE_PRIORITY - 3,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 1 creation failed");
 -
 -    err = OS_TaskCreate(&tid4,
 -                        "running thread 4",
 -                        test_thread4,
 -                        (uint32 *)wa_test4,
 -                        sizeof wa_test4,
 -                        TASKS_BASE_PRIORITY - 0,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 4 creation failed");
 -
 -    err = OS_TaskCreate(&tid3,
 -                        "running thread 3",
 -                        test_thread3,
 -                        (uint32 *)wa_test3,
 -                        sizeof wa_test3,
 -                        TASKS_BASE_PRIORITY - 1,
 -                        0);
 -    test_assert(err == OS_SUCCESS, "task 3 creation failed");
 -  }
 -
 -  /* Tasks are made runnable atomically and their execution order tested.*/
 -  test_set_step(6);
 -  {
 -    OS_TaskDelay(5);
 -    test_assert_sequence("ABCD", "task order violation");
 -  }
 -}
 -
 -static const testcase_t test_001_002 = {
 -  "OS_TaskCreate() priority ordering",
 -  NULL,
 -  NULL,
 -  test_001_002_execute
 -};
 -#endif /* TRUE */
 -
 -/****************************************************************************
 - * Exported data.
 - ****************************************************************************/
 -
 -/**
 - * @brief   Sequence brief description.
 - */
 -const testcase_t * const test_sequence_001[] = {
 -#if TRUE || defined(__DOXYGEN__)
 -  &test_001_001,
 -#endif
 -#if TRUE || defined(__DOXYGEN__)
 -  &test_001_002,
 -#endif
 -  NULL
 -};
 diff --git a/test/nasa_osal/test_sequence_001.h b/test/nasa_osal/test_sequence_001.h deleted file mode 100644 index 91c2181d0..000000000 --- a/test/nasa_osal/test_sequence_001.h +++ /dev/null @@ -1,22 +0,0 @@ -/*
 -    ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
 -
 -    Licensed under the Apache License, Version 2.0 (the "License");
 -    you may not use this file except in compliance with the License.
 -    You may obtain a copy of the License at
 -
 -        http://www.apache.org/licenses/LICENSE-2.0
 -
 -    Unless required by applicable law or agreed to in writing, software
 -    distributed under the License is distributed on an "AS IS" BASIS,
 -    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 -    See the License for the specific language governing permissions and
 -    limitations under the License.
 -*/
 -
 -#ifndef _TEST_SEQUENCE_001_H_
 -#define _TEST_SEQUENCE_001_H_
 -
 -extern const testcase_t * const test_sequence_001[];
 -
 -#endif /* _TEST_SEQUENCE_001_H_ */
 | 
