diff options
-rw-r--r-- | tests/conform/Makefile.am | 33 | ||||
-rw-r--r-- | tests/conform/animator.c | 51 | ||||
-rw-r--r-- | tests/conform/behaviours.c | 64 | ||||
-rw-r--r-- | tests/conform/binding-pool.c | 92 | ||||
-rw-r--r-- | tests/conform/color.c | 158 | ||||
-rw-r--r-- | tests/conform/events-touch.c | 13 | ||||
-rw-r--r-- | tests/conform/group.c | 11 | ||||
-rw-r--r-- | tests/conform/interval.c | 63 | ||||
-rw-r--r-- | tests/conform/model.c | 43 | ||||
-rw-r--r-- | tests/conform/rectangle.c | 23 | ||||
-rw-r--r-- | tests/conform/script-parser.c | 142 | ||||
-rw-r--r-- | tests/conform/text.c | 69 | ||||
-rw-r--r-- | tests/conform/texture.c | 21 | ||||
-rw-r--r-- | tests/conform/units.c | 24 |
14 files changed, 420 insertions, 387 deletions
diff --git a/tests/conform/Makefile.am b/tests/conform/Makefile.am index 996dfd80d..50237e683 100644 --- a/tests/conform/Makefile.am +++ b/tests/conform/Makefile.am @@ -12,6 +12,7 @@ AM_CPPFLAGS = \ $(CLUTTER_DEBUG_CFLAGS) \ $(CLUTTER_PROFILE_CFLAGS) +# Basic actor API actor_tests = \ actor-anchors \ actor-destroy \ @@ -28,10 +29,29 @@ actor_tests = \ actor-size \ $(NULL) +# Actor classes +classes_tests = \ + text \ + $(NULL) + +# General API general_tests = \ + binding-pool \ + color \ + events-touch \ + interval \ + model \ + script-parser \ + units \ $(NULL) +# Test for deprecated functionality deprecated_tests = \ + animator \ + behaviours \ + group \ + rectangle \ + texture \ $(NULL) test_programs = $(actor_tests) $(general_tests) $(deprecated_tests) @@ -54,3 +74,16 @@ script_tests = \ test-script-single.json \ test-script-timeline-markers.json \ test-state-1.json + +# simple rules for generating a Git ignore file for the conformance test suite +$(srcdir)/.gitignore: Makefile + $(AM_V_GEN)( echo "/*.trs" ; \ + echo "/*.log" ; \ + echo "/.gitignore" ; \ + for p in $(test_programs); do \ + echo "/$$p" ; \ + done ) > $(@F) + +gitignore: $(srcdir)/.gitignore + +all-am: gitignore diff --git a/tests/conform/animator.c b/tests/conform/animator.c index fb07e4019..971169903 100644 --- a/tests/conform/animator.c +++ b/tests/conform/animator.c @@ -1,10 +1,8 @@ +#define CLUTTER_DISABLE_DEPRECATION_WARNINGS #include <clutter/clutter.h> -#include "test-conform-common.h" - -void -animator_multi_properties (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +animator_multi_properties (void) { ClutterScript *script = clutter_script_new (); GObject *animator = NULL, *foo = NULL; @@ -14,16 +12,15 @@ animator_multi_properties (TestConformSimpleFixture *fixture, ClutterAnimatorKey *key; GValue value = { 0, }; - test_file = clutter_test_get_data_file ("test-animator-3.json"); + test_file = g_test_build_filename (G_TEST_DIST, + "scripts", + "test-animator-3.json", + NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); -#if GLIB_CHECK_VERSION (2, 20, 0) g_assert_no_error (error); -#else - g_assert (error == NULL); -#endif foo = clutter_script_get_object (script, "foo"); g_assert (G_IS_OBJECT (foo)); @@ -105,9 +102,8 @@ animator_multi_properties (TestConformSimpleFixture *fixture, g_free (test_file); } -void -animator_properties (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +animator_properties (void) { ClutterScript *script = clutter_script_new (); GObject *animator = NULL; @@ -117,16 +113,15 @@ animator_properties (TestConformSimpleFixture *fixture, ClutterAnimatorKey *key; GValue value = { 0, }; - test_file = clutter_test_get_data_file ("test-animator-2.json"); + test_file = g_test_build_filename (G_TEST_DIST, + "scripts", + "test-animator-2.json", + NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); -#if GLIB_CHECK_VERSION (2, 20, 0) g_assert_no_error (error); -#else - g_assert (error == NULL); -#endif animator = clutter_script_get_object (script, "animator"); g_assert (CLUTTER_IS_ANIMATOR (animator)); @@ -168,9 +163,8 @@ animator_properties (TestConformSimpleFixture *fixture, g_free (test_file); } -void -animator_base (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +animator_base (void) { ClutterScript *script = clutter_script_new (); GObject *animator = NULL; @@ -178,16 +172,15 @@ animator_base (TestConformSimpleFixture *fixture, guint duration = 0; gchar *test_file; - test_file = clutter_test_get_data_file ("test-animator-1.json"); + test_file = g_test_build_filename (G_TEST_DIST, + "scripts", + "test-animator-1.json", + NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); -#if GLIB_CHECK_VERSION (2, 20, 0) g_assert_no_error (error); -#else - g_assert (error == NULL); -#endif animator = clutter_script_get_object (script, "animator"); g_assert (CLUTTER_IS_ANIMATOR (animator)); @@ -198,3 +191,9 @@ animator_base (TestConformSimpleFixture *fixture, g_object_unref (script); g_free (test_file); } + +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/script/animator/base", animator_base) + CLUTTER_TEST_UNIT ("/script/animator/properties", animator_properties) + CLUTTER_TEST_UNIT ("/script/animator/multi-properties", animator_multi_properties) +) diff --git a/tests/conform/behaviours.c b/tests/conform/behaviours.c index d4e6e8043..6c531beff 100644 --- a/tests/conform/behaviours.c +++ b/tests/conform/behaviours.c @@ -1,28 +1,21 @@ -#include <glib.h> +#define CLUTTER_DISABLE_DEPRECATION_WARNINGS #include <clutter/clutter.h> -#include "test-conform-common.h" - -typedef struct _BehaviourFixture BehaviourFixture; - -typedef void (* BehaviourTestFunc) (BehaviourFixture *fixture); - -struct _BehaviourFixture -{ - ClutterTimeline *timeline; - ClutterAlpha *alpha; - ClutterActor *rect; -}; - static void -opacity_behaviour (BehaviourFixture *fixture) +behaviour_opacity (void) { ClutterBehaviour *behaviour; + ClutterTimeline *timeline; + ClutterAlpha *alpha; guint8 start, end; guint starti; - behaviour = clutter_behaviour_opacity_new (fixture->alpha, 0, 255); + timeline = clutter_timeline_new (500); + alpha = clutter_alpha_new_full (timeline, CLUTTER_LINEAR); + behaviour = clutter_behaviour_opacity_new (alpha, 0, 255); g_assert (CLUTTER_IS_BEHAVIOUR_OPACITY (behaviour)); + g_object_add_weak_pointer (G_OBJECT (behaviour), (gpointer *) &behaviour); + g_object_add_weak_pointer (G_OBJECT (timeline), (gpointer *) &timeline); clutter_behaviour_opacity_get_bounds (CLUTTER_BEHAVIOUR_OPACITY (behaviour), &start, @@ -51,40 +44,37 @@ opacity_behaviour (BehaviourFixture *fixture) g_assert_cmpint (starti, ==, 255); g_object_unref (behaviour); + g_object_unref (timeline); + + g_assert_null (behaviour); + g_assert_null (timeline); } -static const struct +static struct { - const gchar *desc; - BehaviourTestFunc func; + const gchar *path; + GTestFunc func; } behaviour_tests[] = { - { "BehaviourOpacity", opacity_behaviour } + { "opacity", behaviour_opacity }, }; -static const gint n_behaviour_tests = G_N_ELEMENTS (behaviour_tests); +static const int n_behaviour_tests = G_N_ELEMENTS (behaviour_tests); -void -behaviours_base (TestConformSimpleFixture *fixture, - gconstpointer dummy) +int +main (int argc, char *argv[]) { - BehaviourFixture b_fixture; - gint i; - - b_fixture.timeline = clutter_timeline_new (1000); - b_fixture.alpha = clutter_alpha_new_full (b_fixture.timeline, CLUTTER_LINEAR); - b_fixture.rect = clutter_rectangle_new (); + int i; - g_object_ref_sink (b_fixture.alpha); - g_object_unref (b_fixture.timeline); + clutter_test_init (&argc, &argv); for (i = 0; i < n_behaviour_tests; i++) { - if (g_test_verbose ()) - g_print ("Testing: %s\n", behaviour_tests[i].desc); + char *path = g_strconcat ("/behaviours/", behaviour_tests[i].path, NULL); + + clutter_test_add (path, behaviour_tests[i].func); - behaviour_tests[i].func (&b_fixture); + g_free (path); } - g_object_unref (b_fixture.alpha); - clutter_actor_destroy (b_fixture.rect); + return clutter_test_run (); } diff --git a/tests/conform/binding-pool.c b/tests/conform/binding-pool.c index 20ec634b9..4e4752b6b 100644 --- a/tests/conform/binding-pool.c +++ b/tests/conform/binding-pool.c @@ -1,11 +1,6 @@ #include <string.h> -#include <glib.h> - #include <clutter/clutter.h> -#include <clutter/clutter-keysyms.h> - -#include "test-conform-common.h" #define TYPE_KEY_GROUP (key_group_get_type ()) #define KEY_GROUP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_KEY_GROUP, KeyGroup)) @@ -18,20 +13,22 @@ typedef struct _KeyGroupClass KeyGroupClass; struct _KeyGroup { - ClutterGroup parent_instance; + ClutterActor parent_instance; gint selected_index; }; struct _KeyGroupClass { - ClutterGroupClass parent_class; + ClutterActorClass parent_class; void (* activate) (KeyGroup *group, ClutterActor *child); }; -G_DEFINE_TYPE (KeyGroup, key_group, CLUTTER_TYPE_GROUP); +GType key_group_get_type (void); + +G_DEFINE_TYPE (KeyGroup, key_group, CLUTTER_TYPE_ACTOR) enum { @@ -53,7 +50,7 @@ key_group_action_move_left (KeyGroup *self, g_assert_cmpstr (action_name, ==, "move-left"); g_assert_cmpint (key_val, ==, CLUTTER_KEY_Left); - n_children = clutter_group_get_n_children (CLUTTER_GROUP (self)); + n_children = clutter_actor_get_n_children (CLUTTER_ACTOR (self)); self->selected_index -= 1; @@ -74,7 +71,7 @@ key_group_action_move_right (KeyGroup *self, g_assert_cmpstr (action_name, ==, "move-right"); g_assert_cmpint (key_val, ==, CLUTTER_KEY_Right); - n_children = clutter_group_get_n_children (CLUTTER_GROUP (self)); + n_children = clutter_actor_get_n_children (CLUTTER_ACTOR (self)); self->selected_index += 1; @@ -100,10 +97,8 @@ key_group_action_activate (KeyGroup *self, if (self->selected_index == -1) return FALSE; - child = clutter_group_get_nth_child (CLUTTER_GROUP (self), - self->selected_index); - - if (child) + child = clutter_actor_get_child_at_index (CLUTTER_ACTOR (self), self->selected_index); + if (child != NULL) { g_signal_emit (self, group_signals[ACTIVATE], 0, child); return TRUE; @@ -138,15 +133,13 @@ static void key_group_paint (ClutterActor *actor) { KeyGroup *self = KEY_GROUP (actor); - GList *children, *l; - gint i; + ClutterActorIter iter; + ClutterActor *child; + gint i = 0; - children = clutter_container_get_children (CLUTTER_CONTAINER (self)); - - for (l = children, i = 0; l != NULL; l = l->next, i++) + clutter_actor_iter_init (&iter, actor); + while (clutter_actor_iter_next (&iter, &child)) { - ClutterActor *child = l->data; - /* paint the selection rectangle */ if (i == self->selected_index) { @@ -165,14 +158,6 @@ key_group_paint (ClutterActor *actor) clutter_actor_paint (child); } - - g_list_free (children); -} - -static void -key_group_finalize (GObject *gobject) -{ - G_OBJECT_CLASS (key_group_parent_class)->finalize (gobject); } static void @@ -182,8 +167,6 @@ key_group_class_init (KeyGroupClass *klass) ClutterActorClass *actor_class = CLUTTER_ACTOR_CLASS (klass); ClutterBindingPool *binding_pool; - gobject_class->finalize = key_group_finalize; - actor_class->paint = key_group_paint; actor_class->key_press_event = key_group_key_press; @@ -261,29 +244,30 @@ on_activate (KeyGroup *key_group, g_assert_cmpint (key_group->selected_index, ==, _index); } -void -binding_pool (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +binding_pool (void) { KeyGroup *key_group = g_object_new (TYPE_KEY_GROUP, NULL); - - clutter_container_add (CLUTTER_CONTAINER (key_group), - g_object_new (CLUTTER_TYPE_RECTANGLE, - "width", 50.0, - "height", 50.0, - "x", 0.0, "y", 0.0, - NULL), - g_object_new (CLUTTER_TYPE_RECTANGLE, - "width", 50.0, - "height", 50.0, - "x", 75.0, "y", 0.0, - NULL), - g_object_new (CLUTTER_TYPE_RECTANGLE, - "width", 50.0, - "height", 50.0, - "x", 150.0, "y", 0.0, - NULL), - NULL); + g_object_ref_sink (key_group); + + clutter_actor_add_child (CLUTTER_ACTOR (key_group), + g_object_new (CLUTTER_TYPE_ACTOR, + "width", 50.0, + "height", 50.0, + "x", 0.0, "y", 0.0, + NULL)); + clutter_actor_add_child (CLUTTER_ACTOR (key_group), + g_object_new (CLUTTER_TYPE_ACTOR, + "width", 50.0, + "height", 50.0, + "x", 75.0, "y", 0.0, + NULL)); + clutter_actor_add_child (CLUTTER_ACTOR (key_group), + g_object_new (CLUTTER_TYPE_ACTOR, + "width", 50.0, + "height", 50.0, + "x", 150.0, "y", 0.0, + NULL)); g_assert_cmpint (key_group->selected_index, ==, -1); @@ -307,3 +291,7 @@ binding_pool (TestConformSimpleFixture *fixture, clutter_actor_destroy (CLUTTER_ACTOR (key_group)); } + +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/binding-pool", binding_pool) +) diff --git a/tests/conform/color.c b/tests/conform/color.c index a0c9f56c1..49a879ff3 100644 --- a/tests/conform/color.c +++ b/tests/conform/color.c @@ -1,20 +1,16 @@ -#include <stdio.h> #include <clutter/clutter.h> -#include "test-conform-common.h" - -void -color_hls_roundtrip (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +color_hls_roundtrip (void) { ClutterColor color; gfloat hue, luminance, saturation; /* test luminance only */ clutter_color_from_string (&color, "#7f7f7f"); - g_assert_cmpint (color.red, ==, 0x7f); - g_assert_cmpint (color.green, ==, 0x7f); - g_assert_cmpint (color.blue, ==, 0x7f); + g_assert_cmpuint (color.red, ==, 0x7f); + g_assert_cmpuint (color.green, ==, 0x7f); + g_assert_cmpuint (color.blue, ==, 0x7f); clutter_color_to_hls (&color, &hue, &luminance, &saturation); g_assert_cmpfloat (hue, ==, 0.0); @@ -34,17 +30,17 @@ color_hls_roundtrip (TestConformSimpleFixture *fixture, color.red = color.green = color.blue = 0; clutter_color_from_hls (&color, hue, luminance, saturation); - g_assert_cmpint (color.red, ==, 0x7f); - g_assert_cmpint (color.green, ==, 0x7f); - g_assert_cmpint (color.blue, ==, 0x7f); + g_assert_cmpuint (color.red, ==, 0x7f); + g_assert_cmpuint (color.green, ==, 0x7f); + g_assert_cmpuint (color.blue, ==, 0x7f); /* full conversion */ clutter_color_from_string (&color, "#7f8f7f"); color.alpha = 255; - g_assert_cmpint (color.red, ==, 0x7f); - g_assert_cmpint (color.green, ==, 0x8f); - g_assert_cmpint (color.blue, ==, 0x7f); + g_assert_cmpuint (color.red, ==, 0x7f); + g_assert_cmpuint (color.green, ==, 0x8f); + g_assert_cmpuint (color.blue, ==, 0x7f); clutter_color_to_hls (&color, &hue, &luminance, &saturation); g_assert (hue >= 0.0 && hue < 360.0); @@ -64,17 +60,16 @@ color_hls_roundtrip (TestConformSimpleFixture *fixture, color.red = color.green = color.blue = 0; clutter_color_from_hls (&color, hue, luminance, saturation); - g_assert_cmpint (color.red, ==, 0x7f); - g_assert_cmpint (color.green, ==, 0x8f); - g_assert_cmpint (color.blue, ==, 0x7f); + g_assert_cmpuint (color.red, ==, 0x7f); + g_assert_cmpuint (color.green, ==, 0x8f); + g_assert_cmpuint (color.blue, ==, 0x7f); /* the alpha channel should be untouched */ - g_assert_cmpint (color.alpha, ==, 255); + g_assert_cmpuint (color.alpha, ==, 255); } -void -color_from_string_invalid (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +color_from_string_invalid (void) { ClutterColor color; @@ -88,9 +83,8 @@ color_from_string_invalid (TestConformSimpleFixture *fixture, g_assert (!clutter_color_from_string (&color, "hsla(100%, 0%, 50%, 20%)")); } -void -color_from_string_valid (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +color_from_string_valid (void) { ClutterColor color; @@ -103,10 +97,10 @@ color_from_string_valid (TestConformSimpleFixture *fixture, color.blue, color.alpha); } - g_assert (color.red == 0xff); - g_assert (color.green == 0); - g_assert (color.blue == 0); - g_assert (color.alpha == 0xff); + g_assert_cmpuint (color.red, ==, 0xff); + g_assert_cmpuint (color.green, ==, 0); + g_assert_cmpuint (color.blue, ==, 0); + g_assert_cmpuint (color.alpha, ==, 0xff); g_assert (clutter_color_from_string (&color, "#0f0f")); if (g_test_verbose ()) @@ -117,10 +111,10 @@ color_from_string_valid (TestConformSimpleFixture *fixture, color.blue, color.alpha); } - g_assert (color.red == 0); - g_assert (color.green == 0xff); - g_assert (color.blue == 0); - g_assert (color.alpha == 0xff); + g_assert_cmpuint (color.red, ==, 0); + g_assert_cmpuint (color.green, ==, 0xff); + g_assert_cmpuint (color.blue, ==, 0); + g_assert_cmpuint (color.alpha, ==, 0xff); g_assert (clutter_color_from_string (&color, "#0000ff")); if (g_test_verbose ()) @@ -131,10 +125,10 @@ color_from_string_valid (TestConformSimpleFixture *fixture, color.blue, color.alpha); } - g_assert (color.red == 0); - g_assert (color.green == 0); - g_assert (color.blue == 0xff); - g_assert (color.alpha == 0xff); + g_assert_cmpuint (color.red, ==, 0); + g_assert_cmpuint (color.green, ==, 0); + g_assert_cmpuint (color.blue, ==, 0xff); + g_assert_cmpuint (color.alpha, ==, 0xff); g_assert (clutter_color_from_string (&color, "#abc")); if (g_test_verbose ()) @@ -145,10 +139,10 @@ color_from_string_valid (TestConformSimpleFixture *fixture, color.blue, color.alpha); } - g_assert (color.red == 0xaa); - g_assert (color.green == 0xbb); - g_assert (color.blue == 0xcc); - g_assert (color.alpha == 0xff); + g_assert_cmpuint (color.red, ==, 0xaa); + g_assert_cmpuint (color.green, ==, 0xbb); + g_assert_cmpuint (color.blue, ==, 0xcc); + g_assert_cmpuint (color.alpha, ==, 0xff); g_assert (clutter_color_from_string (&color, "#123abc")); if (g_test_verbose ()) @@ -173,10 +167,10 @@ color_from_string_valid (TestConformSimpleFixture *fixture, color.blue, color.alpha); } - g_assert_cmpint (color.red, ==, 255); - g_assert_cmpint (color.green, ==, 128); - g_assert_cmpint (color.blue, ==, 64); - g_assert_cmpint (color.alpha, ==, 255); + g_assert_cmpuint (color.red, ==, 255); + g_assert_cmpuint (color.green, ==, 128); + g_assert_cmpuint (color.blue, ==, 64); + g_assert_cmpuint (color.alpha, ==, 255); g_assert (clutter_color_from_string (&color, "rgba ( 30%, 0, 25%, 0.5 ) ")); if (g_test_verbose ()) @@ -189,10 +183,10 @@ color_from_string_valid (TestConformSimpleFixture *fixture, CLAMP (255.0 / 100.0 * 30.0, 0, 255), CLAMP (255.0 / 100.0 * 25.0, 0, 255)); } - g_assert_cmpint (color.red, ==, (255.0 / 100.0 * 30.0)); - g_assert_cmpint (color.green, ==, 0); - g_assert_cmpint (color.blue, ==, (255.0 / 100.0 * 25.0)); - g_assert_cmpint (color.alpha, ==, 127); + g_assert_cmpuint (color.red, ==, (255.0 / 100.0 * 30.0)); + g_assert_cmpuint (color.green, ==, 0); + g_assert_cmpuint (color.blue, ==, (255.0 / 100.0 * 25.0)); + g_assert_cmpuint (color.alpha, ==, 127); g_assert (clutter_color_from_string (&color, "rgb( 50%, -50%, 150% )")); if (g_test_verbose ()) @@ -203,10 +197,10 @@ color_from_string_valid (TestConformSimpleFixture *fixture, color.blue, color.alpha); } - g_assert_cmpint (color.red, ==, 127); - g_assert_cmpint (color.green, ==, 0); - g_assert_cmpint (color.blue, ==, 255); - g_assert_cmpint (color.alpha, ==, 255); + g_assert_cmpuint (color.red, ==, 127); + g_assert_cmpuint (color.green, ==, 0); + g_assert_cmpuint (color.blue, ==, 255); + g_assert_cmpuint (color.alpha, ==, 255); g_assert (clutter_color_from_string (&color, "hsl( 0, 100%, 50% )")); if (g_test_verbose ()) @@ -217,10 +211,10 @@ color_from_string_valid (TestConformSimpleFixture *fixture, color.blue, color.alpha); } - g_assert_cmpint (color.red, ==, 255); - g_assert_cmpint (color.green, ==, 0); - g_assert_cmpint (color.blue, ==, 0); - g_assert_cmpint (color.alpha, ==, 255); + g_assert_cmpuint (color.red, ==, 255); + g_assert_cmpuint (color.green, ==, 0); + g_assert_cmpuint (color.blue, ==, 0); + g_assert_cmpuint (color.alpha, ==, 255); g_assert (clutter_color_from_string (&color, "hsla( 0, 100%, 50%, 0.5 )")); if (g_test_verbose ()) @@ -231,15 +225,14 @@ color_from_string_valid (TestConformSimpleFixture *fixture, color.blue, color.alpha); } - g_assert_cmpint (color.red, ==, 255); - g_assert_cmpint (color.green, ==, 0); - g_assert_cmpint (color.blue, ==, 0); - g_assert_cmpint (color.alpha, ==, 127); + g_assert_cmpuint (color.red, ==, 255); + g_assert_cmpuint (color.green, ==, 0); + g_assert_cmpuint (color.blue, ==, 0); + g_assert_cmpuint (color.alpha, ==, 127); } -void -color_to_string (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +color_to_string (void) { ClutterColor color; gchar *str; @@ -255,24 +248,23 @@ color_to_string (TestConformSimpleFixture *fixture, g_free (str); } -void -color_operators (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +color_operators (void) { ClutterColor op1, op2; ClutterColor res; clutter_color_from_pixel (&op1, 0xff0000ff); - g_assert_cmpint (op1.red, ==, 0xff); - g_assert_cmpint (op1.green, ==, 0); - g_assert_cmpint (op1.blue, ==, 0); - g_assert_cmpint (op1.alpha, ==, 0xff); + g_assert_cmpuint (op1.red, ==, 0xff); + g_assert_cmpuint (op1.green, ==, 0); + g_assert_cmpuint (op1.blue, ==, 0); + g_assert_cmpuint (op1.alpha, ==, 0xff); clutter_color_from_pixel (&op2, 0x00ff00ff); - g_assert_cmpint (op2.red, ==, 0); - g_assert_cmpint (op2.green, ==, 0xff); - g_assert_cmpint (op2.blue, ==, 0); - g_assert_cmpint (op2.alpha, ==, 0xff); + g_assert_cmpuint (op2.red, ==, 0); + g_assert_cmpuint (op2.green, ==, 0xff); + g_assert_cmpuint (op2.blue, ==, 0); + g_assert_cmpuint (op2.alpha, ==, 0xff); if (g_test_verbose ()) g_print ("Adding %x, %x; expected result: %x\n", @@ -281,7 +273,7 @@ color_operators (TestConformSimpleFixture *fixture, 0xffff00ff); clutter_color_add (&op1, &op2, &res); - g_assert_cmpint (clutter_color_to_pixel (&res), ==, 0xffff00ff); + g_assert_cmpuint (clutter_color_to_pixel (&res), ==, 0xffff00ff); if (g_test_verbose ()) g_print ("Checking alpha channel on color add\n"); @@ -289,7 +281,7 @@ color_operators (TestConformSimpleFixture *fixture, op1.alpha = 0xdd; op2.alpha = 0xcc; clutter_color_add (&op1, &op2, &res); - g_assert_cmpint (clutter_color_to_pixel (&res), ==, 0xffff00dd); + g_assert_cmpuint (clutter_color_to_pixel (&res), ==, 0xffff00dd); clutter_color_from_pixel (&op1, 0xffffffff); clutter_color_from_pixel (&op2, 0xff00ffff); @@ -301,7 +293,7 @@ color_operators (TestConformSimpleFixture *fixture, 0x00ff00ff); clutter_color_subtract (&op1, &op2, &res); - g_assert_cmpint (clutter_color_to_pixel (&res), ==, 0x00ff00ff); + g_assert_cmpuint (clutter_color_to_pixel (&res), ==, 0x00ff00ff); if (g_test_verbose ()) g_print ("Checking alpha channel on color subtract\n"); @@ -309,5 +301,13 @@ color_operators (TestConformSimpleFixture *fixture, op1.alpha = 0xdd; op2.alpha = 0xcc; clutter_color_subtract (&op1, &op2, &res); - g_assert_cmpint (clutter_color_to_pixel (&res), ==, 0x00ff00cc); + g_assert_cmpuint (clutter_color_to_pixel (&res), ==, 0x00ff00cc); } + +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/color/hls-roundtrip", color_hls_roundtrip) + CLUTTER_TEST_UNIT ("/color/from-string/invalid", color_from_string_invalid) + CLUTTER_TEST_UNIT ("/color/from-string/valid", color_from_string_valid) + CLUTTER_TEST_UNIT ("/color/to-string", color_to_string) + CLUTTER_TEST_UNIT ("/color/operators", color_operators) +) diff --git a/tests/conform/events-touch.c b/tests/conform/events-touch.c index 96f2f393e..124b821af 100644 --- a/tests/conform/events-touch.c +++ b/tests/conform/events-touch.c @@ -19,7 +19,6 @@ * */ -#include "config.h" #include <clutter/clutter.h> #if defined CLUTTER_WINDOWING_X11 && OS_LINUX && HAVE_XINPUT_2_2 @@ -36,8 +35,6 @@ #include <clutter/x11/clutter-x11.h> -#include "test-conform-common.h" - #define ABS_MAX_X 32768 #define ABS_MAX_Y 32768 @@ -360,7 +357,7 @@ error: #endif /* defined CLUTTER_WINDOWING_X11 && OS_LINUX && HAVE_XINPUT_2_2 */ -void +static void events_touch (void) { #if defined CLUTTER_WINDOWING_X11 && OS_LINUX && HAVE_XINPUT_2_2 @@ -374,7 +371,7 @@ events_touch (void) state.pass = TRUE; state.gesture_points = 0; - stage = clutter_stage_new (); + stage = clutter_test_get_stage (); g_signal_connect (stage, "event", G_CALLBACK (event_cb), &state); clutter_stage_set_fullscreen (CLUTTER_STAGE (stage), TRUE); clutter_actor_show (stage); @@ -387,7 +384,9 @@ events_touch (void) g_print ("end result: %s\n", state.pass ? "pass" : "FAIL"); g_assert (state.pass); - - clutter_actor_destroy (stage); #endif /* defined CLUTTER_WINDOWING_X11 && OS_LINUX && HAVE_XINPUT_2_2 */ } + +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/events/touch", events_touch) +) diff --git a/tests/conform/group.c b/tests/conform/group.c index c226f958c..3f7b1fb4b 100644 --- a/tests/conform/group.c +++ b/tests/conform/group.c @@ -1,9 +1,8 @@ +#define CLUTTER_DISABLE_DEPRECATION_WARNINGS #include <clutter/clutter.h> -#include "test-conform-common.h" -void -group_depth_sorting (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +group_depth_sorting (void) { ClutterActor *group; ClutterActor *child, *test; @@ -55,3 +54,7 @@ group_depth_sorting (TestConformSimpleFixture *fixture, clutter_actor_destroy (group); } + +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/group/depth-sorting", group_depth_sorting) +) diff --git a/tests/conform/interval.c b/tests/conform/interval.c index 2ee3ea897..520437894 100644 --- a/tests/conform/interval.c +++ b/tests/conform/interval.c @@ -1,10 +1,7 @@ #include <clutter/clutter.h> -#include "test-conform-common.h" - -void -interval_initial_state (TestConformSimpleFixture *fixture G_GNUC_UNUSED, - gconstpointer dummy G_GNUC_UNUSED) +static void +interval_initial_state (void) { ClutterInterval *interval; int initial, final; @@ -38,9 +35,8 @@ interval_initial_state (TestConformSimpleFixture *fixture G_GNUC_UNUSED, g_object_unref (interval); } -void -interval_transform (TestConformSimpleFixture *fixture G_GNUC_UNUSED, - gconstpointer dummy G_GNUC_UNUSED) +static void +interval_transform (void) { ClutterInterval *interval; GValue value = G_VALUE_INIT; @@ -68,3 +64,54 @@ interval_transform (TestConformSimpleFixture *fixture G_GNUC_UNUSED, g_object_unref (interval); } + +static void +interval_from_script (void) +{ + ClutterScript *script = clutter_script_new (); + ClutterInterval *interval; + gchar *test_file; + GError *error = NULL; + GValue *initial, *final; + + test_file = g_test_build_filename (G_TEST_DIST, + "scripts", + "test-script-interval.json", + NULL); + clutter_script_load_from_file (script, test_file, &error); + if (g_test_verbose () && error) + g_printerr ("\tError: %s", error->message); + + g_assert_no_error (error); + + interval = CLUTTER_INTERVAL (clutter_script_get_object (script, "int-1")); + initial = clutter_interval_peek_initial_value (interval); + if (g_test_verbose ()) + g_test_message ("\tinitial ['%s'] = '%.2f'", + g_type_name (G_VALUE_TYPE (initial)), + g_value_get_float (initial)); + g_assert (G_VALUE_HOLDS (initial, G_TYPE_FLOAT)); + g_assert_cmpfloat (g_value_get_float (initial), ==, 23.3f); + final = clutter_interval_peek_final_value (interval); + if (g_test_verbose ()) + g_test_message ("\tfinal ['%s'] = '%.2f'", + g_type_name (G_VALUE_TYPE (final)), + g_value_get_float (final)); + g_assert (G_VALUE_HOLDS (final, G_TYPE_FLOAT)); + g_assert_cmpfloat (g_value_get_float (final), ==, 42.2f); + + interval = CLUTTER_INTERVAL (clutter_script_get_object (script, "int-2")); + initial = clutter_interval_peek_initial_value (interval); + g_assert (G_VALUE_HOLDS (initial, CLUTTER_TYPE_COLOR)); + final = clutter_interval_peek_final_value (interval); + g_assert (G_VALUE_HOLDS (final, CLUTTER_TYPE_COLOR)); + + g_object_unref (script); + g_free (test_file); +} + +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/interval/initial-state", interval_initial_state) + CLUTTER_TEST_UNIT ("/interval/transform", interval_transform) + CLUTTER_TEST_UNIT ("/interval/from-script", interval_from_script) +) diff --git a/tests/conform/model.c b/tests/conform/model.c index 0f36a5e10..51c9eb7ff 100644 --- a/tests/conform/model.c +++ b/tests/conform/model.c @@ -2,8 +2,6 @@ #include <string.h> #include <clutter/clutter.h> -#include "test-conform-common.h" - typedef struct _ModelData { ClutterModel *model; @@ -171,9 +169,8 @@ filter_odd_rows (ClutterModel *model, return FALSE; } -void -list_model_filter (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +list_model_filter (void) { ModelData test_data = { NULL, 0 }; ClutterModelIter *iter; @@ -259,9 +256,8 @@ list_model_filter (TestConformSimpleFixture *fixture, g_object_unref (test_data.model); } -void -list_model_iterate (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +list_model_iterate (void) { ModelData test_data = { NULL, 0 }; ClutterModelIter *iter; @@ -334,9 +330,8 @@ list_model_iterate (TestConformSimpleFixture *fixture, g_object_unref (test_data.model); } -void -list_model_populate (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +list_model_populate (void) { ModelData test_data = { NULL, 0 }; gint i; @@ -365,9 +360,8 @@ list_model_populate (TestConformSimpleFixture *fixture, g_object_unref (test_data.model); } -void -list_model_from_script (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +list_model_from_script (void) { ClutterScript *script = clutter_script_new (); GObject *model; @@ -378,7 +372,7 @@ list_model_from_script (TestConformSimpleFixture *fixture, ClutterModelIter *iter; GValue value = { 0, }; - test_file = clutter_test_get_data_file ("test-script-model.json"); + test_file = g_test_build_filename (G_TEST_DIST, "scripts", "test-script-model.json", NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); @@ -406,7 +400,7 @@ list_model_from_script (TestConformSimpleFixture *fixture, g_print ("column[2]: %s, type: %s\n", name, g_type_name (type)); g_assert (strcmp (name, "actor-column") == 0); - g_assert (type == CLUTTER_TYPE_RECTANGLE); + g_assert (g_type_is_a (type, CLUTTER_TYPE_ACTOR)); g_assert (clutter_model_get_n_rows (CLUTTER_MODEL (model)) == 3); @@ -429,13 +423,13 @@ list_model_from_script (TestConformSimpleFixture *fixture, iter = clutter_model_iter_next (iter); clutter_model_iter_get_value (iter, 2, &value); g_assert (G_VALUE_HOLDS_OBJECT (&value)); - g_assert (CLUTTER_IS_RECTANGLE (g_value_get_object (&value))); + g_assert (CLUTTER_IS_ACTOR (g_value_get_object (&value))); g_value_unset (&value); iter = clutter_model_iter_next (iter); clutter_model_iter_get_value (iter, 2, &value); g_assert (G_VALUE_HOLDS_OBJECT (&value)); - g_assert (CLUTTER_IS_RECTANGLE (g_value_get_object (&value))); + g_assert (CLUTTER_IS_ACTOR (g_value_get_object (&value))); g_assert (strcmp (clutter_actor_get_name (g_value_get_object (&value)), "actor-row-3") == 0); g_value_unset (&value); @@ -460,9 +454,8 @@ on_row_changed (ClutterModel *model, data->n_emissions += 1; } -void -list_model_row_changed (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +list_model_row_changed (void) { ChangedData test_data = { NULL, NULL, 0, 0 }; GValue value = { 0, }; @@ -524,3 +517,11 @@ list_model_row_changed (TestConformSimpleFixture *fixture, g_object_unref (test_data.iter); g_object_unref (test_data.model); } + +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/list-model/populate", list_model_populate) + CLUTTER_TEST_UNIT ("/list-model/iterate", list_model_iterate) + CLUTTER_TEST_UNIT ("/list-model/filter", list_model_filter) + CLUTTER_TEST_UNIT ("/list-model/row-changed", list_model_row_changed) + CLUTTER_TEST_UNIT ("/list-model/from-script", list_model_from_script) +) diff --git a/tests/conform/rectangle.c b/tests/conform/rectangle.c index 55edc361b..1c09f00b7 100644 --- a/tests/conform/rectangle.c +++ b/tests/conform/rectangle.c @@ -1,16 +1,8 @@ -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#include <glib.h> - +#define CLUTTER_DISABLE_DEPRECATION_WARNINGS #include <clutter/clutter.h> -#include "test-conform-common.h" - -void -rectangle_set_size (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +rectangle_set_size (void) { ClutterActor *rect = clutter_rectangle_new (); @@ -32,9 +24,8 @@ rectangle_set_size (TestConformSimpleFixture *fixture, clutter_actor_destroy (rect); } -void -rectangle_set_color (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +rectangle_set_color (void) { ClutterActor *rect = clutter_rectangle_new (); ClutterColor white = { 255, 255, 255, 255 }; @@ -54,3 +45,7 @@ rectangle_set_color (TestConformSimpleFixture *fixture, clutter_actor_destroy (rect); } +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/rectangle/set-size", rectangle_set_size) + CLUTTER_TEST_UNIT ("/rectangle/set-color", rectangle_set_color) +) diff --git a/tests/conform/script-parser.c b/tests/conform/script-parser.c index 73ec954a1..c2e2dbd08 100644 --- a/tests/conform/script-parser.c +++ b/tests/conform/script-parser.c @@ -1,8 +1,8 @@ #include <stdlib.h> #include <string.h> -#include <clutter/clutter.h> -#include "test-conform-common.h" +#define CLUTTER_DISABLE_DEPRECATION_WARNINGS +#include <clutter/clutter.h> #define TEST_TYPE_GROUP (test_group_get_type ()) #define TEST_TYPE_GROUP_META (test_group_meta_get_type ()) @@ -13,7 +13,8 @@ #define TEST_GROUP_META(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TEST_TYPE_GROUP_META, TestGroupMeta)) #define TEST_IS_GROUP_META(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TEST_TYPE_GROUP_META)) -typedef struct _ClutterGroup TestGroup; +typedef struct _ClutterActor TestGroup; +typedef struct _ClutterActorClass TestGroupClass; typedef struct _TestGroupMeta { ClutterChildMeta parent_instance; @@ -21,10 +22,11 @@ typedef struct _TestGroupMeta { guint is_focus : 1; } TestGroupMeta; -typedef struct _ClutterGroupClass TestGroupClass; typedef struct _ClutterChildMetaClass TestGroupMetaClass; -G_DEFINE_TYPE (TestGroupMeta, test_group_meta, CLUTTER_TYPE_CHILD_META); +GType test_group_meta_get_type (void); + +G_DEFINE_TYPE (TestGroupMeta, test_group_meta, CLUTTER_TYPE_CHILD_META) enum { @@ -100,9 +102,11 @@ clutter_container_iface_init (ClutterContainerIface *iface) iface->child_meta_type = TEST_TYPE_GROUP_META; } -G_DEFINE_TYPE_WITH_CODE (TestGroup, test_group, CLUTTER_TYPE_GROUP, +GType test_group_get_type (void); + +G_DEFINE_TYPE_WITH_CODE (TestGroup, test_group, CLUTTER_TYPE_ACTOR, G_IMPLEMENT_INTERFACE (CLUTTER_TYPE_CONTAINER, - clutter_container_iface_init)); + clutter_container_iface_init)) static void test_group_class_init (TestGroupClass *klass) @@ -114,9 +118,8 @@ test_group_init (TestGroup *self) { } -void -script_child (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +script_child (void) { ClutterScript *script = clutter_script_new (); GObject *container, *actor; @@ -124,16 +127,12 @@ script_child (TestConformSimpleFixture *fixture, gboolean focus_ret; gchar *test_file; - test_file = clutter_test_get_data_file ("test-script-child.json"); + test_file = g_test_build_filename (G_TEST_DIST, "scripts", "test-script-child.json", NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); -#if GLIB_CHECK_VERSION (2, 20, 0) g_assert_no_error (error); -#else - g_assert (error == NULL); -#endif container = actor = NULL; clutter_script_get_objects (script, @@ -164,9 +163,8 @@ script_child (TestConformSimpleFixture *fixture, g_free (test_file); } -void -script_single (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +script_single (void) { ClutterScript *script = clutter_script_new (); ClutterColor color = { 0, }; @@ -175,16 +173,12 @@ script_single (TestConformSimpleFixture *fixture, ClutterActor *rect; gchar *test_file; - test_file = clutter_test_get_data_file ("test-script-single.json"); + test_file = g_test_build_filename (G_TEST_DIST, "scripts", "test-script-single.json", NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); -#if GLIB_CHECK_VERSION (2, 20, 0) g_assert_no_error (error); -#else - g_assert (error == NULL); -#endif actor = clutter_script_get_object (script, "test"); g_assert (CLUTTER_IS_RECTANGLE (actor)); @@ -202,9 +196,8 @@ script_single (TestConformSimpleFixture *fixture, g_free (test_file); } -void -script_implicit_alpha (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +script_implicit_alpha (void) { ClutterScript *script = clutter_script_new (); ClutterTimeline *timeline; @@ -213,7 +206,7 @@ script_implicit_alpha (TestConformSimpleFixture *fixture, ClutterAlpha *alpha; gchar *test_file; - test_file = clutter_test_get_data_file ("test-script-implicit-alpha.json"); + test_file = g_test_build_filename (G_TEST_DIST, "scripts", "test-script-implicit-alpha.json", NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); @@ -241,9 +234,8 @@ script_implicit_alpha (TestConformSimpleFixture *fixture, g_free (test_file); } -void -script_object_property (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +script_object_property (void) { ClutterScript *script = clutter_script_new (); ClutterLayoutManager *manager; @@ -251,16 +243,12 @@ script_object_property (TestConformSimpleFixture *fixture, GError *error = NULL; gchar *test_file; - test_file = clutter_test_get_data_file ("test-script-object-property.json"); + test_file = g_test_build_filename (G_TEST_DIST, "scripts", "test-script-object-property.json", NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); -#if GLIB_CHECK_VERSION (2, 20, 0) g_assert_no_error (error); -#else - g_assert (error == NULL); -#endif actor = clutter_script_get_object (script, "test"); g_assert (CLUTTER_IS_BOX (actor)); @@ -272,9 +260,8 @@ script_object_property (TestConformSimpleFixture *fixture, g_free (test_file); } -void -script_named_object (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +script_named_object (void) { ClutterScript *script = clutter_script_new (); ClutterLayoutManager *manager; @@ -282,16 +269,12 @@ script_named_object (TestConformSimpleFixture *fixture, GError *error = NULL; gchar *test_file; - test_file = clutter_test_get_data_file ("test-script-named-object.json"); + test_file = g_test_build_filename (G_TEST_DIST, "scripts", "test-script-named-object.json", NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); -#if GLIB_CHECK_VERSION (2, 20, 0) g_assert_no_error (error); -#else - g_assert (error == NULL); -#endif actor = clutter_script_get_object (script, "test"); g_assert (CLUTTER_IS_BOX (actor)); @@ -304,25 +287,20 @@ script_named_object (TestConformSimpleFixture *fixture, g_free (test_file); } -void -script_animation (TestConformSimpleFixture *fixture, - gconstpointer dummy) +static void +script_animation (void) { ClutterScript *script = clutter_script_new (); GObject *animation = NULL; GError *error = NULL; gchar *test_file; - test_file = clutter_test_get_data_file ("test-script-animation.json"); + test_file = g_test_build_filename (G_TEST_DIST, "scripts", "test-script-animation.json", NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); -#if GLIB_CHECK_VERSION (2, 20, 0) g_assert_no_error (error); -#else - g_assert (error == NULL); -#endif animation = clutter_script_get_object (script, "test"); g_assert (CLUTTER_IS_ANIMATION (animation)); @@ -331,9 +309,8 @@ script_animation (TestConformSimpleFixture *fixture, g_free (test_file); } -void -script_layout_property (TestConformSimpleFixture *fixture, - gconstpointer dummy G_GNUC_UNUSED) +static void +script_layout_property (void) { ClutterScript *script = clutter_script_new (); GObject *manager, *container, *actor1, *actor2; @@ -342,16 +319,12 @@ script_layout_property (TestConformSimpleFixture *fixture, gboolean x_fill, expand; ClutterBoxAlignment y_align; - test_file = clutter_test_get_data_file ("test-script-layout-property.json"); + test_file = g_test_build_filename (G_TEST_DIST, "scripts", "test-script-layout-property.json", NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); -#if GLIB_CHECK_VERSION (2, 20, 0) g_assert_no_error (error); -#else - g_assert (error == NULL); -#endif manager = container = actor1 = actor2 = NULL; clutter_script_get_objects (script, @@ -399,16 +372,15 @@ script_layout_property (TestConformSimpleFixture *fixture, g_object_unref (script); } -void -script_margin (TestConformSimpleFixture *fixture, - gpointer dummy) +static void +script_margin (void) { ClutterScript *script = clutter_script_new (); ClutterActor *actor; gchar *test_file; GError *error = NULL; - test_file = clutter_test_get_data_file ("test-script-margin.json"); + test_file = g_test_build_filename (G_TEST_DIST, "scripts", "test-script-margin.json", NULL); clutter_script_load_from_file (script, test_file, &error); if (g_test_verbose () && error) g_print ("Error: %s", error->message); @@ -443,37 +415,13 @@ script_margin (TestConformSimpleFixture *fixture, g_free (test_file); } -void -script_interval (TestConformSimpleFixture *fixture, - gpointer dummy) -{ - ClutterScript *script = clutter_script_new (); - ClutterInterval *interval; - gchar *test_file; - GError *error = NULL; - GValue *initial, *final; - - test_file = clutter_test_get_data_file ("test-script-interval.json"); - clutter_script_load_from_file (script, test_file, &error); - if (g_test_verbose () && error) - g_print ("Error: %s", error->message); - - g_assert_no_error (error); - - interval = CLUTTER_INTERVAL (clutter_script_get_object (script, "int-1")); - initial = clutter_interval_peek_initial_value (interval); - g_assert (G_VALUE_HOLDS (initial, G_TYPE_FLOAT)); - g_assert_cmpfloat (g_value_get_float (initial), ==, 23.3f); - final = clutter_interval_peek_final_value (interval); - g_assert (G_VALUE_HOLDS (final, G_TYPE_FLOAT)); - g_assert_cmpfloat (g_value_get_float (final), ==, 42.2f); - - interval = CLUTTER_INTERVAL (clutter_script_get_object (script, "int-2")); - initial = clutter_interval_peek_initial_value (interval); - g_assert (G_VALUE_HOLDS (initial, CLUTTER_TYPE_COLOR)); - final = clutter_interval_peek_final_value (interval); - g_assert (G_VALUE_HOLDS (final, CLUTTER_TYPE_COLOR)); - - g_object_unref (script); - g_free (test_file); -} +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/script/single-object", script_single) + CLUTTER_TEST_UNIT ("/script/container-child", script_child) + CLUTTER_TEST_UNIT ("/script/named-object", script_named_object) + CLUTTER_TEST_UNIT ("/script/animation", script_animation) + CLUTTER_TEST_UNIT ("/script/implicit-alpha", script_implicit_alpha) + CLUTTER_TEST_UNIT ("/script/object-property", script_object_property) + CLUTTER_TEST_UNIT ("/script/layout-property", script_layout_property) + CLUTTER_TEST_UNIT ("/script/actor-margin", script_margin) +) diff --git a/tests/conform/text.c b/tests/conform/text.c index c00f2aed4..cd61f0b71 100644 --- a/tests/conform/text.c +++ b/tests/conform/text.c @@ -2,8 +2,6 @@ #include <clutter/clutter.h> #include <string.h> -#include "test-conform-common.h" - typedef struct { gunichar unichar; const char bytes[6]; @@ -16,7 +14,7 @@ test_text_data[] = { { 0x2665, "\xe2\x99\xa5", 3 } /* BLACK HEART SUIT */ }; -void +static void text_utf8_validation (void) { int i; @@ -32,11 +30,11 @@ text_utf8_validation (void) nbytes = g_unichar_to_utf8 (t->unichar, bytes); bytes[nbytes] = '\0'; - g_assert (nbytes == t->nbytes); + g_assert_cmpint (nbytes, ==, t->nbytes); g_assert (memcmp (t->bytes, bytes, nbytes) == 0); unichar = g_utf8_get_char_validated (bytes, nbytes); - g_assert (unichar == t->unichar); + g_assert_cmpint (unichar, ==, t->unichar); } } @@ -69,10 +67,11 @@ insert_unichar (ClutterText *text, gunichar unichar, int position) clutter_text_insert_unichar (text, unichar); } -void +static void text_set_empty (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); + g_object_ref_sink (text); g_assert_cmpstr (clutter_text_get_text (text), ==, ""); g_assert_cmpint (*clutter_text_get_text (text), ==, '\0'); @@ -86,10 +85,11 @@ text_set_empty (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } -void +static void text_set_text (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); + g_object_ref_sink (text); clutter_text_set_text (text, "abcdef"); g_assert_cmpint (get_nchars (text), ==, 6); @@ -107,12 +107,14 @@ text_set_text (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } -void +static void text_append_some (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); int i; + g_object_ref_sink (text); + for (i = 0; i < G_N_ELEMENTS (test_text_data); i++) { const TestData *t = &test_text_data[i]; @@ -133,12 +135,14 @@ text_append_some (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } -void +static void text_prepend_some (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); int i; + g_object_ref_sink (text); + for (i = 0; i < G_N_ELEMENTS (test_text_data); i++) { const TestData *t = &test_text_data[i]; @@ -165,12 +169,14 @@ text_prepend_some (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } -void +static void text_insert (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); int i; + g_object_ref_sink (text); + for (i = 0; i < G_N_ELEMENTS (test_text_data); i++) { const TestData *t = &test_text_data[i]; @@ -190,12 +196,14 @@ text_insert (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } -void +static void text_delete_chars (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); int i; + g_object_ref_sink (text); + for (i = 0; i < G_N_ELEMENTS (test_text_data); i++) { const TestData *t = &test_text_data[i]; @@ -222,12 +230,14 @@ text_delete_chars (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } -void +static void text_get_chars (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); gchar *chars; + g_object_ref_sink (text); + clutter_text_set_text (text, "00abcdef11"); g_assert_cmpint (get_nchars (text), ==, 10); g_assert_cmpint (get_nbytes (text), ==, 10); @@ -252,12 +262,14 @@ text_get_chars (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } -void +static void text_delete_text (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); int i; + g_object_ref_sink (text); + for (i = 0; i < G_N_ELEMENTS (test_text_data); i++) { const TestData *t = &test_text_data[i]; @@ -282,11 +294,13 @@ text_delete_text (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } -void +static void text_password_char (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); + g_object_ref_sink (text); + g_assert_cmpint (clutter_text_get_password_char (text), ==, 0); clutter_text_set_text (text, "hello"); @@ -339,12 +353,14 @@ send_unichar (ClutterText *text, gunichar unichar) clutter_event_free (event); } -void +static void text_cursor (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); int i; + g_object_ref_sink (text); + /* only editable entries listen to events */ clutter_text_set_editable (text, TRUE); @@ -385,12 +401,14 @@ text_cursor (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } -void +static void text_event (void) { ClutterText *text = CLUTTER_TEXT (clutter_text_new ()); int i; + g_object_ref_sink (text); + /* only editable entries listen to events */ clutter_text_set_editable (text, TRUE); @@ -449,7 +467,7 @@ validate_markup_attributes (ClutterText *text, pango_attr_iterator_destroy (iter); } -void +static void text_idempotent_use_markup (void) { ClutterText *text; @@ -465,6 +483,7 @@ text_idempotent_use_markup (void) text = g_object_new (CLUTTER_TYPE_TEXT, "text", contents, "use-markup", TRUE, NULL); + g_object_ref_sink (text); if (g_test_verbose ()) g_print ("Contents: '%s' (expected: '%s')\n", @@ -502,3 +521,19 @@ text_idempotent_use_markup (void) clutter_actor_destroy (CLUTTER_ACTOR (text)); } + +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/text/utf8-validation", text_utf8_validation) + CLUTTER_TEST_UNIT ("/text/set-empty", text_set_empty) + CLUTTER_TEST_UNIT ("/text/set-text", text_set_text) + CLUTTER_TEST_UNIT ("/text/append-some", text_append_some) + CLUTTER_TEST_UNIT ("/text/prepend-some", text_prepend_some) + CLUTTER_TEST_UNIT ("/text/insert", text_insert) + CLUTTER_TEST_UNIT ("/text/delete-chars", text_delete_chars) + CLUTTER_TEST_UNIT ("/text/get-chars", text_get_chars) + CLUTTER_TEST_UNIT ("/text/delete-text", text_delete_text) + CLUTTER_TEST_UNIT ("/text/password-char", text_password_char) + CLUTTER_TEST_UNIT ("/text/cursor", text_cursor) + CLUTTER_TEST_UNIT ("/text/event", text_event) + CLUTTER_TEST_UNIT ("/text/idempotent-use-markup", text_idempotent_use_markup) +) diff --git a/tests/conform/texture.c b/tests/conform/texture.c index 3397e4595..392fd5c47 100644 --- a/tests/conform/texture.c +++ b/tests/conform/texture.c @@ -1,9 +1,7 @@ -#include <glib.h> +#define CLUTTER_DISABLE_DEPRECATION_WARNINGS #include <clutter/clutter.h> #include <string.h> -#include "test-conform-common.h" - static CoglHandle make_texture (void) { @@ -28,17 +26,16 @@ make_texture (void) (guchar *)data); } -void -texture_pick_with_alpha (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +texture_pick_with_alpha (void) { ClutterTexture *tex = CLUTTER_TEXTURE (clutter_texture_new ()); - ClutterStage *stage = CLUTTER_STAGE (clutter_stage_new ()); + ClutterStage *stage = CLUTTER_STAGE (clutter_test_get_stage ()); ClutterActor *actor; clutter_texture_set_cogl_texture (tex, make_texture ()); - clutter_container_add_actor (CLUTTER_CONTAINER (stage), CLUTTER_ACTOR (tex)); + clutter_actor_add_child (CLUTTER_ACTOR (stage), CLUTTER_ACTOR (tex)); clutter_actor_show (CLUTTER_ACTOR (stage)); @@ -80,10 +77,8 @@ texture_pick_with_alpha (TestConformSimpleFixture *fixture, if (g_test_verbose ()) g_print ("actor @ (10, 10) = %p\n", actor); g_assert (actor == CLUTTER_ACTOR (tex)); - - clutter_actor_destroy (CLUTTER_ACTOR (stage)); - - if (g_test_verbose ()) - g_print ("OK\n"); } +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/texture/pick-with-alpha", texture_pick_with_alpha) +) diff --git a/tests/conform/units.c b/tests/conform/units.c index 3822e05e2..06bfaf513 100644 --- a/tests/conform/units.c +++ b/tests/conform/units.c @@ -1,11 +1,7 @@ -#include <stdio.h> #include <clutter/clutter.h> -#include "test-conform-common.h" - -void -units_cache (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +units_cache (void) { ClutterUnits units; ClutterSettings *settings; @@ -28,9 +24,8 @@ units_cache (TestConformSimpleFixture *fixture, g_object_set (settings, "font-dpi", old_dpi, NULL); } -void -units_constructors (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +units_constructors (void) { ClutterUnits units, units_cm; @@ -56,9 +51,8 @@ units_constructors (TestConformSimpleFixture *fixture, clutter_units_to_pixels (&units_cm)); } -void -units_string (TestConformSimpleFixture *fixture, - gconstpointer data) +static void +units_string (void) { ClutterUnits units; gchar *string; @@ -129,3 +123,9 @@ units_string (TestConformSimpleFixture *fixture, g_free (string); } + +CLUTTER_TEST_SUITE ( + CLUTTER_TEST_UNIT ("/units/string", units_string) + CLUTTER_TEST_UNIT ("/units/cache", units_cache) + CLUTTER_TEST_UNIT ("/units/constructors", units_constructors) +) |