diff --git a/.gitignore b/.gitignore index 89476a5da..3f95d61f6 100644 --- a/.gitignore +++ b/.gitignore @@ -222,6 +222,7 @@ TAGS /tests/conform/test-script-single /tests/conform/test-script-child /tests/conform/test-script-implicit-alpha +/tests/conform/test-script-object-property /tests/micro-bench/test-text-perf /tests/micro-bench/test-text /tests/micro-bench/test-picking diff --git a/tests/conform/test-conform-main.c b/tests/conform/test-conform-main.c index 3811e7f70..33aaa0f2e 100644 --- a/tests/conform/test-conform-main.c +++ b/tests/conform/test-conform-main.c @@ -188,6 +188,7 @@ main (int argc, char **argv) TEST_CONFORM_SIMPLE ("/script", test_script_single); TEST_CONFORM_SIMPLE ("/script", test_script_child); TEST_CONFORM_SIMPLE ("/script", test_script_implicit_alpha); + TEST_CONFORM_SIMPLE ("/script", test_script_object_property); return g_test_run (); } diff --git a/tests/conform/test-script-parser.c b/tests/conform/test-script-parser.c index 3a38374d4..6ea0a1b5a 100644 --- a/tests/conform/test-script-parser.c +++ b/tests/conform/test-script-parser.c @@ -225,3 +225,28 @@ test_script_implicit_alpha (TestConformSimpleFixture *fixture, g_object_unref (script); g_free (test_file); } + +void +test_script_object_property (TestConformSimpleFixture *fixture, + gconstpointer dummy) +{ + ClutterScript *script = clutter_script_new (); + ClutterLayoutManager *manager; + GObject *actor = NULL; + GError *error = NULL; + gchar *test_file; + + test_file = clutter_test_get_data_file ("test-script-object-property.json"); + clutter_script_load_from_file (script, test_file, &error); + g_assert (error == NULL); + + actor = clutter_script_get_object (script, "test"); + g_assert (CLUTTER_IS_BOX (actor)); + + manager = clutter_box_get_layout_manager (CLUTTER_BOX (actor)); + g_assert (CLUTTER_IS_BIN_LAYOUT (manager)); + + g_object_unref (script); + clutter_actor_destroy (CLUTTER_ACTOR (actor)); + g_free (test_file); +} diff --git a/tests/data/test-script-object-property.json b/tests/data/test-script-object-property.json new file mode 100644 index 000000000..18a02fb8b --- /dev/null +++ b/tests/data/test-script-object-property.json @@ -0,0 +1,13 @@ +{ + "id" : "test", + "type" : "ClutterBox", + "layout-manager" : { "id" : "layout", "type" : "ClutterBinLayout" }, + "children" : [ + { + "id" : "child-1", + "type" : "ClutterRectangle", + "width" : "3 em", + "height" : "3 em" + } + ] +}