diff options
author | Padraig O'Briain <padraigo@src.gnome.org> | 2002-10-30 09:42:30 +0000 |
---|---|---|
committer | Padraig O'Briain <padraigo@src.gnome.org> | 2002-10-30 09:42:30 +0000 |
commit | 3cc3023a48d1dea633aa141bf25cf07c31200121 (patch) | |
tree | 40d3f0ffa636df9d1abd0e1a09975ba0330959ae /tests | |
parent | db59cabaac06c79f770b580a349a97d5762a3930 (diff) | |
download | atk-3cc3023a48d1dea633aa141bf25cf07c31200121.tar.gz |
Add reference to atk/atkrelationtype.h
* atk/Makefile.am, atk/atk.h: Add reference to atk/atkrelationtype.h
* atk/atkaction.[ch]: Add atk_action_get_localized_name.
* atk/atkobject.[ch]: Add atk_role_get_localized_name,
atk_object_add_relationship and atk_object_remove_relationship
Add new roles ATK_ROLE_HEADER, ATK_ROLE_FOOTER, ATK_ROLE_PARAGRAPH
and ATK_ROLE_RULER
* atk/atkrelation.h: Move definition of AtkRelationType to
atk/relationtype.h
* atk/atkstate.h: Add new state ATK_STATE_MANAGES_DESCENDANTS
* atk/atktext.[ch]: Add text-attributes-changed signal.
* docs/atk-sections.txt, docs/tmpl/atkaction.sgml: Add new functions.
* docs/tmpl/atkobject.sgml: Add new functions and new roles.
* docs/tmpl/atkrelation.sgml: Add new relations
* docs/tmpl/atkstate.sgml: Add new state
* docs/tmpl/atktext.sgml: Add new signal
* tests/testrelation.c: Add tests for new relationship functions.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/testrelation.c | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/tests/testrelation.c b/tests/testrelation.c index 806e48a..b42f7c2 100644 --- a/tests/testrelation.c +++ b/tests/testrelation.c @@ -29,6 +29,12 @@ test_relation (void) { AtkRelationType type1, type2; G_CONST_RETURN gchar *name; + AtkObject *obj; + gboolean ret_value; + AtkRelationSet *set; + AtkRelation *relation; + gint n_relations; + GPtrArray *array; name = atk_relation_type_get_name (ATK_RELATION_LABEL_FOR); g_return_val_if_fail (name, FALSE); @@ -82,6 +88,65 @@ test_relation (void) g_print ("Unexpected name for undefined type %s\n", name); return FALSE; } + + obj = g_object_new (ATK_TYPE_OBJECT, NULL); + ret_value = atk_object_add_relationship (obj, ATK_RELATION_LABEL_FOR, obj); + if (!ret_value) + { + g_print ("Unexpected return value for atk_object_add_relationship\n"); + return FALSE; + } + set = atk_object_ref_relation_set (obj); + if (!set) + { + g_print ("Unexpected return value for atk_object_ref_relation_set\n"); + return FALSE; + } + n_relations = atk_relation_set_get_n_relations (set); + if (n_relations != 1) + { + g_print ("Unexpected return value (%d) for atk_relation_set_get_n_relations expected value: %d\n", n_relations, 1); + return FALSE; + } + relation = atk_relation_set_get_relation (set, 0); + if (!relation) + { + g_print ("Unexpected return value for atk_object_relation_set_get_relation\n"); + return FALSE; + } + type1 = atk_relation_get_relation_type (relation); + if (type1 != ATK_RELATION_LABEL_FOR) + { + g_print ("Unexpected return value for atk_relation_get_relation_type\n"); + return FALSE; + } + array = atk_relation_get_target (relation); + if (obj != g_ptr_array_index (array, 0)) + { + g_print ("Unexpected return value for atk_relation_get_target\n"); + return FALSE; + } + g_object_unref (set); + ret_value = atk_object_remove_relationship (obj, ATK_RELATION_LABEL_FOR, obj); + if (!ret_value) + { + g_print ("Unexpected return value for atk_object_remove_relationship\n"); + return FALSE; + } + set = atk_object_ref_relation_set (obj); + if (!set) + { + g_print ("Unexpected return value for atk_object_ref_relation_set\n"); + return FALSE; + } + n_relations = atk_relation_set_get_n_relations (set); + if (n_relations != 0) + { + g_print ("Unexpected return value (%d) for atk_relation_set_get_n_relations expected value: %d\n", n_relations, 0); + return FALSE; + } + g_object_unref (set); + g_object_unref (obj); return TRUE; } |