Selftest memory documentation

The selftest module is special in that most of the code is generated. Selftest does generally not take any responibility for the memory usage in the actual tests.

Used OOM policies

OOM situations are not reported to the calling code. These are instead reported to the selftest output. In some cases this will also lead to the test run beeing aborted.

Who is handling OOM?

All OOM situations are handled internally by the module.

Heap memory usage

Heap memory is mostly used for handling strings and ecmascripts. Almost all of the memory is released between each test so the overall heap usage is fairly small.

Stack memory usage

The module does not use much stack in general. There are a few recursive functions in the module used to compare test patterns. In normal usecases the stack usage should be insignificant.

Footprint

The module is small in it self. The footprint can however be very large if a lot of tests are built in. In a current build with all test the footprint is ~3.5MB.

Freeing memory on exit

All allocated memory is freed when a test run is done/stopped or when the module is destroyed.

Memory tuning

Memory usage can currently not be tuned.

Tests

There are no tests for memory usage.