Bug 1162 - Re-works the tests/ to use the glib-2.16 unit testing
authorRobert Bragg <bob@openedhand.com>
Fri, 7 Nov 2008 19:32:28 +0000 (19:32 +0000)
committerRobert Bragg <bob@openedhand.com>
Fri, 7 Nov 2008 19:32:28 +0000 (19:32 +0000)
commit603f9367459a4ca8ca7f5d5ebb937fe96dba5df6
treeab2489248497a63f89509c8d0dd2501c0bc42795
parent7c6ae80bfe0c410d91a404926756c4983c4fd15b
Bug 1162 - Re-works the tests/ to use the glib-2.16 unit testing
framework

* configure.ac:
* tests/*:
The tests have been reorganised into different categories: conformance,
interactive and micro benchmarks.
- conformance tests can be run as part of automated tests
- interactive tests are basically all the existing tests
- micro benchmarks focus on a single performance metric

I converted the timeline tests to conformance tests and also added some
tests from Neil Roberts and Ebassi.

Note: currently only the conformance tests use the glib test APIs,
though the micro benchmarks should too.

The other change is to make the unit tests link into monolithic binaries
which makes the build time for unit tests considerably faster. To deal
with the extra complexity this adds to debugging individual tests I
have added some sugar to the makefiles so all the tests can be run
directly via a symlink and when an individual test is run this way,
then a note is printed to the terminal explaining exactly how that test
may be debugged using GDB.

There is a convenience make rule: 'make test-report', that will run all
the conformance tests and hopefully even open the results in your web
browser. It skips some of the slower timeline tests, but you can run
those using 'make full-report'
74 files changed:
ChangeLog
Makefile.am
configure.ac
tests/Makefile.am
tests/README [new file with mode: 0644]
tests/conform/ADDING_NEW_TESTS [new file with mode: 0644]
tests/conform/Makefile.am [new file with mode: 0644]
tests/conform/test-clutter-entry.c [new file with mode: 0644]
tests/conform/test-clutter-fixed.c [new file with mode: 0644]
tests/conform/test-clutter-rectangle.c [new file with mode: 0644]
tests/conform/test-conform-common.c [new file with mode: 0644]
tests/conform/test-conform-common.h [new file with mode: 0644]
tests/conform/test-conform-main.c [new file with mode: 0644]
tests/conform/test-label-cache.c [moved from tests/test-label-cache.c with 97% similarity]
tests/conform/test-pick.c [new file with mode: 0644]
tests/conform/test-timeline-dup-frames.c [moved from tests/test-timeline-dup-frames.c with 55% similarity]
tests/conform/test-timeline-interpolate.c [moved from tests/test-timeline-interpolate.c with 62% similarity]
tests/conform/test-timeline-rewind.c [moved from tests/test-timeline-rewind.c with 64% similarity]
tests/conform/test-timeline-smoothness.c [moved from tests/test-timeline-smoothness.c with 53% similarity]
tests/conform/test-timeline.c [new file with mode: 0644]
tests/conform/wrapper.sh [new file with mode: 0755]
tests/data/Makefile.am [new file with mode: 0644]
tests/data/redhand.png [moved from tests/redhand.png with 100% similarity]
tests/data/test-script.json [moved from tests/test-script.json with 100% similarity]
tests/interactive/Makefile.am [new file with mode: 0644]
tests/interactive/test-actors.c [moved from tests/test-actors.c with 98% similarity]
tests/interactive/test-behave.c [moved from tests/test-behave.c with 98% similarity]
tests/interactive/test-clip.c [moved from tests/test-clip.c with 97% similarity]
tests/interactive/test-cogl-offscreen.c [moved from tests/test-cogl-offscreen.c with 96% similarity]
tests/interactive/test-cogl-primitives.c [moved from tests/test-cogl-primitives.c with 97% similarity]
tests/interactive/test-cogl-tex-convert.c [moved from tests/test-cogl-tex-convert.c with 96% similarity]
tests/interactive/test-cogl-tex-foreign.c [moved from tests/test-cogl-tex-foreign.c with 96% similarity]
tests/interactive/test-cogl-tex-getset.c [moved from tests/test-cogl-tex-getset.c with 97% similarity]
tests/interactive/test-cogl-tex-polygon.c [moved from tests/test-cogl-tex-polygon.c with 98% similarity]
tests/interactive/test-cogl-tex-tile.c [moved from tests/test-cogl-tex-tile.c with 97% similarity]
tests/interactive/test-depth.c [moved from tests/test-depth.c with 98% similarity]
tests/interactive/test-devices.c [moved from tests/test-devices.c with 96% similarity]
tests/interactive/test-effects.c [moved from tests/test-effects.c with 97% similarity]
tests/interactive/test-entry-auto.c [moved from tests/test-entry-auto.c with 98% similarity]
tests/interactive/test-entry.c [moved from tests/test-entry.c with 94% similarity]
tests/interactive/test-events.c [moved from tests/test-events.c with 99% similarity]
tests/interactive/test-fbo.c [moved from tests/test-fbo.c with 98% similarity]
tests/interactive/test-fullscreen.c [moved from tests/test-fullscreen.c with 96% similarity]
tests/interactive/test-grab.c [moved from tests/test-grab.c with 98% similarity]
tests/interactive/test-invariants.c [moved from tests/test-invariants.c with 97% similarity]
tests/interactive/test-layout.c [moved from tests/test-layout.c with 99% similarity]
tests/interactive/test-main.c [new file with mode: 0644]
tests/interactive/test-model.c [moved from tests/test-model.c with 98% similarity]
tests/interactive/test-multistage.c [moved from tests/test-multistage.c with 97% similarity]
tests/interactive/test-offscreen.c [moved from tests/test-offscreen.c with 88% similarity]
tests/interactive/test-opacity.c [moved from tests/test-opacity.c with 97% similarity]
tests/interactive/test-paint-wrapper.c [moved from tests/test-paint-wrapper.c with 98% similarity]
tests/interactive/test-perspective.c [moved from tests/test-perspective.c with 94% similarity]
tests/interactive/test-pixmap.c [moved from tests/test-pixmap.c with 98% similarity]
tests/interactive/test-project.c [moved from tests/test-project.c with 98% similarity]
tests/interactive/test-random-text.c [moved from tests/test-random-text.c with 95% similarity]
tests/interactive/test-rotate.c [moved from tests/test-rotate.c with 96% similarity]
tests/interactive/test-scale.c [moved from tests/test-scale.c with 96% similarity]
tests/interactive/test-score.c [moved from tests/test-score.c with 97% similarity]
tests/interactive/test-script.c [moved from tests/test-script.c with 98% similarity]
tests/interactive/test-shader.c [moved from tests/test-shader.c with 99% similarity]
tests/interactive/test-stage-read-pixels.c [moved from tests/test-stage-read-pixels.c with 97% similarity]
tests/interactive/test-texture-quality.c [moved from tests/test-texture-quality.c with 97% similarity]
tests/interactive/test-textures.c [moved from tests/test-textures.c with 96% similarity]
tests/interactive/test-threads.c [moved from tests/test-threads.c with 98% similarity]
tests/interactive/test-unproject.c [moved from tests/test-unproject.c with 97% similarity]
tests/interactive/test-viewport.c [moved from tests/test-viewport.c with 95% similarity]
tests/interactive/wrapper.sh [new file with mode: 0755]
tests/micro-bench/Makefile.am [new file with mode: 0644]
tests/micro-bench/test-text.c [moved from tests/test-text.c with 100% similarity]
tests/test-pick.c [deleted file]
tests/test-timeline.c [deleted file]
tests/tools/Makefile.am [new file with mode: 0644]
tests/tools/README [new file with mode: 0644]