Subject: bug#21376: 25.0.50; Python tests fail on MS-Windows -- issues with the prompt

From: Eli Zaretskii <[email-masked]>
Date: Sat, 29 Aug 2015 15:21:01 +0300

4 of the Python tests fail on MS-Windows due to some issue related to
the prompts displayed by the Python interpreter.  The 4 failed tests
are:

   FAILED  python-shell-make-comint-4
   FAILED  python-shell-prompt-detect-1
   FAILED  python-shell-prompt-detect-2
   FAILED  python-shell-prompt-set-calculated-regexps-6

I show below the relevant portions of python-tests.log.

I need help in figuring out what causes these.  One possible suspect
is some buffering issue, due to which Emacs does not receive the
prompt that Python prints.  Another possibility might be the version
of the Python (I have 2.6.6 installed).  Or maybe something else.

Let me know if I can collect more information about the failures, or
you'd like me to try something in order to find out the reasons.

Thanks.

Here are the relevant portions of the test log for the 4 failed tests:

  Test python-shell-make-comint-4 condition:
      (ert-test-failed
       ((should
	 (string= python-shell--prompt-calculated-input-regexp
		  (concat "^\\(extralargeinputprompt\\|\\.\\.> \\|" "block\\|py> \\|pdf\\|sml\\|in\\)")))
	:form
	(string= "^\\(extralargeinputprompt\\|block\\|pdf\\|sml\\|in\\)" "^\\(extralargeinputprompt\\|\\.\\.> \\|block\\|py> \\|pdf\\|sml\\|in\\)")
	:value nil))
     FAILED  192/223  python-shell-make-comint-4
  Test python-shell-prompt-detect-1 condition:
      (ert-test-failed
       ((should
	 (equal
	  (python-shell-prompt-detect)
	  '...))
	:form
	(equal nil
	       (">>> " "... " ""))
	:value nil :explanation
	(different-types nil
			 (">>> " "... " ""))))
     FAILED  193/223  python-shell-prompt-detect-1
  Test python-shell-prompt-detect-2 condition:
      (ert-test-failed
       ((should
	 (equal
	  (python-shell-prompt-detect)
	  '...))
	:form
	(equal nil
	       ("py> " "..> " "out "))
	:value nil :explanation
	(different-types nil
			 ("py> " "..> " "out "))))
     FAILED  194/223  python-shell-prompt-detect-2
  Test python-shell-prompt-set-calculated-regexps-6 condition:
      (ert-test-failed
       ((should
	 (string= python-shell--prompt-calculated-input-regexp "^\\(\\.\\.> \\|p\\.> \\|\\)"))
	:form
	(string= "^\\(\\)" "^\\(\\.\\.> \\|p\\.> \\|\\)")
	:value nil))
     FAILED  204/223  python-shell-prompt-set-calculated-regexps-6

In GNU Emacs 25.0.50.384 (i686-pc-mingw32)
 of 2015-08-29
Repository revision: 5e63c842007b0f85e91735a7c4e00be0b7fe9ba5
Windowing system distributor `Microsoft Corp.', version 5.1.2600
Configured using:
 `configure --prefix=/d/usr --enable-checking=yes,glyphs --with-wide-int
 'CFLAGS=-gdwarf-4 -g3 -O0''

Configured features:
XPM JPEG TIFF GIF PNG RSVG SOUND NOTIFY ACL GNUTLS LIBXML2 ZLIB
TOOLKIT_SCROLL_BARS

Important settings:
  value of $LANG: ENU
  locale-coding-system: cp1255

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message dired format-spec
rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util help-fns help-mode easymenu cl-loaddefs pcase cl-lib mail-prsvr
mail-utils time-date mule-util tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel dos-w32 ls-lisp disp-table
w32-win w32-vars term/common-win tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register
page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame cl-generic cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european
ethiopic indian cyrillic chinese charscript case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer cl-preloaded nadvice
loaddefs button faces cus-face macroexp files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote w32notify w32 multi-tty
make-network-process emacs)

Memory information:
((conses 16 84975 6948)
 (symbols 56 19924 0)
 (miscs 48 36 107)
 (strings 16 15967 5012)
 (string-bytes 1 393017)
 (vectors 16 11212)
 (vector-slots 8 402827 5209)
 (floats 8 125 127)
 (intervals 40 260 63)
 (buffers 856 11))