mutter/tests
Owen W. Taylor 6705ce6c6a Move elapsed-time calculations into ClutterTimeline
Instead of calculating a delta in the master clock, and passing that
into each timeline, make each timeline individually responsible for
remembering the last time and computing the delta.

This:

 - Fixes a problem where we could spin infinitely processing
   timeline-only frames with < 1msec differences.
 - Makes timelines consistently start timing on the first frame;
   instead of doing different things for the first started timeline
   and other timelines.
 - Improves accuracy of elapsed time computations by avoiding
   accumulating microsecond => millisecond truncation errors.

http://bugzilla.openedhand.com/show_bug.cgi?id=1637

Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
2009-06-09 15:03:56 +01:00
..
conform Move elapsed-time calculations into ClutterTimeline 2009-06-09 15:03:56 +01:00
data Adds a CoglMaterial abstraction, which includes support for multi-texturing 2008-12-22 16:35:52 +00:00
interactive [stage] Rename fullscreen methods 2009-06-09 14:07:35 +01:00
micro-bench Limit the frame rate when not syncing to VBLANK 2009-06-09 15:03:56 +01:00
tools [tests/tools] Don't install libdisable-npots.so 2009-02-24 17:04:05 +00:00
.gitignore [gitignore] Ignore two newly introduced tests 2009-03-25 20:58:22 +00:00
Makefile.am 2008-11-17 Emmanuele Bassi <ebassi@linux.intel.com> 2008-11-18 09:50:03 +00:00
README Bug 1162 - Re-works the tests/ to use the glib-2.16 unit testing 2008-11-07 19:32:28 +00:00

Outline of test categories:

The conform/ tests should be non-interactive unit-tests that verify a single feature is behaving as documented. See conform/ADDING_NEW_TESTS for more details.

The micro-bench/ tests should be focused perfomance test, ideally testing a single metric. Please never forget that these tests are synthetec and if you are using them then you understand what metric is being tested. They probably don't reflect any real world application loads and the intention is that you use these tests once you have already determined the crux of your problem and need focused feedback that your changes are indeed improving matters. There is no exit status requirements for these tests, but they should give clear feedback as to their performance. If the framerate is the feedback metric, then the test should forcibly enable FPS debugging.

The interactive/ tests are any tests whos status can not be determined without a user looking at some visual output, or providing some manual input etc. This covers most of the original Clutter tests. Ideally some of these tests will be migrated into the conformance/ directory so they can be used in automated nightly tests.

Other notes:
All tests should ideally include a detailed description in the source explaining exactly what the test is for, how the test was designed to work, and possibly a rationale for the aproach taken for testing.