23107507 perl-tk tests fail to work inside the userland test framework
authorRich Burridge <rich.burridge@oracle.com>
Tue, 06 Dec 2016 15:40:36 -0800
changeset 7445 41ea11d1d1e5
parent 7444 e192b873e756
child 7446 f420f2219a19
23107507 perl-tk tests fail to work inside the userland test framework
components/perl_modules/perl-tk/Makefile
components/perl_modules/perl-tk/start_Xvfb
components/perl_modules/perl-tk/stop_Xvfb
components/perl_modules/perl-tk/test/results-5.22-64.master
--- a/components/perl_modules/perl-tk/Makefile	Wed Nov 23 14:48:16 2016 -0800
+++ b/components/perl_modules/perl-tk/Makefile	Tue Dec 06 15:40:36 2016 -0800
@@ -49,15 +49,34 @@
 
 ASLR_MODE = $(ASLR_NOT_APPLICABLE)
 
-COMPONENT_TEST_TARGETS = test
+COMPONENT_TEST_ENV =		DISPLAY=:1
+COMPONENT_TEST_TARGETS =	test
+
+# Tests are run using an X virtual framebuffer.
+# When we have the equivalent of REQUIRED_PACKAGES for test dependencies,
+# then we will need to make sure that x11/server/xvfb is included in that list.
+
+COMPONENT_PRE_TEST_ACTION = \
+	$(SHELL) $(COMPONENT_DIR)/start_Xvfb $(COMPONENT_DIR)
+COMPONENT_POST_TEST_ACTION = \
+	$(SHELL) $(COMPONENT_DIR)/stop_Xvfb $(COMPONENT_DIR)
+
+COMPONENT_TEST_TRANSFORMS += \
+	'-e "/Entering directory/d"' \
+	'-e "/Leaving directory/d"' \
+	'-e "/^chmod/d"' \
+	'-e "/^make/d"' \
+	'-e "/^Stack moved/d"' \
+	'-e "/\. update/d"' \
+	'-e "/\.label/d"' \
+	'-e "/\.toplevel/d"' \
+	'-e "/OPTIMIZE/d"' \
+	'-e "s/, *[0-9][0-9]* wallclock secs (.*CPU)$$/, <TIMINGS REMOVED>/" '
 
 build:		$(BUILD_64)
 
 install:	$(INSTALL_64)
 
-# Tests work but require an X display and for some reason does not like
-# our test harness.  Unable to connect to X display.
-# 23107507 perl-tk tests fail to work inside the userland test framework
 test:		$(TEST_64)
 
 system-test:    $(SYSTEM_TESTS_NOT_IMPLEMENTED)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/perl_modules/perl-tk/start_Xvfb	Tue Dec 06 15:40:36 2016 -0800
@@ -0,0 +1,40 @@
+#!/bin/bash
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+#
+
+#
+# Script to start up an X virtual framebuffer to use with perl-tk tests
+# and save the Xvfb pid number in a file (so it can later be killed).
+#
+# $1 is the pathname of the directory to write the Xvfb pid file to.
+#
+/usr/bin/Xvfb :1 &
+PID=$!
+echo $PID > $1/Xvfb_pid
+#
+# Sleep a bit to allow Xvfb to get up'n'running.
+#
+sleep 5
+exit 0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/perl_modules/perl-tk/stop_Xvfb	Tue Dec 06 15:40:36 2016 -0800
@@ -0,0 +1,35 @@
+#!/bin/bash
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+#
+
+#
+# Script to stop the X virtual framebuffer used to run the perl-tk tests and
+# remove the file containing the Xvfb pid #.
+#
+# $1 is the pathname of the directory containing the Xvfb pid file.
+#
+kill -9 `cat $1/Xvfb_pid`
+/usr/bin/rm $1/Xvfb_pid
+exit 0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/perl_modules/perl-tk/test/results-5.22-64.master	Tue Dec 06 15:40:36 2016 -0800
@@ -0,0 +1,183 @@
+Manifying 102 pod documents
+Manifying 1 pod document
+Manifying 2 pod documents
+Running Mkbootstrap for Tk::X ()
+Running Mkbootstrap for Tk::Xlib ()
+Running Mkbootstrap for Tk::WinPhoto ()
+Manifying 1 pod document
+Running Mkbootstrap for Tk::Pixmap ()
+Running Mkbootstrap for Tk::TixGrid ()
+Manifying 1 pod document
+Running Mkbootstrap for Tk::Text ()
+Running Mkbootstrap for Tk::TList ()
+Running Mkbootstrap for Tk::Scrollbar ()
+Running Mkbootstrap for Tk::Scale ()
+Running Mkbootstrap for Tk::PNG ()
+Manifying 1 pod document
+Running Mkbootstrap for Tk::NBFrame ()
+Running Mkbootstrap for Tk::Mwm ()
+Running Mkbootstrap for Tk::Menubutton ()
+Running Mkbootstrap for Tk::Listbox ()
+Running Mkbootstrap for Tk::JPEG ()
+Manifying 1 pod document
+Manifying 1 pod document
+Running Mkbootstrap for Tk::InputO ()
+Running Mkbootstrap for Tk::IO ()
+Running Mkbootstrap for Tk::HList ()
+Running Mkbootstrap for Tk::Event ()
+Running Mkbootstrap for Tk::Entry ()
+Manifying 3 pod documents
+Running Mkbootstrap for Tk::Compound ()
+Running Mkbootstrap for Tk::Canvas ()
+Running Mkbootstrap for Tk ()
+"$(PERL)" "-It" "-MTkTest" "-e" "checked_test_harness('./xt', 0, 'blib/lib', 'blib/arch')" t/00wmcheck.t t/JP.t t/KR.t t/Require.t t/Tkxs.t t/Trace.t t/X.t t/adjuster.t t/after.t t/async.t t/autoload.t t/balloon.t t/bind.t t/browseentry-grabtest.t t/browseentry-subclassing.t t/browseentry.t t/browseentry2.t t/button-tcl.t t/button.t t/canvas-grid.t t/canvas.t t/canvas2.t t/coloreditor.t t/create.t t/cursor.t t/dash.t t/dialogbox.t t/dirtree.t t/entry.t t/errordialog.t t/eventGenerate.t t/exefiles.t t/fbox.t t/fileevent.t t/fileevent2.t t/fileselect.t t/font.t t/fork.t t/geomgr.t t/iso8859-1.t t/itemstyle.t t/leak.t t/list.t t/listbox.t t/listvar.t t/magic.t t/mega.t t/msgbox.t t/mwm.t t/objglue.t t/optmenu.t t/photo.t t/pixmap.t t/pod.t t/progbar.t t/property.t t/regexp.t t/rotext.t t/slaves.t t/sv.t t/table.t t/text.t t/text2.t t/textundo.t t/trace1.t t/unicode.t t/widget.t t/wm-tcl.t t/wm-time.t t/wm.t t/zzHList.t t/zzPhoto.t t/zzScrolled.t t/zzText.t t/zzTixGrid.t
+# 
+# Tk platform:    unix
+# server info:    X11R0 Oracle Corporation, based on X.Org Foundation sources 11803000
+# window manager: <unknown>
+#        version: <unknown>
+# XFT:            yes
+t/00wmcheck.t ................ ok
+t/adjuster.t ................. ok
+t/after.t .................... ok
+t/async.t .................... ok
+t/autoload.t ................. ok
+t/balloon.t .................. ok
+t/bind.t ..................... ok
+t/browseentry-grabtest.t ..... ok
+t/browseentry-subclassing.t .. ok
+t/browseentry.t .............. ok
+t/browseentry2.t ............. ok
+t/button-tcl.t ............... ok
+t/button.t ................... ok
+t/canvas-grid.t .............. ok
+t/canvas.t ................... ok
+t/canvas2.t .................. ok
+t/coloreditor.t .............. ok
+t/create.t ................... ok
+t/cursor.t ................... ok
+t/dash.t ..................... ok
+t/dialogbox.t ................ ok
+t/dirtree.t .................. ok
+t/entry.t .................... ok
+Event.xs:1188 error:Intentional error.
+
+Event.xs:1188 error:Intentional error.
+
+t/errordialog.t .............. ok
+t/eventGenerate.t ............ ok
+
+#   Failed test 'Executing ptksh with no args (exited spontaneously)'
+#   at t/exefiles.t line 60.
+#          got: '512'
+#     expected: '0'
+# $(PERL) -Mblib blib/script/ptksh -geometry +10+10
+
+#   Failed test 'Executing ptked with no args (exited spontaneously)'
+#   at t/exefiles.t line 60.
+#          got: '512'
+#     expected: '0'
+# $(PERL) -Mblib blib/script/ptked -geometry +10+10
+
+#   Failed test 'Executing ptked with -encoding utf8 $(@D)/t/exefiles.t (exited spontaneously)'
+#   at t/exefiles.t line 60.
+#          got: '512'
+#     expected: '0'
+# $(PERL) -Mblib blib/script/ptked -geometry +10+10 -encoding utf8 $(@D)/t/exefiles.t
+
+#   Failed test 'Executing ptked with -encoding iso-8859-1 $(@D)/t/exefiles.t (exited spontaneously)'
+#   at t/exefiles.t line 60.
+#          got: '512'
+#     expected: '0'
+# $(PERL) -Mblib blib/script/ptked -geometry +10+10 -encoding iso-8859-1 $(@D)/t/exefiles.t
+
+#   Failed test 'Executing gedi with no args (exited spontaneously)'
+#   at t/exefiles.t line 60.
+#          got: '512'
+#     expected: '0'
+# $(PERL) -Mblib blib/script/gedi -geometry +10+10
+
+#   Failed test 'Executing gedi with $(@D)/t/exefiles.t (exited spontaneously)'
+#   at t/exefiles.t line 60.
+#          got: '512'
+#     expected: '0'
+# $(PERL) -Mblib blib/script/gedi -geometry +10+10 $(@D)/t/exefiles.t
+# Looks like you failed 6 tests of 6.
+t/exefiles.t ................. 
+Dubious, test returned 6 (wstat 1536, 0x600)
+Failed 6/6 subtests 
+t/fbox.t ..................... ok
+t/fileevent.t ................ ok
+t/fileevent2.t ............... ok
+t/fileselect.t ............... ok
+Font Courier -12 still in cache.
+t/font.t ..................... ok
+t/fork.t ..................... ok
+t/geomgr.t ................... ok
+t/iso8859-1.t ................ ok
+t/itemstyle.t ................ ok
+t/JP.t ....................... ok
+t/KR.t ....................... ok
+t/leak.t ..................... skipped: need Devel::Leak
+t/list.t ..................... ok
+t/listbox.t .................. ok
+t/listvar.t .................. ok
+t/magic.t .................... ok
+t/mega.t ..................... ok
+t/msgbox.t ................... ok
+t/mwm.t ...................... ok
+t/objglue.t .................. ok
+t/optmenu.t .................. ok
+t/photo.t .................... ok
+t/pixmap.t ................... ok
+t/pod.t ...................... skipped: Test::Pod 1.00 required for testing POD
+t/progbar.t .................. ok
+t/property.t ................. ok
+t/regexp.t ................... ok
+t/Require.t .................. ok
+t/rotext.t ................... ok
+t/slaves.t ................... ok
+t/sv.t ....................... ok
+t/table.t .................... ok
+t/text.t ..................... ok
+untie attempted while 3 inner references still exist at t/text2.t line 59.
+untie attempted while 10 inner references still exist at t/text2.t line 70.
+t/text2.t .................... ok
+t/textundo.t ................. ok
+t/Tkxs.t ..................... ok
+t/Trace.t .................... ok
+t/trace1.t ................... ok
+t/unicode.t .................. ok
+t/widget.t ................... ok
+t/wm-tcl.t ................... ok
+# Start update 2
+# Start Popup 2
+# Start withdraw 0
+# Start Popup Again 2
+# Start destroy 0
+t/wm-time.t .................. ok
+t/wm.t ....................... ok
+t/X.t ........................ ok
+t/zzHList.t .................. ok
+t/zzPhoto.t .................. ok
+t/zzScrolled.t ............... ok
+t/zzText.t ................... ok
+t/zzTixGrid.t ................ ok
+
+Test Summary Report
+-------------------
+t/exefiles.t               (Wstat: 1536 Tests: 6 Failed: 6)
+  Failed tests:  1-6
+  Non-zero exit status: 6
+t/listbox.t                (Wstat: 0 Tests: 537 Failed: 0)
+  TODO passed:   320-322, 328, 502
+t/text.t                   (Wstat: 0 Tests: 415 Failed: 0)
+  TODO passed:   121
+t/wm-tcl.t                 (Wstat: 0 Tests: 315 Failed: 0)
+  TODO passed:   86-87, 154-157, 164-165, 175-178, 221-224
+                237-239, 264-265, 275-276, 280-283
+t/zzScrolled.t             (Wstat: 0 Tests: 94 Failed: 0)
+  TODO passed:   52, 66, 80, 94
+Files=75, Tests=4350, <TIMINGS REMOVED>
+Result: FAIL
+Failed 1/75 test programs. 6/4350 subtests failed.