int main(int argc, char *argv[]) { AdgAlignment *alignment; adg_test_init(&argc, &argv); adg_test_add_object_checks("/adg/alignment/type/object", ADG_TYPE_ALIGNMENT); adg_test_add_entity_checks("/adg/alignment/type/entity", ADG_TYPE_ALIGNMENT); adg_test_add_container_checks("/adg/alignment/type/container", ADG_TYPE_ALIGNMENT); alignment = adg_alignment_new_explicit(0.5, 0.5); adg_container_add(ADG_CONTAINER(alignment), ADG_ENTITY(adg_logo_new())); adg_test_add_global_space_checks("/adg/alignment/behavior/global-space", alignment); alignment = adg_alignment_new_explicit(0.5, 0.5); adg_container_add(ADG_CONTAINER(alignment), ADG_ENTITY(adg_logo_new())); adg_test_add_local_space_checks("/adg/alignment/behavior/local-space", alignment); g_test_add_func("/adg/alignment/property/factor", _adg_property_factor); return g_test_run(); }
int main(int argc, char *argv[]) { AdgContainer *container; adg_test_init(&argc, &argv); g_test_add_func("/adg/container/behavior/misc", _adg_behavior_misc); adg_test_add_object_checks("/adg/container/type/object", ADG_TYPE_CONTAINER); adg_test_add_entity_checks("/adg/container/type/entity", ADG_TYPE_CONTAINER); adg_test_add_container_checks("/adg/container/type/container", ADG_TYPE_CONTAINER); container = adg_container_new(); adg_container_add(container, ADG_ENTITY(adg_logo_new())); adg_test_add_global_space_checks("/adg/container/behavior/global-space", container); container = adg_container_new(); adg_container_add(container, ADG_ENTITY(adg_logo_new())); adg_test_add_local_space_checks("/adg/container/behavior/local-space", container); g_test_add_func("/adg/container/property/child", _adg_property_child); return g_test_run(); }
static void _adg_property_child(void) { AdgContainer *container; AdgEntity *valid_entity, *invalid_entity; GSList *children; container = adg_container_new(); valid_entity = ADG_ENTITY(adg_logo_new()); invalid_entity = adg_test_invalid_pointer(); /* Keep alive the entity between all the tests */ g_object_ref(valid_entity); /* Using the public APIs */ adg_container_add(container, NULL); children = adg_container_children(container); g_assert_null(children); adg_container_add(container, invalid_entity); children = adg_container_children(container); g_assert_null(children); adg_container_add(container, valid_entity); children = adg_container_children(container); g_assert_nonnull(children); g_assert_true(children->data == valid_entity); g_slist_free(children); adg_container_remove(container, invalid_entity); children = adg_container_children(container); g_assert_nonnull(children); g_assert_true(children->data == valid_entity); g_slist_free(children); adg_container_remove(container, valid_entity); children = adg_container_children(container); g_assert_null(children); /* Using GObject property methods */ g_object_set(container, "child", NULL, NULL); children = adg_container_children(container); g_assert_null(children); g_object_set(container, "child", invalid_entity, NULL); children = adg_container_children(container); g_assert_null(children); g_object_set(container, "child", valid_entity, NULL); children = adg_container_children(container); g_assert_nonnull(children); g_assert_true(children->data == valid_entity); g_slist_free(children); adg_container_remove(container, valid_entity); children = adg_container_children(container); g_assert_null(children); adg_entity_destroy(ADG_ENTITY(container)); adg_entity_destroy(valid_entity); }