r37812 - /trunk/libgtk2-perl/debian/patches/fix-bindings-tests

ryan52-guest at users.alioth.debian.org ryan52-guest at users.alioth.debian.org
Sun Jun 7 20:01:39 UTC 2009


Author: ryan52-guest
Date: Sun Jun  7 20:01:33 2009
New Revision: 37812

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=37812
Log:
applied upstream

Modified:
    trunk/libgtk2-perl/debian/patches/fix-bindings-tests

Modified: trunk/libgtk2-perl/debian/patches/fix-bindings-tests
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libgtk2-perl/debian/patches/fix-bindings-tests?rev=37812&op=diff
==============================================================================
--- trunk/libgtk2-perl/debian/patches/fix-bindings-tests (original)
+++ trunk/libgtk2-perl/debian/patches/fix-bindings-tests Sun Jun  7 20:01:33 2009
@@ -1,51 +1,50 @@
-in xvfb there is no keymap, so that parts of the tests that rely on it fail.
+From 7bbe695edcc39202baebc6341bd2ed5741c16418 Mon Sep 17 00:00:00 2001
+From: Torsten Schönfeld <kaffeetisch at gmx.de>
+Date: Sun, 07 Jun 2009 18:33:11 +0000
+Subject: Skip a few tests if no keymap is available
 
+Based on a patch provided by Ryan Niebur.
+---
+diff --git a/t/GtkBindings.t b/t/GtkBindings.t
+index 5bf612c..1a53ec5 100644
 --- a/t/GtkBindings.t
 +++ b/t/GtkBindings.t
-@@ -35,6 +35,12 @@
-                                      flags         => ['run-last','action'],
-                                      class_closure => \&do_mysig_with_float },
-              };
-+
-+use Gtk2::Gdk::Keysyms;
-+my $display = Gtk2::Gdk::Display -> get_default();
-+my $keymap = Gtk2::Gdk::Keymap -> get_for_display ($display);
-+my(@other_keys) = $keymap -> get_entries_for_keyval($Gtk2::Gdk::Keysyms{ Escape });
-+
- my $mysig_seen;
- sub do_mysig {
-   #Test::More::diag ("mysig runs");
-@@ -154,7 +160,10 @@
+@@ -77,6 +77,12 @@ use warnings;
+ # Note: need '-init' to make Gtk2::Rc do its thing ...
+ use Gtk2::TestHelper tests => 43;
+ 
++# A few tests below require a valid keymap, which some display servers lack.
++# So try to determine if we're affected and skip the relevant tests if so.
++my $keymap = Gtk2::Gdk::Keymap->get_default();
++my @entries = $keymap->get_entries_for_keyval(
++  Gtk2::Gdk->keyval_from_name('Return'));
++my $have_valid_keymap = scalar @entries != 0;
+ 
+ #-----------------------------------------------------------------------------
+ # new()
+@@ -154,7 +160,10 @@ HERE
  # As of Gtk 2.12 $gtkobj->bindings_activate() only actually works on a
  # Gtk2::Widget, not a Gtk2::Object, hence using My::Widget to exercise
  # add_path() instead of My::Object.
 -{
 +SKIP: {
-+    if (scalar(@other_keys) == 0) {
-+        skip "Needs a keymap", 5;
-+    }
++  skip 'Need a keymap', 5
++    unless $have_valid_keymap;
++
    my $my_widget_bindings = Gtk2::BindingSet->find('my_widget_bindings');
    ok ($my_widget_bindings, 'find() of RC parsed bindings');
  
-@@ -374,12 +383,16 @@
-   #
-   my $mywidget = My::Widget->new;
+@@ -342,7 +351,10 @@ HERE
+ # entry_skip()
  
-+ SKIP: {
-+    if (scalar(@other_keys) == 0) {
-+        skip "Needs a keymap", 2;
-+    }
-   $mywidgetsig_seen = 0;
--  ok ($mywidget->bindings_activate (Gtk2::Gdk->keyval_from_name('Return'),[]),
--      'before entry_skip(), bindings_activate return true on mywidget');
--  is ($mywidgetsig_seen, 1,
--      'before entry_skip(), bindings_activate runs mywidgetsig on mywidget');
--
-+    ok ($mywidget->bindings_activate (Gtk2::Gdk->keyval_from_name('Return'),[]),
-+        'before entry_skip(), bindings_activate return true on mywidget');
-+    is ($mywidgetsig_seen, 1,
-+        'before entry_skip(), bindings_activate runs mywidgetsig on mywidget');
-+  }
-   $skip_bindings->add_path ('widget-class', 'My__Widget',
-                             Gtk2::GTK_PATH_PRIO_HIGHEST);
- 
+ # basic invocation on object doesn't dispatch
+-{
++SKIP: {
++  skip 'Need a keymap', 8
++    unless $have_valid_keymap;
++
+   my $skip_bindings = Gtk2::BindingSet->new ('entry_skip_test');
+   my $keyval = Gtk2::Gdk->keyval_from_name('Return');
+   my $modifiers = [];
+--
+cgit v0.8.2




More information about the Pkg-perl-cvs-commits mailing list