summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2013-06-12 10:01:50 +0100
committerEmmanuele Bassi <ebassi@gnome.org>2013-06-12 10:09:42 +0100
commitfafd37796b11b94eb99e1b71104e81b3b6be4122 (patch)
tree13b2efdff3c9c7a8e4fa10b0975a8be8ce0a1139
parent5885ffb2d91faabd65bdb81c6570261d18ccc220 (diff)
downloadclutter-fafd37796b11b94eb99e1b71104e81b3b6be4122.tar.gz
conform: Add suite for actor's meta objects
-rw-r--r--tests/conform/Makefile.am1
-rw-r--r--tests/conform/actor-meta.c41
-rw-r--r--tests/conform/test-conform-main.c2
3 files changed, 44 insertions, 0 deletions
diff --git a/tests/conform/Makefile.am b/tests/conform/Makefile.am
index 22dcdfca1..021bb2e0f 100644
--- a/tests/conform/Makefile.am
+++ b/tests/conform/Makefile.am
@@ -54,6 +54,7 @@ units_sources += \
actor-invariants.c \
actor-iter.c \
actor-layout.c \
+ actor-meta.c \
actor-offscreen-redirect.c \
actor-offscreen-limit-max-size.c\
actor-paint-opacity.c \
diff --git a/tests/conform/actor-meta.c b/tests/conform/actor-meta.c
new file mode 100644
index 000000000..5cae53a27
--- /dev/null
+++ b/tests/conform/actor-meta.c
@@ -0,0 +1,41 @@
+#include <stdlib.h>
+#include <string.h>
+
+#include <clutter/clutter.h>
+
+#include "test-conform-common.h"
+
+void
+actor_meta_clear (TestConformSimpleFixture *fixture G_GNUC_UNUSED,
+ gconstpointer data G_GNUC_UNUSED)
+{
+ ClutterActor *actor, *stage;
+
+ stage = clutter_stage_new ();
+
+ actor = clutter_actor_new ();
+ g_object_ref_sink (actor);
+ g_object_add_weak_pointer (G_OBJECT (actor), (gpointer *) &actor);
+
+ clutter_actor_add_action (actor, clutter_click_action_new ());
+ clutter_actor_add_constraint (actor, clutter_bind_constraint_new (stage, CLUTTER_BIND_ALL, 0));
+ clutter_actor_add_effect (actor, clutter_blur_effect_new ());
+
+ g_assert (clutter_actor_has_actions (actor));
+ g_assert (clutter_actor_has_constraints (actor));
+ g_assert (clutter_actor_has_effects (actor));
+
+ clutter_actor_clear_actions (actor);
+ g_assert (!clutter_actor_has_actions (actor));
+
+ clutter_actor_clear_constraints (actor);
+ g_assert (!clutter_actor_has_constraints (actor));
+
+ clutter_actor_clear_effects (actor);
+ g_assert (!clutter_actor_has_effects (actor));
+
+ clutter_actor_destroy (actor);
+ g_assert (actor == NULL);
+
+ clutter_actor_destroy (stage);
+}
diff --git a/tests/conform/test-conform-main.c b/tests/conform/test-conform-main.c
index 5a9b5b93e..f5b2aadb5 100644
--- a/tests/conform/test-conform-main.c
+++ b/tests/conform/test-conform-main.c
@@ -165,6 +165,8 @@ main (int argc, char **argv)
TEST_CONFORM_SIMPLE ("/actor/invariants", default_stage);
TEST_CONFORM_SIMPLE ("/actor/invariants", actor_pivot_transformation);
+ TEST_CONFORM_SIMPLE ("/actor/meta", actor_meta_clear);
+
TEST_CONFORM_SIMPLE ("/actor/opacity", opacity_label);
TEST_CONFORM_SIMPLE ("/actor/opacity", opacity_rectangle);
TEST_CONFORM_SIMPLE ("/actor/opacity", opacity_paint);