diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-09-08 15:32:22 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-09-21 08:59:33 +0200 |
commit | 8123cae864579219e5003a67b451ca4cc07d998b (patch) | |
tree | e50feb997422afc2d20af9cd730d43d5896e0e5c /testsuites/sptests | |
parent | smptests/smpmutex01: Use test case functions (diff) | |
download | rtems-8123cae864579219e5003a67b451ca4cc07d998b.tar.bz2 |
rtems: Add rtems_task_get_priority()
Update #2556.
Update #2784.
Diffstat (limited to 'testsuites/sptests')
-rw-r--r-- | testsuites/sptests/spscheduler01/init.c | 39 | ||||
-rw-r--r-- | testsuites/sptests/spscheduler01/spscheduler01.doc | 10 |
2 files changed, 49 insertions, 0 deletions
diff --git a/testsuites/sptests/spscheduler01/init.c b/testsuites/sptests/spscheduler01/init.c index bb0c16def6..d6213c6bcc 100644 --- a/testsuites/sptests/spscheduler01/init.c +++ b/testsuites/sptests/spscheduler01/init.c @@ -411,6 +411,44 @@ static void test_scheduler_get_processors(void) #endif /* defined(__RTEMS_HAVE_SYS_CPUSET_H__) */ } +static void test_task_get_priority(void) +{ + rtems_status_code sc; + rtems_id scheduler_id; + rtems_task_priority priority; + rtems_task_priority priority_2; + + sc = rtems_task_get_scheduler(RTEMS_SELF, &scheduler_id); + rtems_test_assert(sc == RTEMS_SUCCESSFUL); + + sc = rtems_task_get_priority(RTEMS_SELF, scheduler_id, NULL); + rtems_test_assert(sc == RTEMS_INVALID_ADDRESS); + + priority = 0; + + sc = rtems_task_get_priority(RTEMS_SELF, invalid_id, &priority); + rtems_test_assert(sc == RTEMS_INVALID_ID); + rtems_test_assert(priority == 0); + + sc = rtems_task_get_priority(invalid_id, scheduler_id, &priority); + rtems_test_assert(sc == RTEMS_INVALID_ID); + rtems_test_assert(priority == 0); + + sc = rtems_task_set_priority(RTEMS_SELF, RTEMS_CURRENT_PRIORITY, &priority); + rtems_test_assert(sc == RTEMS_SUCCESSFUL); + rtems_test_assert(priority != 0); + + priority_2 = 0; + sc = rtems_task_get_priority(RTEMS_SELF, scheduler_id, &priority_2); + rtems_test_assert(sc == RTEMS_SUCCESSFUL); + rtems_test_assert(priority_2 == priority); + + priority_2 = 0; + sc = rtems_task_get_priority(rtems_task_self(), scheduler_id, &priority_2); + rtems_test_assert(sc == RTEMS_SUCCESSFUL); + rtems_test_assert(priority_2 == priority); +} + static void Init(rtems_task_argument arg) { rtems_resource_snapshot snapshot; @@ -425,6 +463,7 @@ static void Init(rtems_task_argument arg) test_task_get_set_scheduler(); test_scheduler_ident(); test_scheduler_get_processors(); + test_task_get_priority(); rtems_test_assert(rtems_resource_snapshot_check(&snapshot)); diff --git a/testsuites/sptests/spscheduler01/spscheduler01.doc b/testsuites/sptests/spscheduler01/spscheduler01.doc index d398315b13..2182928722 100644 --- a/testsuites/sptests/spscheduler01/spscheduler01.doc +++ b/testsuites/sptests/spscheduler01/spscheduler01.doc @@ -6,8 +6,18 @@ directives: - rtems_task_get_affinity() - rtems_task_set_affinity() + - rtems_task_get_scheduler() + - rtems_task_set_scheduler() + - rtems_scheduler_ident() + - rtems_scheduler_get_processor_set() + - rtems_task_get_priority() concepts: - Ensure that the task set/get affinity functions work on uni-processor configurations. + - Ensure that the task set/get scheduler functions work on uni-processor + configurations. + - Ensure that the scheduler functions work on uni-processor configurations. + - Ensure that the task get priority function works on uni-processor + configurations. |