LUMIERA.clone/tests/stage
Ichthyostega 2cd51fa714 Scheduler-test: fix out-of-bound access
...causing the system to freeze due to excess memory allocation.

Fortunately it turned out this was not an error in the Scheduler core
or memory manager, but rather a sloppiness in the test scaffolding.
However, this incident highlights that the memory manager lacks some
sanity checks to prevent outright nonsensical allocation requests.

Moreover it became clear again that the allocation happens ''already before''
entering the Scheduler — and thus the existing sanity check comes too late.
Now I've used the same reasoning also for additional checks in the allocator,
limiting the Epoch increment to 3000 and the total memory allocation to 8GiB

Talking of Gibitbytes...
indeed we could use a shorthand notation for that purpose...
2023-12-21 20:25:43 +01:00
..
ctrl Global-Layer-Renaming: fix remaining textual usages and IDs in the code 2018-12-10 00:09:56 +01:00
interact the new design takes the old name 2023-06-22 20:23:55 +02:00
model the new design takes the old name 2023-06-22 20:23:55 +02:00
test Scheduler-test: fix out-of-bound access 2023-12-21 20:25:43 +01:00
abstract-tangible-test.cpp Project: update and clean-up Doxygen configuration 2021-01-24 19:35:45 +01:00
bus-term-test.cpp Library/Application: consolidate Monitor API and usage 2023-10-15 20:42:55 +02:00
gen-node-location-query.hpp the new design takes the old name 2023-06-22 20:23:55 +02:00
README Global-Layer-Renaming: rearrange directories 2018-11-15 23:28:03 +01:00

GUI backbone tests

The tests in this subtree are a bit special: they cover the generic and
backbone internals of the Lumiera GTK GUI. They are linked against the
complete GUI-module (gui plugin), and thus may use all related ABIs.

Yet these tests are *deliberately* compiled without any GTK, GTKmm or SigC
includes. This effectively rules out the use, even indirectly, of any GTK
widgets and APIs -- forcing the covered GUI backbone entities to stay
clean and generic at API level.

This is a decision done on purpose. The concrete GUI framework technology
shall be treated as an implementation detail. There is no point in writing
tests which click buttons in the GUI -- better delegate any significant
logic or functionality to GUI agnostic components. GUI is meant to be
a presentation layer and must not develop intelligence on its own.