zephyr/tests/kernel/obj_tracing
Torsten Rasmussen 407b49b35c cmake: use find_package to locate Zephyr
Using find_package to locate Zephyr.

Old behavior was to use $ENV{ZEPHYR_BASE} for inclusion of boiler plate
code.

Whenever an automatic run of CMake happend by the build system / IDE
then it was required that ZEPHYR_BASE was defined.
Using ZEPHYR_BASE only to locate the Zephyr package allows CMake to
cache the base variable and thus allowing subsequent invocation even
if ZEPHYR_BASE is not set in the environment.

It also removes the risk of strange build results if a user switchs
between different Zephyr based project folders and forgetting to reset
ZEPHYR_BASE before running ninja / make.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2020-03-27 16:23:46 +01:00
..
src kernel: fixup thread monitor locking 2020-03-10 16:09:24 -04:00
CMakeLists.txt cmake: use find_package to locate Zephyr 2020-03-27 16:23:46 +01:00
prj.conf tests: Never disable SMP 2019-09-26 16:54:06 -04:00
README.txt
testcase.yaml tests: fix test identifiers 2019-12-09 15:53:44 -05:00

Test Description
----------------

The object tracing test is a sanity test to verify that the
object tracing API remains healthy.

It uses the philsophers as an application that implements
multiple threads that are synchronized with semaphores.

The application initializes their objects and starts the philosophers'
thread interaction. A specific thread, called object monitor, accesses
the object tracing API and reports the number of expected objects.

The sanity test script expects each test to finish its execution
and then it considers the test completed. For that reason the
philosophers' threads execute a finite number of iterations. After
that the application execution ends.

Sample Output
--------------
***** BOOTING ZEPHYR OS vxxxx - BUILD: yyyyy *****
Running test suite test_obj_tracing
===================================================================
starting test - test_tracing
SEMAPHORE REF: 0x004002d0
SEMAPHORE REF: 0x004002bc
SEMAPHORE REF: 0x004002a8
SEMAPHORE REF: 0x00400294
SEMAPHORE REF: 0x00400280
SEMAPHORE REF: 0x0042402c
SEMAPHORE REF: 0x00424250
SEMAPHORE QUANTITY: 6
COOP: 0x00400040 OPTIONS: 0x00, STATE: 0x00
COOP: 0x00400200 OPTIONS: 0x00, STATE: 0x02
COOP: 0x004001a8 OPTIONS: 0x00, STATE: 0x02
COOP: 0x00400150 OPTIONS: 0x00, STATE: 0x00
COOP: 0x004000f8 OPTIONS: 0x00, STATE: 0x02
COOP: 0x004000a0 OPTIONS: 0x00, STATE: 0x00
PREMPT: 0x00401254 OPTIONS: 0x00, STATE: 0x02
COOP: 0x00401020 OPTIONS: 0x01, STATE: 0x00
COOP: 0x00401080 OPTIONS: 0x01, STATE: 0x00
THREAD QUANTITY: 9
PASS - test_tracing.
===================================================================
===================================================================
PROJECT EXECUTION SUCCESSFUL