diff options
author | Ken VanDine <ken.vandine@canonical.com> | 2012-01-31 10:07:09 -0500 |
---|---|---|
committer | Ken VanDine <ken.vandine@canonical.com> | 2012-01-31 10:07:09 -0500 |
commit | c22d308ee469e5e253e694ec812a3d4ab5318ff7 (patch) | |
tree | 0f489d0586d6c5701c663893e64d01190819e23e /tests | |
parent | 5447fecdeb4a3dda31d951555420105fd31b178e (diff) | |
parent | d4a56efd670ae2432da8be9932df365c75ea0d72 (diff) | |
download | libdbusmenu-c22d308ee469e5e253e694ec812a3d4ab5318ff7.tar.gz libdbusmenu-c22d308ee469e5e253e694ec812a3d4ab5318ff7.tar.bz2 libdbusmenu-c22d308ee469e5e253e694ec812a3d4ab5318ff7.zip |
* New upstream release.
* Add property for accessible descriptions
* Use insert/remove signals on GTK3 build
* Change icon data to be a byte stream instead of base64
* Adjust GTK3 include path to match other libs
* Don't get objects from boolean values (LP: #870742)
* Fix depreactions on GTK3 (LP: #917115)
Diffstat (limited to 'tests')
-rw-r--r-- | tests/Makefile.am | 7 | ||||
-rw-r--r-- | tests/Makefile.in | 7 | ||||
-rw-r--r-- | tests/dbusmenu-jsonloader-0.4.pc.in | 2 | ||||
-rw-r--r-- | tests/json-loader.c | 23 | ||||
-rw-r--r-- | tests/test-glib-proxy-client.c | 1 |
5 files changed, 21 insertions, 19 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am index a4e8682..532c14f 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,5 +1,5 @@ -DBUS_RUNNER=dbus-test-runner +DBUS_RUNNER=dbus-test-runner --max-wait=0 CLEANFILES= DISTCLEANFILES= @@ -29,9 +29,6 @@ TESTS += \ test-gtk-parser-test endif -XFAIL_TESTS = \ - test-glib-proxy - # The Python test only work on the system copy of # dbusmenu, so while they can be usefule they're not # good tests of what you're currently building. Handy @@ -86,7 +83,7 @@ TESTS_ENVIRONMENT = env GI_TYPELIB_PATH=$(top_builddir)/libdbusmenu-glib:$(top_b lib_LTLIBRARIES = libdbusmenu-jsonloader.la -libdbusmenu_jsonloaderincludedir=$(includedir)/libdbusmenu-0.4/libdbusmenu-jsonloader/ +libdbusmenu_jsonloaderincludedir=$(includedir)/libdbusmenu-glib-0.4/libdbusmenu-jsonloader/ libdbusmenu_jsonloaderinclude_HEADERS = \ json-loader.h diff --git a/tests/Makefile.in b/tests/Makefile.in index 1745f95..64d50b9 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -657,7 +657,7 @@ target_alias = @target_alias@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -DBUS_RUNNER = dbus-test-runner +DBUS_RUNNER = dbus-test-runner --max-wait=0 CLEANFILES = test-json-01.output.json test-gtk-shortcut-client.pyc \ dbusmenu-gtk/mago_tests/dbusmenu.pyc DISTCLEANFILES = $(OBJECT_XML_REPORT) $(GTK_OBJECT_XML_REPORT) \ @@ -683,9 +683,6 @@ EXTRA_DIST = test-glib-simple-items.py test-gtk-shortcut-client.py \ dbusmenu-gtk/mago_tests/data/static.json \ dbusmenu-gtk/mago_tests/data/test-gtk-label.json \ test-json-01.json -XFAIL_TESTS = \ - test-glib-proxy - # The Python test only work on the system copy of # dbusmenu, so while they can be usefule they're not @@ -704,7 +701,7 @@ TESTS_ENVIRONMENT = env GI_TYPELIB_PATH=$(top_builddir)/libdbusmenu-glib:$(top_b # JSON Loader lib ###################### lib_LTLIBRARIES = libdbusmenu-jsonloader.la -libdbusmenu_jsonloaderincludedir = $(includedir)/libdbusmenu-0.4/libdbusmenu-jsonloader/ +libdbusmenu_jsonloaderincludedir = $(includedir)/libdbusmenu-glib-0.4/libdbusmenu-jsonloader/ libdbusmenu_jsonloaderinclude_HEADERS = \ json-loader.h diff --git a/tests/dbusmenu-jsonloader-0.4.pc.in b/tests/dbusmenu-jsonloader-0.4.pc.in index 62bfeb2..1920d02 100644 --- a/tests/dbusmenu-jsonloader-0.4.pc.in +++ b/tests/dbusmenu-jsonloader-0.4.pc.in @@ -4,7 +4,7 @@ libdir=@libdir@ bindir=@bindir@ includedir=@includedir@ -Cflags: -I${includedir}/libdbusmenu-0.1 +Cflags: -I${includedir}/libdbusmenu-glib-0.4 Requires: dbusmenu-glib-0.4 json-glib-1.0 Libs: -L${libdir} -ldbusmenu-jsonloader diff --git a/tests/json-loader.c b/tests/json-loader.c index 36157dc..7f0ec8e 100644 --- a/tests/json-loader.c +++ b/tests/json-loader.c @@ -21,13 +21,13 @@ with this program. If not, see <http://www.gnu.org/licenses/>. #include "json-loader.h" -static GVariant * node2variant (JsonNode * node); +static GVariant * node2variant (JsonNode * node, const gchar * name); static void array_foreach (JsonArray * array, guint index, JsonNode * node, gpointer user_data) { GVariantBuilder * builder = (GVariantBuilder *)user_data; - GVariant * variant = node2variant(node); + GVariant * variant = node2variant(node, NULL); if (variant != NULL) { g_variant_builder_add_value(builder, variant); } @@ -38,7 +38,7 @@ static void object_foreach (JsonObject * array, const gchar * member, JsonNode * node, gpointer user_data) { GVariantBuilder * builder = (GVariantBuilder *)user_data; - GVariant * variant = node2variant(node); + GVariant * variant = node2variant(node, member); if (variant != NULL) { g_variant_builder_add(builder, "{sv}", member, variant); } @@ -46,7 +46,7 @@ object_foreach (JsonObject * array, const gchar * member, JsonNode * node, gpoin } static GVariant * -node2variant (JsonNode * node) +node2variant (JsonNode * node, const gchar * name) { if (node == NULL) { return NULL; @@ -62,8 +62,17 @@ node2variant (JsonNode * node) return g_variant_new_double(json_node_get_double(node)); case G_TYPE_BOOLEAN: return g_variant_new_boolean(json_node_get_boolean(node)); - case G_TYPE_STRING: - return g_variant_new_string(json_node_get_string(node)); + case G_TYPE_STRING: { + if (g_strcmp0(name, DBUSMENU_MENUITEM_PROP_ICON_DATA) != 0) { + return g_variant_new_string(json_node_get_string(node)); + } else { + gsize length; + guchar * b64 = g_base64_decode(json_node_get_string(node), &length); + GVariant * retval = g_variant_new_fixed_array(G_VARIANT_TYPE_BYTE, b64, length, sizeof(guchar)); + g_free(b64); + return retval; + } + } default: g_assert_not_reached(); } @@ -105,7 +114,7 @@ set_props (DbusmenuMenuitem * mi, JsonObject * node) if (!g_strcmp0(member, "submenu")) { continue; } JsonNode * lnode = json_object_get_member(node, member); - GVariant * variant = node2variant(lnode); + GVariant * variant = node2variant(lnode, member); if (variant != NULL) { dbusmenu_menuitem_property_set_variant(mi, member, variant); diff --git a/tests/test-glib-proxy-client.c b/tests/test-glib-proxy-client.c index 2e1e2d2..d20c27c 100644 --- a/tests/test-glib-proxy-client.c +++ b/tests/test-glib-proxy-client.c @@ -152,7 +152,6 @@ layout_verify_timer (gpointer data) GVariant * value = g_variant_new("i", 0); dbusmenu_menuitem_handle_event(menuroot, "clicked", value, layouton); - g_variant_unref(value); return FALSE; } |