zephyr/tests/kernel/test_map
Inaky Perez-Gonzalez fcec9e37c0 testcases: sanity check TCs get more language for real HW
Add more specifications or qualify some to the sanity check test cases
for them to be ran in real hardware:

 - kernel types (micro vs nano)
 - platforms / arches to exclude / include
 - one that is removed (for the PCI sample) as it cannot be ran
   without extra information

Change-Id: Id14dc15eb89358c3656d2814ea41bb6fec051278
Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2016-06-14 23:49:56 +00:00
..
src move include directory for tests cases to tests/ 2016-02-11 18:08:08 +00:00
Makefile tests: remove duplicate kernel configs and usage of ARCH 2016-05-23 16:46:08 +00:00
prj.conf tests: remove duplicate kernel configs and usage of ARCH 2016-05-23 16:46:08 +00:00
prj.mdef
README.txt
testcase.ini testcases: sanity check TCs get more language for real HW 2016-06-14 23:49:56 +00:00

Title: Memory Map APIs

Description:

This test verifies that the microkernel memory map APIs operate as expected.

--------------------------------------------------------------------------------

Building and Running Project:

This microkernel project outputs to the console.  It can be built and executed
on QEMU as follows:

    make qemu

--------------------------------------------------------------------------------

Troubleshooting:

Problems caused by out-dated project information can be addressed by
issuing one of the following commands then rebuilding the project:

    make clean          # discard results of previous builds
                        # but keep existing configuration info
or
    make pristine       # discard results of previous builds
                        # and restore pre-defined configuration info

--------------------------------------------------------------------------------

Sample Output:

tc_start() - Test Microkernel Memory Maps
Starts RegressionTask
Function testMapGetAllBlocks
MAP_LgBlks used 0 blocks
  task_mem_map_alloc OK, p[0] = 001040a8
MAP_LgBlks used 1 blocks
  task_mem_map_alloc OK, p[1] = 00103ca8
MAP_LgBlks used 2 blocks
  task_mem_map_alloc RC_FAIL expected as all (2) blocks are used.
===================================================================
printPointers: p[0] = 001040a8, p[1] = 00103ca8,
===================================================================
Function testMapFreeAllBlocks
MAP_LgBlks used 2 blocks
  block ptr to free p[0] = 001040a8
MAP_LgBlks freed 1 block
MAP_LgBlks used 1 blocks
  block ptr to free p[1] = 00103ca8
MAP_LgBlks freed 2 block
MAP_LgBlks used 0 blocks
===================================================================
printPointers: p[0] = 00000000, p[1] = 00000000,
===================================================================
Starts HelperTask
Function testMapGetAllBlocks
MAP_LgBlks used 0 blocks
  task_mem_map_alloc OK, p[0] = 00103ca8
MAP_LgBlks used 1 blocks
  task_mem_map_alloc OK, p[1] = 001040a8
MAP_LgBlks used 2 blocks
  task_mem_map_alloc RC_FAIL expected as all (2) blocks are used.
===================================================================
RegressionTask: task_mem_map_alloc timeout expected
RegressionTask: start to wait for block
HelperTask: About to free a memory block
RegressionTask: task_mem_map_alloc OK, block allocated at 00103ca8
RegressionTask: start to wait for block
HelperTask: About to free another memory block
RegressionTask: task_mem_map_alloc OK, block allocated at 00000000
HelperTask: freed all blocks allocated by this task
===================================================================
PASS - HelperTask.
RegressionTask: Used 1 block
RegressionTask: 1 block freed, used 0 block
===================================================================
PASS - RegressionTask.
===================================================================
PROJECT EXECUTION SUCCESSFUL