[libgtk2-perl] 02/03: Disable some tests that are known to behave erratically. Cherry-picked from upstream. (Closes: #742687)

Intrigeri intrigeri at moszumanska.debian.org
Fri May 30 10:33:51 UTC 2014


This is an automated email from the git hooks/post-receive script.

intrigeri pushed a commit to branch master
in repository libgtk2-perl.

commit 387d516e6a65f710c4faa5fa927edefbe95b7f22
Author: intrigeri <intrigeri at boum.org>
Date:   Fri May 30 10:28:15 2014 +0000

    Disable some tests that are known to behave erratically. Cherry-picked from upstream. (Closes: #742687)
---
 ...e-tests-that-are-known-to-behave-erratica.patch | 786 +++++++++++++++++++++
 debian/patches/series                              |   1 +
 2 files changed, 787 insertions(+)

diff --git a/debian/patches/Disable-some-tests-that-are-known-to-behave-erratica.patch b/debian/patches/Disable-some-tests-that-are-known-to-behave-erratica.patch
new file mode 100644
index 0000000..5135f3c
--- /dev/null
+++ b/debian/patches/Disable-some-tests-that-are-known-to-behave-erratica.patch
@@ -0,0 +1,786 @@
+From: =?utf-8?q?Torsten_Sch=C3=B6nfeld?= <kaffeetisch at gmx.de>
+Date: Thu, 29 May 2014 23:01:55 +0200
+Origin: https://git.gnome.org/browse/perl-Gtk2/commit/?id=e5a2004f41c82efb31e7823a9c44f29180d52be2
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=727085
+Bug-Debian: https://bugs.debian.org/742687
+Subject: Disable some tests that are known to behave erratically
+
+In certain environments, they either hang or cause crashes.  There is only a
+diminishingly small chance that this behaviour is due to bugs in the bindings,
+so simply disable the tests by moving them into "xt", the directory for "author
+tests".
+---
+ t/GdkDnd.t             | 121 -------------------------------------------
+ t/GtkDnd.t             | 136 -------------------------------------------------
+ t/GtkSocket-GtkPlug.t  | 105 --------------------------------------
+ xt/GdkDnd.t            | 121 +++++++++++++++++++++++++++++++++++++++++++
+ xt/GtkDnd.t            | 136 +++++++++++++++++++++++++++++++++++++++++++++++++
+ xt/GtkSocket-GtkPlug.t | 105 ++++++++++++++++++++++++++++++++++++++
+ 6 files changed, 362 insertions(+), 362 deletions(-)
+ delete mode 100644 t/GdkDnd.t
+ delete mode 100644 t/GtkDnd.t
+ delete mode 100644 t/GtkSocket-GtkPlug.t
+ create mode 100644 xt/GdkDnd.t
+ create mode 100644 xt/GtkDnd.t
+ create mode 100644 xt/GtkSocket-GtkPlug.t
+
+diff --git a/t/GdkDnd.t b/t/GdkDnd.t
+deleted file mode 100644
+index 24f67a4..0000000
+--- a/t/GdkDnd.t
++++ /dev/null
+@@ -1,121 +0,0 @@
+-#!/usr/bin/perl -w
+-use strict;
+-use Gtk2::TestHelper tests => 26;
+-
+-# $Id$
+-
+-my $window = Gtk2::Window -> new();
+-$window -> realize();
+-$window -> show_now;
+-
+-###############################################################################
+-
+-my $context = Gtk2::Gdk::DragContext -> new();
+-isa_ok($context, "Gtk2::Gdk::DragContext");
+-
+-my @targets = (Gtk2::Gdk::Atom -> new("target-string"),
+-               Gtk2::Gdk::Atom -> new("target-bitmap"));
+-
+-$context = Gtk2::Gdk::DragContext -> begin($window -> window(), @targets);
+-isa_ok($context, "Gtk2::Gdk::DragContext");
+-
+-my ($destination, $protocol);
+-
+-SKIP: {
+-  skip("GdkScreen is new in 2.2", 2)
+-    unless Gtk2 -> CHECK_VERSION(2, 2, 0);
+-
+-  ($destination, $protocol) =  $context -> find_window_for_screen($window -> window(), Gtk2::Gdk::Screen -> get_default(), 0, 0);
+-
+-  ok(not defined $destination or ref $destination eq "Gtk2::Gdk::Window");
+-  ok(not defined $destination or $protocol);
+-}
+-
+-$context -> abort(0);
+-
+-###############################################################################
+-
+-$context = Gtk2::Gdk::DragContext -> begin($window -> window(), @targets);
+-isa_ok($context, "Gtk2::Gdk::DragContext");
+-
+-ok($context -> protocol());
+-is($context -> is_source(), 1);
+-is($context -> source_window(), $window -> window());
+-is_deeply([map { $_ -> name() } $context -> targets()],
+-          [map { $_ -> name() } @targets]);
+-isa_ok(($context -> targets())[0], "Gtk2::Gdk::Atom");
+-
+-($destination, $protocol) = $context -> find_window($window -> window(), 0, 0);
+-
+-ok(not defined $destination or ref $destination eq "Gtk2::Gdk::Window");
+-ok(not defined $destination or $protocol);
+-
+-SKIP: {
+-  skip "find_window returned no destination window, skipping the tests that need one", 9
+-    unless defined $destination;
+-
+-  # FIXME: what about the return value?
+-  $context -> motion($destination, $protocol, 100, 100, [qw(copy)], [qw(copy move)], 0);
+-
+-  ok($context -> actions() == [qw(copy move)]);
+-  ok($context -> suggested_action() == qw(copy));
+-  is($context -> start_time(), 0);
+-
+-  SKIP: {
+-    skip "can't do x11 stuff on this platform", 2
+-      if $^O eq 'MSWin32';
+-
+-    is_deeply([Gtk2::Gdk::DragContext -> get_protocol($destination -> get_xid())],
+-              [$destination -> get_xid(), $protocol]);
+-
+-    skip("get_protocol_for_display is new in 2.2", 1)
+-      unless Gtk2->CHECK_VERSION (2, 2, 0);
+-
+-    is_deeply([Gtk2::Gdk::DragContext -> get_protocol_for_display(Gtk2::Gdk::Display -> get_default(), $destination -> get_xid())],
+-              [$destination -> get_xid(), $protocol]);
+-  }
+-
+-  is($context -> dest_window(), $destination);
+-  my $selection = $context -> get_selection();
+-  SKIP: {
+-    skip "selection test: get_selection returned undef", 1
+-      unless defined $selection;
+-    isa_ok($selection, "Gtk2::Gdk::Atom");
+-  }
+-
+-  $context -> status(qw(move), 0);
+-  ok($context -> action() == qw(move));
+-
+-  $context -> status([], 0);
+-
+-  $context -> drop_reply(1, 0);
+-  $context -> drop_finish(1, 0);
+-
+-  SKIP: {
+-    skip "new 2.6 stuff", 1
+-      unless Gtk2 -> CHECK_VERSION(2, 6, 0);
+-
+-    like($context -> drag_drop_succeeded(), qr/^(?:1|)$/);
+-  }
+-
+-  $context -> drop(0);
+-  $context -> abort(0);
+-}
+-
+-SKIP: {
+-  skip 'new 2.22 stuff', 5
+-    unless Gtk2->CHECK_VERSION(2, 22, 0);
+-
+-  my $context = Gtk2::Gdk::DragContext -> begin($window -> window(), @targets);
+-  ok(defined $context -> get_actions());
+-  ok(defined $context -> get_selected_action());
+-  ok(defined $context -> get_suggested_action());
+-  is($context -> get_source_window(), $window -> window());
+-  is_deeply([map { $_ -> name() } $context -> list_targets()],
+-            [map { $_ -> name() } @targets]);
+-}
+-
+-__END__
+-
+-Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS for the
+-full list).  See LICENSE for more information.
+diff --git a/t/GtkDnd.t b/t/GtkDnd.t
+deleted file mode 100644
+index b9ee019..0000000
+--- a/t/GtkDnd.t
++++ /dev/null
+@@ -1,136 +0,0 @@
+-#!/usr/bin/perl -w
+-use strict;
+-use Gtk2::TestHelper tests => 6;
+-
+-# $Id$
+-
+-my $button = Gtk2::Button -> new("Bla");
+-my $window = Gtk2::Window -> new();
+-
+-$window -> add($button);
+-$window -> realize();
+-$button -> realize();
+-
+-# Dest ########################################################################
+-
+-$button -> drag_dest_set("all", "copy",
+-  { target => "BITMAP", info => 23 },
+-  { target => "STRING", flags => ["same-app", "same-widget"], info => 42 }
+-);
+-
+-my $list = $button -> drag_dest_get_target_list();
+-$button -> drag_dest_set_target_list(undef);
+-$button -> drag_dest_set_target_list($list);
+-
+-is($list -> find(Gtk2::Gdk -> TARGET_BITMAP), 23);
+-is($list -> find(Gtk2::Gdk -> TARGET_STRING), 42);
+-
+-my $pixbuf = Gtk2::Gdk::Pixbuf -> new("rgb", 0, 8, 10, 10);
+-
+-my $event = Gtk2::Gdk::Event -> new("button-press");
+-
+-my $context = Gtk2::Drag -> begin($button, $list, "default", 1, $event);
+-SKIP: {
+-  skip "context test", 1 unless defined $context;
+-  isa_ok($context, "Gtk2::Gdk::DragContext");
+-}
+-
+-$context = $button -> drag_begin($list, "default", 1, $event);
+-SKIP: {
+-  skip "context test", 1 unless defined $context;
+-  isa_ok($context, "Gtk2::Gdk::DragContext");
+-}
+-
+-if (defined($context)) {
+-  # warn $button -> drag_dest_find_target($context, $list);
+-  # $context -> finish(1, 0, 0);
+-  # $button -> drag_get_data($context, Gtk2::Gdk -> TARGET_STRING, 0);
+-  # warn $context -> get_source_widget();
+-
+-  $context -> set_icon_widget($window, 5, 5);
+-
+-  my $pixmap = Gtk2::Gdk::Pixmap->new ($window->window, 16, 16, -1);
+-  $context -> set_icon_pixmap($pixmap->get_colormap, $pixmap, undef, 5, 5);
+-  my $mask = Gtk2::Gdk::Pixmap->new ($window->window, 16, 16, 1);
+-  $context -> set_icon_pixmap($pixmap->get_colormap, $pixmap, $mask, 5, 5);
+-
+-  $context -> set_icon_pixbuf($pixbuf, 5, 5);
+-  $context -> set_icon_stock("gtk-add", 5, 5);
+-  $context -> set_icon_default();
+-
+-  SKIP: {
+-    skip "new 2.8 stuff", 0
+-      unless Gtk2 -> CHECK_VERSION(2, 8, 0);
+-
+-    $context -> set_icon_name("gtk-add", 5, 5);
+-  }
+-}
+-
+-is($button -> drag_check_threshold(5, 5, 100, 100), 1);
+-
+-$button -> drag_highlight();
+-$button -> drag_unhighlight();
+-
+-$button -> drag_dest_set_proxy($window -> window(), "xdnd", 0);
+-
+-SKIP: {
+-  skip("2.6 stuff", 0)
+-    unless Gtk2 -> CHECK_VERSION(2, 6, 0);
+-
+-  $button -> drag_dest_add_text_targets();
+-  $button -> drag_dest_add_image_targets();
+-  $button -> drag_dest_add_uri_targets();
+-}
+-
+-SKIP: {
+-  skip("2.10 stuff", 1)
+-    unless Gtk2 -> CHECK_VERSION(2, 10, 0);
+-
+-  $button -> drag_dest_set_track_motion(FALSE);
+-  ok(!$button -> drag_dest_get_track_motion());
+-}
+-
+-$button -> drag_dest_unset();
+-
+-# Source ######################################################################
+-
+-$button -> drag_source_set("shift-mask", "copy",
+-  { target => "BITMAP", info => 23 },
+-  { target => "STRING", flags => ["same-app", "same-widget"], info => 42 }
+-);
+-
+-# $button -> drag_source_set_icon(...);
+-$button -> drag_source_set_icon_pixbuf($pixbuf);
+-$button -> drag_source_set_icon_stock("gtk-quit");
+-
+-SKIP: {
+-  skip("drag_source_[sg]et_target_list is new in 2.4", 0)
+-    unless Gtk2->CHECK_VERSION (2, 4, 0);
+-
+-  $list = $button -> drag_source_get_target_list();
+-  $button -> drag_source_set_target_list(undef);
+-  $button -> drag_source_set_target_list($list);
+-}
+-
+-SKIP: {
+-  skip("2.6 stuff", 0)
+-    unless Gtk2 -> CHECK_VERSION(2, 6, 0);
+-
+-  $button -> drag_source_add_text_targets();
+-  $button -> drag_source_add_image_targets();
+-  $button -> drag_source_add_uri_targets();
+-}
+-
+-SKIP: {
+-  skip("2.8 stuff", 0)
+-    unless Gtk2 -> CHECK_VERSION(2, 8, 0);
+-
+-  $button -> drag_source_set_icon_name("gtk-ok");
+-}
+-
+-$button -> drag_source_unset();
+-
+-__END__
+-
+-Copyright (C) 2003-2006 by the gtk2-perl team (see the file AUTHORS for
+-the full list).  See LICENSE for more information.
+diff --git a/t/GtkSocket-GtkPlug.t b/t/GtkSocket-GtkPlug.t
+deleted file mode 100644
+index 20944aa..0000000
+--- a/t/GtkSocket-GtkPlug.t
++++ /dev/null
+@@ -1,105 +0,0 @@
+-#!/usr/bin/perl
+-#
+-# $Id$
+-#
+-
+-# ...despite patches that have been around for a long time, no win32
+-use Gtk2::TestHelper tests => 12, nowin32 => 1;
+-
+-SKIP: {
+-
+-skip "blib can't be found", 6
+-	unless -d "blib";
+-
+-ok( my $win = Gtk2::Window->new );
+-
+-ok( my $socket = Gtk2::Socket->new );
+-$win->add($socket);
+-
+-ok( my $id = $socket->get_id );
+-
+-SKIP: {
+-	skip 'new 2.14 stuff', 2
+-		unless Gtk2->CHECK_VERSION(2, 14, 0);
+-
+-	is( $socket->get_plug_window, undef );
+-	$socket->signal_connect (plug_added => sub {
+-		isa_ok( $socket->get_plug_window, 'Gtk2::Gdk::Window' );
+-	});
+-}
+-
+-my $pid = fork;
+-
+-skip 'fork failed', 2 unless defined $pid && $pid >= 0;
+-
+-if( $pid == 0 )
+-{
+-	exec("$^X -Mblib -e 'my \$id = $id;\n\n" . <<EOL);
+-use Gtk2;
+-
+-Gtk2->init;
+-
+-my \$plug = Gtk2::Plug->new($id);
+-
+-my \$btn = Gtk2::Button->new("gtk-quit");
+-\$btn->signal_connect("clicked" => sub { Gtk2->main_quit; 1; });
+-\$plug->add(\$btn);
+-
+-\$plug->show_all;
+-
+-Glib::Idle->add(sub { \$btn->clicked; 0; });
+-
+-Gtk2->main;'
+-EOL
+-	exit 0;
+-}
+-else
+-{
+-	$socket->signal_connect('plug-removed' => sub {
+-		Gtk2->main_quit;
+-		1;
+-	});
+-	$win->show_all;
+-	Gtk2->main;
+-	ok( waitpid($pid, 0) );
+-}
+-
+-}
+-
+-# Standalone GtkPlug tests.
+-SKIP: {
+-	my $id = 23;
+-	my $display = Gtk2::Gdk::Display->get_default;
+-
+-	# Backwards compatibility tests
+-	my $plug = Gtk2::Plug->new($id);
+-	isa_ok( $plug, 'Gtk2::Plug' );
+-
+-	$plug->construct($id);
+-	$plug->construct_for_display($display, $id);
+-
+-	ok( defined $plug->get_id );
+-
+-	skip 'new 2.14 stuff', 2
+-		unless Gtk2->CHECK_VERSION(2, 14, 0);
+-
+-	is( $plug->get_embedded, FALSE );
+-	is( $plug->get_socket_window, undef );
+-}
+-
+-# Backwards compatibility tests.
+-{
+-	my $id = 23;
+-	my $display = Gtk2::Gdk::Display->get_default;
+-
+-	isa_ok( Gtk2::Plug::new_for_display($display, $id),
+-		'Gtk2::Plug' );
+-
+-	isa_ok( Gtk2::Plug->new_for_display($display, $id),
+-		'Gtk2::Plug' );
+-}
+-
+-__END__
+-
+-Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS for the
+-full list).  See LICENSE for more information.
+diff --git a/xt/GdkDnd.t b/xt/GdkDnd.t
+new file mode 100644
+index 0000000..24f67a4
+--- /dev/null
++++ b/xt/GdkDnd.t
+@@ -0,0 +1,121 @@
++#!/usr/bin/perl -w
++use strict;
++use Gtk2::TestHelper tests => 26;
++
++# $Id$
++
++my $window = Gtk2::Window -> new();
++$window -> realize();
++$window -> show_now;
++
++###############################################################################
++
++my $context = Gtk2::Gdk::DragContext -> new();
++isa_ok($context, "Gtk2::Gdk::DragContext");
++
++my @targets = (Gtk2::Gdk::Atom -> new("target-string"),
++               Gtk2::Gdk::Atom -> new("target-bitmap"));
++
++$context = Gtk2::Gdk::DragContext -> begin($window -> window(), @targets);
++isa_ok($context, "Gtk2::Gdk::DragContext");
++
++my ($destination, $protocol);
++
++SKIP: {
++  skip("GdkScreen is new in 2.2", 2)
++    unless Gtk2 -> CHECK_VERSION(2, 2, 0);
++
++  ($destination, $protocol) =  $context -> find_window_for_screen($window -> window(), Gtk2::Gdk::Screen -> get_default(), 0, 0);
++
++  ok(not defined $destination or ref $destination eq "Gtk2::Gdk::Window");
++  ok(not defined $destination or $protocol);
++}
++
++$context -> abort(0);
++
++###############################################################################
++
++$context = Gtk2::Gdk::DragContext -> begin($window -> window(), @targets);
++isa_ok($context, "Gtk2::Gdk::DragContext");
++
++ok($context -> protocol());
++is($context -> is_source(), 1);
++is($context -> source_window(), $window -> window());
++is_deeply([map { $_ -> name() } $context -> targets()],
++          [map { $_ -> name() } @targets]);
++isa_ok(($context -> targets())[0], "Gtk2::Gdk::Atom");
++
++($destination, $protocol) = $context -> find_window($window -> window(), 0, 0);
++
++ok(not defined $destination or ref $destination eq "Gtk2::Gdk::Window");
++ok(not defined $destination or $protocol);
++
++SKIP: {
++  skip "find_window returned no destination window, skipping the tests that need one", 9
++    unless defined $destination;
++
++  # FIXME: what about the return value?
++  $context -> motion($destination, $protocol, 100, 100, [qw(copy)], [qw(copy move)], 0);
++
++  ok($context -> actions() == [qw(copy move)]);
++  ok($context -> suggested_action() == qw(copy));
++  is($context -> start_time(), 0);
++
++  SKIP: {
++    skip "can't do x11 stuff on this platform", 2
++      if $^O eq 'MSWin32';
++
++    is_deeply([Gtk2::Gdk::DragContext -> get_protocol($destination -> get_xid())],
++              [$destination -> get_xid(), $protocol]);
++
++    skip("get_protocol_for_display is new in 2.2", 1)
++      unless Gtk2->CHECK_VERSION (2, 2, 0);
++
++    is_deeply([Gtk2::Gdk::DragContext -> get_protocol_for_display(Gtk2::Gdk::Display -> get_default(), $destination -> get_xid())],
++              [$destination -> get_xid(), $protocol]);
++  }
++
++  is($context -> dest_window(), $destination);
++  my $selection = $context -> get_selection();
++  SKIP: {
++    skip "selection test: get_selection returned undef", 1
++      unless defined $selection;
++    isa_ok($selection, "Gtk2::Gdk::Atom");
++  }
++
++  $context -> status(qw(move), 0);
++  ok($context -> action() == qw(move));
++
++  $context -> status([], 0);
++
++  $context -> drop_reply(1, 0);
++  $context -> drop_finish(1, 0);
++
++  SKIP: {
++    skip "new 2.6 stuff", 1
++      unless Gtk2 -> CHECK_VERSION(2, 6, 0);
++
++    like($context -> drag_drop_succeeded(), qr/^(?:1|)$/);
++  }
++
++  $context -> drop(0);
++  $context -> abort(0);
++}
++
++SKIP: {
++  skip 'new 2.22 stuff', 5
++    unless Gtk2->CHECK_VERSION(2, 22, 0);
++
++  my $context = Gtk2::Gdk::DragContext -> begin($window -> window(), @targets);
++  ok(defined $context -> get_actions());
++  ok(defined $context -> get_selected_action());
++  ok(defined $context -> get_suggested_action());
++  is($context -> get_source_window(), $window -> window());
++  is_deeply([map { $_ -> name() } $context -> list_targets()],
++            [map { $_ -> name() } @targets]);
++}
++
++__END__
++
++Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS for the
++full list).  See LICENSE for more information.
+diff --git a/xt/GtkDnd.t b/xt/GtkDnd.t
+new file mode 100644
+index 0000000..b9ee019
+--- /dev/null
++++ b/xt/GtkDnd.t
+@@ -0,0 +1,136 @@
++#!/usr/bin/perl -w
++use strict;
++use Gtk2::TestHelper tests => 6;
++
++# $Id$
++
++my $button = Gtk2::Button -> new("Bla");
++my $window = Gtk2::Window -> new();
++
++$window -> add($button);
++$window -> realize();
++$button -> realize();
++
++# Dest ########################################################################
++
++$button -> drag_dest_set("all", "copy",
++  { target => "BITMAP", info => 23 },
++  { target => "STRING", flags => ["same-app", "same-widget"], info => 42 }
++);
++
++my $list = $button -> drag_dest_get_target_list();
++$button -> drag_dest_set_target_list(undef);
++$button -> drag_dest_set_target_list($list);
++
++is($list -> find(Gtk2::Gdk -> TARGET_BITMAP), 23);
++is($list -> find(Gtk2::Gdk -> TARGET_STRING), 42);
++
++my $pixbuf = Gtk2::Gdk::Pixbuf -> new("rgb", 0, 8, 10, 10);
++
++my $event = Gtk2::Gdk::Event -> new("button-press");
++
++my $context = Gtk2::Drag -> begin($button, $list, "default", 1, $event);
++SKIP: {
++  skip "context test", 1 unless defined $context;
++  isa_ok($context, "Gtk2::Gdk::DragContext");
++}
++
++$context = $button -> drag_begin($list, "default", 1, $event);
++SKIP: {
++  skip "context test", 1 unless defined $context;
++  isa_ok($context, "Gtk2::Gdk::DragContext");
++}
++
++if (defined($context)) {
++  # warn $button -> drag_dest_find_target($context, $list);
++  # $context -> finish(1, 0, 0);
++  # $button -> drag_get_data($context, Gtk2::Gdk -> TARGET_STRING, 0);
++  # warn $context -> get_source_widget();
++
++  $context -> set_icon_widget($window, 5, 5);
++
++  my $pixmap = Gtk2::Gdk::Pixmap->new ($window->window, 16, 16, -1);
++  $context -> set_icon_pixmap($pixmap->get_colormap, $pixmap, undef, 5, 5);
++  my $mask = Gtk2::Gdk::Pixmap->new ($window->window, 16, 16, 1);
++  $context -> set_icon_pixmap($pixmap->get_colormap, $pixmap, $mask, 5, 5);
++
++  $context -> set_icon_pixbuf($pixbuf, 5, 5);
++  $context -> set_icon_stock("gtk-add", 5, 5);
++  $context -> set_icon_default();
++
++  SKIP: {
++    skip "new 2.8 stuff", 0
++      unless Gtk2 -> CHECK_VERSION(2, 8, 0);
++
++    $context -> set_icon_name("gtk-add", 5, 5);
++  }
++}
++
++is($button -> drag_check_threshold(5, 5, 100, 100), 1);
++
++$button -> drag_highlight();
++$button -> drag_unhighlight();
++
++$button -> drag_dest_set_proxy($window -> window(), "xdnd", 0);
++
++SKIP: {
++  skip("2.6 stuff", 0)
++    unless Gtk2 -> CHECK_VERSION(2, 6, 0);
++
++  $button -> drag_dest_add_text_targets();
++  $button -> drag_dest_add_image_targets();
++  $button -> drag_dest_add_uri_targets();
++}
++
++SKIP: {
++  skip("2.10 stuff", 1)
++    unless Gtk2 -> CHECK_VERSION(2, 10, 0);
++
++  $button -> drag_dest_set_track_motion(FALSE);
++  ok(!$button -> drag_dest_get_track_motion());
++}
++
++$button -> drag_dest_unset();
++
++# Source ######################################################################
++
++$button -> drag_source_set("shift-mask", "copy",
++  { target => "BITMAP", info => 23 },
++  { target => "STRING", flags => ["same-app", "same-widget"], info => 42 }
++);
++
++# $button -> drag_source_set_icon(...);
++$button -> drag_source_set_icon_pixbuf($pixbuf);
++$button -> drag_source_set_icon_stock("gtk-quit");
++
++SKIP: {
++  skip("drag_source_[sg]et_target_list is new in 2.4", 0)
++    unless Gtk2->CHECK_VERSION (2, 4, 0);
++
++  $list = $button -> drag_source_get_target_list();
++  $button -> drag_source_set_target_list(undef);
++  $button -> drag_source_set_target_list($list);
++}
++
++SKIP: {
++  skip("2.6 stuff", 0)
++    unless Gtk2 -> CHECK_VERSION(2, 6, 0);
++
++  $button -> drag_source_add_text_targets();
++  $button -> drag_source_add_image_targets();
++  $button -> drag_source_add_uri_targets();
++}
++
++SKIP: {
++  skip("2.8 stuff", 0)
++    unless Gtk2 -> CHECK_VERSION(2, 8, 0);
++
++  $button -> drag_source_set_icon_name("gtk-ok");
++}
++
++$button -> drag_source_unset();
++
++__END__
++
++Copyright (C) 2003-2006 by the gtk2-perl team (see the file AUTHORS for
++the full list).  See LICENSE for more information.
+diff --git a/xt/GtkSocket-GtkPlug.t b/xt/GtkSocket-GtkPlug.t
+new file mode 100644
+index 0000000..20944aa
+--- /dev/null
++++ b/xt/GtkSocket-GtkPlug.t
+@@ -0,0 +1,105 @@
++#!/usr/bin/perl
++#
++# $Id$
++#
++
++# ...despite patches that have been around for a long time, no win32
++use Gtk2::TestHelper tests => 12, nowin32 => 1;
++
++SKIP: {
++
++skip "blib can't be found", 6
++	unless -d "blib";
++
++ok( my $win = Gtk2::Window->new );
++
++ok( my $socket = Gtk2::Socket->new );
++$win->add($socket);
++
++ok( my $id = $socket->get_id );
++
++SKIP: {
++	skip 'new 2.14 stuff', 2
++		unless Gtk2->CHECK_VERSION(2, 14, 0);
++
++	is( $socket->get_plug_window, undef );
++	$socket->signal_connect (plug_added => sub {
++		isa_ok( $socket->get_plug_window, 'Gtk2::Gdk::Window' );
++	});
++}
++
++my $pid = fork;
++
++skip 'fork failed', 2 unless defined $pid && $pid >= 0;
++
++if( $pid == 0 )
++{
++	exec("$^X -Mblib -e 'my \$id = $id;\n\n" . <<EOL);
++use Gtk2;
++
++Gtk2->init;
++
++my \$plug = Gtk2::Plug->new($id);
++
++my \$btn = Gtk2::Button->new("gtk-quit");
++\$btn->signal_connect("clicked" => sub { Gtk2->main_quit; 1; });
++\$plug->add(\$btn);
++
++\$plug->show_all;
++
++Glib::Idle->add(sub { \$btn->clicked; 0; });
++
++Gtk2->main;'
++EOL
++	exit 0;
++}
++else
++{
++	$socket->signal_connect('plug-removed' => sub {
++		Gtk2->main_quit;
++		1;
++	});
++	$win->show_all;
++	Gtk2->main;
++	ok( waitpid($pid, 0) );
++}
++
++}
++
++# Standalone GtkPlug tests.
++SKIP: {
++	my $id = 23;
++	my $display = Gtk2::Gdk::Display->get_default;
++
++	# Backwards compatibility tests
++	my $plug = Gtk2::Plug->new($id);
++	isa_ok( $plug, 'Gtk2::Plug' );
++
++	$plug->construct($id);
++	$plug->construct_for_display($display, $id);
++
++	ok( defined $plug->get_id );
++
++	skip 'new 2.14 stuff', 2
++		unless Gtk2->CHECK_VERSION(2, 14, 0);
++
++	is( $plug->get_embedded, FALSE );
++	is( $plug->get_socket_window, undef );
++}
++
++# Backwards compatibility tests.
++{
++	my $id = 23;
++	my $display = Gtk2::Gdk::Display->get_default;
++
++	isa_ok( Gtk2::Plug::new_for_display($display, $id),
++		'Gtk2::Plug' );
++
++	isa_ok( Gtk2::Plug->new_for_display($display, $id),
++		'Gtk2::Plug' );
++}
++
++__END__
++
++Copyright (C) 2003 by the gtk2-perl team (see the file AUTHORS for the
++full list).  See LICENSE for more information.
diff --git a/debian/patches/series b/debian/patches/series
index b9db011..d5668cc 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
 30-disable_libgtk_version_check.patch
 fix-typo.patch
+Disable-some-tests-that-are-known-to-behave-erratica.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libgtk2-perl.git



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