LUMIERA.clone/tests/gui
Ichthyostega 3b547ce3d0 DiffMessage: basically got the integration test to work
...still with lots of diagnostic messages,
and need to fine tune the balance between generator and consumer,
in order to produce more interesting patterns.
Also need to verfiy the results automatically

Problems while building the test fixture: several, most notably again
the dangers when combining lambdas and multithreading. The most glorious
mistake was to capture the notifyGUI function, which led to locking
a corrupted uiDispatcher queue, causing deadlock.

Problems in the actual test subject: seemingly none.
Message passing and diff application works like a charm!
2017-08-13 07:25:32 +02:00
..
ctrl CmdAccess: expand on the DSL draft 2017-04-14 03:22:08 +02:00
interact CmdAccess: rename the front-end to CmdContext to clarify the purpose 2017-04-17 20:00:07 +02:00
test DiffMessage: fix insidious initialisation bug (related to #963) 2017-08-12 18:16:06 +02:00
abstract-tangible-test.cpp DiffMessage: fix insidious initialisation bug (related to #963) 2017-08-12 18:16:06 +02:00
bus-term-test.cpp DiffMessage: basically got the integration test to work 2017-08-13 07:25:32 +02:00
README enable special unit-tests to link against the gui 2014-10-18 04:27:07 +02:00
session-structure-mapping-test.cpp mass clean-up: adapt usage of std::cout pretty much everywhere 2016-01-07 20:12:46 +01:00
tangible-update-test.cpp mass clean-up: adapt usage of std::cout pretty much everywhere 2016-01-07 20:12:46 +01:00
test-gui-test.cpp Doxygen: magically insert a reference to the test class 2017-02-22 03:17:18 +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.