LUMIERA.clone/tests/stage
Ichthyostega 289f92da7e Timeline: safely calculate sum/difference of large fractional times
...in a similar vein as done for the product calculation.
In this case, we need to check the dimensions carefully and pick
the best calculation path, but as long as the overall result can
be represented, it should be possible to carry out the calculation
with fractional values, albeit introducing a small error.

As a follow-up, I have now also refactored the re-quantisation
functions, to be usable for general requantisation to another grid,
and I used these to replace the *naive* implementation of the
conversion FSecs -> µ-Grid, which caused a lot of integer-wrap-around

However, while the test now works basically without glitch or wrap,
the window position is still numerically of by 1e-6, which becomes
quite noticeably here due to the large overall span used for the test.
2022-12-01 23:23:50 +01:00
..
ctrl Global-Layer-Renaming: fix remaining textual usages and IDs in the code 2018-12-10 00:09:56 +01:00
interact Clip-Drag: get the gesture logic to work 2021-04-17 22:32:26 +02:00
model Timeline: safely calculate sum/difference of large fractional times 2022-12-01 23:23:50 +01:00
test Lib/Diff: prefer the name "emplace" over "build" 2021-05-02 18:31:47 +02:00
abstract-tangible-test.cpp Project: update and clean-up Doxygen configuration 2021-01-24 19:35:45 +01:00
bus-term-test.cpp Global-Layer-Renaming: fix remaining textual usages and IDs in the code 2018-12-10 00:09:56 +01:00
gen-node-location-query.hpp Global-Layer-Renaming: adjust namespace qualification 2018-11-15 23:59:23 +01:00
README Global-Layer-Renaming: rearrange directories 2018-11-15 23:28:03 +01:00
session-structure-mapping-test.cpp Timeline: reconsider time handling and Stage/Steam integration 2022-10-30 23:12:34 +01:00
test-gui-test.cpp Timeline: reconsider time handling and Stage/Steam integration 2022-10-30 23:12:34 +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.