mutter/clutter
Emmanuele Bassi 2a660fa298 Fully rework the conformance test suite
The current conformance test suite is suboptimal in many ways.

All tests are built into the same binary, which makes adding new tests,
builting tests, and running groups of tests much more awkward than it
needs to be. The first issue, especially, raises the bar of contribution
in a significant way, while the other two take their toll on the
maintainer. All of these changes were introduced back when we had both
Clutter and Cogl tests in tree, and because we were building the test
suite for every single change; since then, Cogl moved out of tree with
all its tests, and we build the conformance test suite only when running
the `check` make target.

This admittedly large-ish commit changes the way the conformance test
suite works, taking advantage of the changes in the GTest API and test
harness.

First of all, all tests are now built separately, using their own test
suite as defined by each separate file. All tests run under the TAP
harness provided by GTest and Automake, to gather a proper report using
the Test Anything Protocol without using the `gtester` harness and the
`gtester-report` script. We also use the Makefile rules provided by GLib
to vastly simplify the build environment for the conformance test suite.

On top of the changes for the build and harness, we also provide new API
for creating and running test suites for Clutter. The API is public,
because the test suite has to use it, but it's minimal and mostly
provides convenience wrappers around GTest that make writing test units
for Clutter easier.

This commit disables all tests in the conformance test suite, as well as
moving the data files outside of the tests/data directory; the next few
commits will re-establish the conformance test suite separately so we
can check that everything works in a reliable way.
2013-12-12 18:51:11 +00:00
..
cally cally: Use the new macros for adding private data 2013-07-03 14:02:09 +01:00
cex100 docs: fix some headers paths 2011-11-10 19:05:39 +01:00
cogl ClutterStageCogl: Ignore a clip the size of the stage 2013-12-05 08:38:16 -05:00
deprecated Deprecate ClutterTableLayout 2013-11-19 00:31:53 +00:00
egl EGL: Include cogl-egl.h for prototypes 2012-10-12 15:12:55 +01:00
evdev device-manager-evdev: Stop using deprecated libevdev API 2013-11-21 19:34:15 +01:00
gdk win32: Disable event retrieval in Cogl 2013-07-12 17:59:54 +01:00
osx stage: Remove tracking input devices, it's not used 2012-09-03 21:50:19 +01:00
tslib Deprecate clutter_threads_enter()/leave() 2012-07-11 13:22:19 +01:00
wayland wayland: Implement support for 'cursor-visible' stage property 2013-11-14 18:34:40 +00:00
win32 win32: Disable event retrieval in Cogl 2013-07-12 17:59:54 +01:00
x11 device-manager-xi2: Fix device instances leaking on removal 2013-11-21 19:34:14 +01:00
abicheck.sh abicheck: Add CLUTTER_WINDOWING_WAYLAND 2012-10-12 15:12:55 +01:00
clutter-action.c
clutter-action.h ClutterActor: Add clutter_actor_has_actions 2011-09-29 19:34:32 +02:00
clutter-actor-box.c docs: Fix syntax errors in annotations 2013-12-04 16:09:09 +00:00
clutter-actor-meta-private.h ClutterActor: Add clutter_actor_has_effects 2011-09-29 19:34:24 +02:00
clutter-actor-meta.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-actor-meta.h docs: Documentation fixes 2012-02-23 12:01:11 +00:00
clutter-actor-private.h actor: Add private getter for the active framebuffer 2013-12-04 16:07:17 +00:00
clutter-actor.c docs: Fix syntax errors in annotations 2013-12-04 16:09:09 +00:00
clutter-actor.h clutter-actor: Make clutter_actor_has_mapped_clones public 2013-07-17 12:43:38 +02:00
clutter-align-constraint.c constraints: Clamp updated allocation to the nearest pixel 2012-06-27 21:28:01 +01:00
clutter-align-constraint.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-animatable.c animatable: Disable deprecation warnings 2012-04-27 14:21:56 +01:00
clutter-animatable.h Deprecate ClutterAnimation, as well as clutter_actor_animate() 2012-04-27 12:30:48 +01:00
clutter-backend-private.h Add API to restrict the windowing backend to load 2013-09-11 09:54:35 +02:00
clutter-backend.c Documentation fixes 2013-09-19 22:58:43 +01:00
clutter-backend.h Add API to restrict the windowing backend to load 2013-09-11 09:54:35 +02:00
clutter-base-types.c Deprecate ClutterGeometry 2013-04-04 11:53:39 +01:00
clutter-bezier.c debug: Clean up debugging notes 2011-10-17 10:24:25 +01:00
clutter-bezier.h
clutter-bin-layout.c bin-layout: Fix offsets 2013-08-19 23:37:43 +01:00
clutter-bin-layout.h bin-layout: Deprecate BinLayout alignments 2012-04-27 12:30:49 +01:00
clutter-bind-constraint.c Bind constraints: Don't force redraws on source relayout 2013-11-26 11:12:12 -05:00
clutter-bind-constraint.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-binding-pool.c introspection: assorted annotation fixes ported from Vala 2012-06-12 17:44:16 -07:00
clutter-binding-pool.h docs: Document user_data argument for BindingActionFunc 2012-06-10 23:34:47 +01:00
clutter-blur-effect.c blur-effect: Fix the blur filter 2012-09-03 21:18:43 +01:00
clutter-blur-effect.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-box-layout.c box-layout: Fix floating point truncation when calculating a child's size 2013-09-09 19:32:57 -04:00
clutter-box-layout.h box-layout: Deprecate expand/fill/align child properties 2012-06-04 16:16:41 +02:00
clutter-brightness-contrast-effect.c brightness-contrast-effect: Don't actually run if it will have no effect 2012-09-03 05:02:48 -03:00
clutter-brightness-contrast-effect.h Add brightness/contrast effect 2012-03-07 14:02:55 +00:00
clutter-cairo.c Fixes for the API reference 2012-04-27 12:30:48 +01:00
clutter-cairo.h Deprecate ClutterCairoTexture 2012-04-27 12:28:49 +01:00
clutter-canvas.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-canvas.h canvas: Remove invalidate_with_size() 2013-05-15 20:08:02 +01:00
clutter-child-meta.c Remove private helper #define's 2011-03-03 11:47:49 +00:00
clutter-child-meta.h docs: Fixes for cross-references 2011-09-12 13:12:14 +01:00
clutter-click-action.c click-action: disconnect signals and gsources on dispose 2013-09-10 21:48:42 +01:00
clutter-click-action.h action: fix CLUTTER_GESTURE_ACTION_GET_CLASS() 2012-09-11 23:05:15 +02:00
clutter-clone.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-clone.h Avoid the shadowing of 'clone' 2011-10-19 15:23:55 +01:00
clutter-cogl-compat.h Reduce our internal dependence on the Cogl 1.x api 2012-02-21 17:46:11 +00:00
clutter-color-static.h static-colors: Simplify the defines 2011-09-05 17:22:14 +01:00
clutter-color.c Add missing "(constructor)" tag to clutter_color_alloc() 2013-01-16 22:20:39 +00:00
clutter-color.h color: Add initializers for ClutterColor 2012-04-27 12:30:47 +01:00
clutter-colorize-effect.c Pass a CoglContext when calling cogl_pipeline_new 2012-02-21 17:46:11 +00:00
clutter-colorize-effect.h clutter-color-size-effect: Fix a minor typo in the docs 2011-02-16 14:11:59 +00:00
clutter-config.h.in build: Generate an instealled config header 2011-01-19 14:33:27 +00:00
clutter-config.h.win32 clutter-config.h.win32: Add CLUTTER_INPUT_NULL 2011-11-14 13:33:04 +08:00
clutter-config.h.win32_GDK Visual C++ support: Add support to build GDK backend 2012-05-14 16:18:13 +08:00
clutter-constraint.c Move examples from tests/interactive to a new top-level 2012-05-01 19:00:35 +01:00
clutter-constraint.h ClutterActor: Add clutter_actor_has_contraints 2011-09-29 19:34:31 +02:00
clutter-container.c Use G_VALUE_INIT instead of { 0, } 2012-03-17 16:40:55 +00:00
clutter-container.h Deprecate the old raise/lower API 2012-01-16 23:37:13 +00:00
clutter-content-private.h content: Make get_preferred_size() public 2012-03-16 12:33:37 +00:00
clutter-content.c canvas: Add canvas size to the ::draw signal 2012-03-16 12:33:37 +00:00
clutter-content.h Annotate functionality added in 1.10 2012-03-16 17:30:26 +00:00
clutter-debug.h debug: Simple whitespace cleanups 2011-11-18 17:54:19 +00:00
clutter-deform-effect.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-deform-effect.h build: Re-arrange headers 2010-11-18 18:23:49 +00:00
clutter-deprecated.h Deprecate ClutterTableLayout 2013-11-19 00:31:53 +00:00
clutter-desaturate-effect.c Pass a CoglContext when calling cogl_pipeline_new 2012-02-21 17:46:11 +00:00
clutter-desaturate-effect.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-device-manager-private.h device-manager: Select for events on XIAllMasterDevices 2013-07-11 14:09:43 -04:00
clutter-device-manager.c device-manager: Don't emit device-removed with a finalized instance 2013-11-21 19:34:14 +01:00
clutter-device-manager.h device-manager: Select for events on XIAllMasterDevices 2013-07-11 14:09:43 -04:00
clutter-drag-action.c drag-action: don't mix touch and pointer events 2013-11-14 18:34:40 +00:00
clutter-drag-action.h ClutterDragAction: allow constraining the movement of the dragged actor 2012-08-16 18:21:07 +02:00
clutter-drop-action.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-drop-action.h docs: Document ClutterDropAction 2011-06-20 15:25:54 +01:00
clutter-easing.c timeline: Add cubic-bezier() progress functions 2012-07-19 22:13:24 -04:00
clutter-easing.h timeline: Add cubic-bezier() progress functions 2012-07-19 22:13:24 -04:00
clutter-effect-private.h effect: Rename RunFlags to PaintFlags 2011-06-13 16:00:45 +01:00
clutter-effect.c Fixes for the API reference 2012-04-27 12:30:48 +01:00
clutter-effect.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-enum-types.c.in
clutter-enum-types.h.in
clutter-enums.h gesture: Make threshold-trigger-edge public 2013-12-05 15:20:39 +00:00
clutter-event-private.h Add API to install an event filter 2013-11-14 14:32:17 -05:00
clutter-event-translator.c event/x11: Rework the way we translate X11 events 2011-01-21 10:25:43 +00:00
clutter-event-translator.h event/x11: Rework the way we translate X11 events 2011-01-21 10:25:43 +00:00
clutter-event.c Add API to install an event filter 2013-11-14 14:32:17 -05:00
clutter-event.h Add API to install an event filter 2013-11-14 14:32:17 -05:00
clutter-feature.c Fix missing/redundant declarations 2012-03-07 12:36:43 +00:00
clutter-feature.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-fixed-layout.c fixed-layout: Remove the NO_LAYOUT flag set 2012-01-27 15:45:11 +00:00
clutter-fixed-layout.h
clutter-flatten-effect.c clutter-actor: Add a 'has_overlaps' virtual 2011-05-13 01:46:32 +01:00
clutter-flatten-effect.h clutter-actor: Add a 'has_overlaps' virtual 2011-05-13 01:46:32 +01:00
clutter-flow-layout.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-flow-layout.h flow-layout: Add :snap-to-grid property 2013-05-11 10:54:38 -04:00
clutter-gesture-action-private.h gesture: Make threshold-trigger-edge public 2013-12-05 15:20:39 +00:00
clutter-gesture-action.c gesture: Make threshold-trigger-edge public 2013-12-05 15:20:39 +00:00
clutter-gesture-action.h gesture: Make threshold-trigger-edge public 2013-12-05 15:20:39 +00:00
clutter-grid-layout.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-grid-layout.h Add ClutterGridLayout 2012-06-05 12:28:25 +02:00
clutter-group.h Deprecate ClutterGroup 2012-01-16 23:35:16 +00:00
clutter-id-pool.c clutter-id-pool: fix warning on bad pick 2011-05-26 08:48:13 -04:00
clutter-id-pool.h Privatize all ClutterIdPool functions 2011-02-18 15:53:27 +00:00
clutter-image.c image: Do not premultiply the blend color 2013-10-10 13:40:42 +01:00
clutter-image.h image: Add a data setter using GBytes 2012-06-04 10:34:22 +01:00
clutter-input-device.c input-device: Guard against double free 2013-11-29 15:56:48 +00:00
clutter-input-device.h ClutterInputDevice: add new API for querying the modifier state 2013-09-09 13:18:19 +02:00
clutter-interval.c interval: Call g_object_set_property in set_custom_property() 2013-11-14 18:34:40 +00:00
clutter-interval.h interval: Add is_valid() method 2012-06-08 17:32:51 +01:00
clutter-keyframe-transition.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-keyframe-transition.h keyframe-transition: Add direct accessors for key frames 2012-04-27 12:30:48 +01:00
clutter-keysyms-table.c Fix missing/redundant declarations 2012-03-07 12:36:43 +00:00
clutter-keysyms-update.pl keysyms-update: Add deprecation guards to the deprecated header 2012-06-11 13:46:38 +01:00
clutter-keysyms.h Update keysyms headers 2012-06-11 13:47:29 +01:00
clutter-layout-manager.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-layout-manager.h Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-layout-meta.c
clutter-layout-meta.h docs: Annotation fixes 2012-04-30 17:17:41 +01:00
clutter-list-model.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-list-model.h
clutter-macros.h Add 1.18 version macros 2013-10-10 13:50:10 +01:00
clutter-main.c Add API to install an event filter 2013-11-14 14:32:17 -05:00
clutter-main.h Add method clutter_disable_accessibility () 2013-03-13 18:56:58 +01:00
clutter-marshal.list swipe-action: Introduce new ::swipe signal 2012-12-18 01:27:32 +00:00
clutter-master-clock.c Add clutter_stage_set_sync_delay() 2013-02-13 09:27:17 -05:00
clutter-master-clock.h timeline: Add an internal function for advancing a timeline 2012-04-27 12:30:48 +01:00
clutter-model-private.h Mark internal symbol as private 2012-02-09 18:40:03 +00:00
clutter-model.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-model.h Eliminate G_CONST_RETURN 2011-06-07 16:06:24 +01:00
clutter-offscreen-effect-private.h offscreen-effect: Add public accessor for target size 2011-02-28 14:34:36 +00:00
clutter-offscreen-effect.c Revert "clutter-offscreen-effect: Allocate the cogl texture directly" 2013-09-02 17:06:49 +01:00
clutter-offscreen-effect.h offscreen-effect: Add a method to get the target area 2013-03-04 12:24:23 +00:00
clutter-page-turn-effect.c Remove private helper #define's 2011-03-03 11:47:49 +00:00
clutter-page-turn-effect.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-paint-node-private.h paint-node: Get the framebuffer from the root node 2013-12-04 16:07:17 +00:00
clutter-paint-node.c paint-node: Get the framebuffer from the root node 2013-12-04 16:07:17 +00:00
clutter-paint-node.h Don't do anything special with COGL_ENABLE_EXPERIMENTAL_2_0_API 2013-02-20 23:06:28 +00:00
clutter-paint-nodes.c paint-node: Get the framebuffer from the root node 2013-12-04 16:07:17 +00:00
clutter-paint-nodes.h Don't do anything special with COGL_ENABLE_EXPERIMENTAL_2_0_API 2013-02-20 23:06:28 +00:00
clutter-paint-volume-private.h Optimize culling by doing culling in eye-coordinates 2011-03-07 13:26:20 +00:00
clutter-paint-volume.c actor: Deprecate Geometry-related API 2012-08-10 15:05:43 +01:00
clutter-pan-action.c Explicitly set the trigger edge in GestureAction subclasses 2013-12-05 15:20:39 +00:00
clutter-pan-action.h pan-action: Add a simple convenience function to retrieve delta/coords 2012-11-30 17:19:14 -05:00
clutter-path-constraint.c Don't annotate with (transfer full) constructors of GInitiallyUnowned subclasses 2012-10-24 13:17:57 +02:00
clutter-path-constraint.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-path.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-path.h Move PathNode definitions into clutter-types.h 2012-06-23 08:23:11 +01:00
clutter-private.h Add API to install an event filter 2013-11-14 14:32:17 -05:00
clutter-profile.c debug: Clean up profile/debug symbols 2011-11-18 17:44:42 +00:00
clutter-profile.h Fix fallback profile counter macro 2012-03-22 12:00:55 +00:00
clutter-property-transition.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-property-transition.h property-transition: Remove animatable from the ctor 2012-03-20 11:59:32 +00:00
clutter-rotate-action.c Explicitly set the trigger edge in GestureAction subclasses 2013-12-05 15:20:39 +00:00
clutter-rotate-action.h action: fix CLUTTER_GESTURE_ACTION_GET_CLASS() 2012-09-11 23:05:15 +02:00
clutter-script-parser.c Fix compilers warnings when debugging is disabled 2013-04-04 11:53:38 +01:00
clutter-script-private.h script: Support ClutterPoint and ClutterSize 2012-04-27 12:30:46 +01:00
clutter-script.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-script.h Deprecate State and Animator 2012-04-27 12:30:48 +01:00
clutter-scriptable.c Eliminate G_CONST_RETURN 2011-06-07 16:06:24 +01:00
clutter-scriptable.h Eliminate G_CONST_RETURN 2011-06-07 16:06:24 +01:00
clutter-scroll-actor.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-scroll-actor.h Add ClutterScrollActor 2012-04-27 12:30:50 +01:00
clutter-settings-private.h Add more sections to the Clutter configuration file 2011-10-11 17:52:17 +01:00
clutter-settings.c settings: Don't reload config for fontconfig if there's no fontmap 2013-02-13 17:00:23 +00:00
clutter-settings.h Appease the gods in introspection 2011-01-20 16:35:26 +00:00
clutter-shader-effect.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-shader-effect.h clutter-shader-effect: Add a get_static_shader_source virtual 2011-09-30 11:51:37 +01:00
clutter-shader-types.c introspection: assorted annotation fixes ported from Vala 2012-06-12 17:44:16 -07:00
clutter-shader-types.h Eliminate G_CONST_RETURN 2011-06-07 16:06:24 +01:00
clutter-snap-constraint.c Bind constraints: Don't force redraws on source relayout 2013-11-26 11:12:12 -05:00
clutter-snap-constraint.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-stage-manager-private.h Add copyright notices 2010-10-21 13:13:00 +01:00
clutter-stage-manager.c Fix missing/redundant declarations 2012-03-07 12:36:43 +00:00
clutter-stage-manager.h Add deprecated header for ClutterStageManager 2012-02-27 15:21:32 +00:00
clutter-stage-private.h stage: Adjust drawing to include the window scaling factor 2013-09-19 22:51:52 +01:00
clutter-stage-window.c stage-window: Add scaling factor accessors 2013-09-19 22:51:52 +01:00
clutter-stage-window.h stage-window: Add scaling factor accessors 2013-09-19 22:51:52 +01:00
clutter-stage.c ClutterStage: Don't add empty actors to the stage clip 2013-12-04 21:53:52 -05:00
clutter-stage.h stage: Add a paint callback 2013-05-06 10:04:21 -07:00
clutter-swipe-action.c Explicitly set the trigger edge in GestureAction subclasses 2013-12-05 15:20:39 +00:00
clutter-swipe-action.h swipe-action: Introduce new ::swipe signal 2012-12-18 01:27:32 +00:00
clutter-tap-action.c gesture: Clean up trigger edge accessors 2013-12-05 15:20:39 +00:00
clutter-tap-action.h tap-action: Add TapAction, to handle mouse/touch tapping 2012-10-19 13:41:31 +02:00
clutter-test-utils.c Fully rework the conformance test suite 2013-12-12 18:51:11 +00:00
clutter-test-utils.h Fully rework the conformance test suite 2013-12-12 18:51:11 +00:00
clutter-text-buffer.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-text-buffer.h Annotate all functions available since 1.10 2012-02-27 16:35:09 +00:00
clutter-text.c text: Add a hacky fallback for the framebuffer 2013-12-04 16:07:17 +00:00
clutter-text.h text: Add ::cursor-changed signal 2013-04-04 11:53:39 +01:00
clutter-texture.h Deprecate ClutterTexture's API 2012-07-11 13:22:21 +01:00
clutter-timeline.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-timeline.h timeline: Add progress-based marker API 2013-02-20 23:06:28 +00:00
clutter-transition-group.c Use the new macros for adding private data 2013-07-03 18:04:32 +01:00
clutter-transition-group.h Add ClutterTransitionGroup 2012-04-27 12:30:48 +01:00
clutter-transition.c docs: Use the correct signal name 2013-08-19 23:22:38 +01:00
clutter-transition.h transition: Add interval convenience API 2012-04-27 12:30:47 +01:00
clutter-types.h Deprecate ClutterGeometry 2013-04-04 11:53:39 +01:00
clutter-units.c Revert "units: Handle negative values in clutter_units_from_string()" 2013-05-22 14:34:22 +01:00
clutter-units.h Move all enumerations to a separate file 2011-10-11 17:59:46 +01:00
clutter-util.c Add interpolation for matrices 2012-09-03 20:54:43 +01:00
clutter-version.h.in Add 1.18 version macros 2013-10-10 13:50:10 +01:00
clutter-zoom-action.c Explicitly set the trigger edge in GestureAction subclasses 2013-12-05 15:20:39 +00:00
clutter-zoom-action.h Add zoom action 2012-08-20 18:28:22 +01:00
clutter.h Fully rework the conformance test suite 2013-12-12 18:51:11 +00:00
clutter.pc.in build: Add infrastructure for inserting Requires.private into pkg-config files 2012-01-11 12:23:46 +00:00
clutter.symbols Fully rework the conformance test suite 2013-12-12 18:51:11 +00:00
config.h.win32.in Remove use of XFixes for showing/hiding the cursor 2013-11-14 18:34:40 +00:00
Makefile.am Fully rework the conformance test suite 2013-12-12 18:51:11 +00:00