* bug#21375: 25.0.50; Python tests fail on MS-Windows -- portability issues
@ 2015-08-29 12:13 Eli Zaretskii
2015-08-29 13:51 ` Fabián Ezequiel Gallina
0 siblings, 1 reply; 3+ messages in thread
From: Eli Zaretskii @ 2015-08-29 12:13 UTC (permalink / raw)
To: 21375, fgallina
As I reported in the past, some Python tests fail on MS-Windows. 13
of them, to be more accurate. The changes below reduce those 13 to
just 4.
The main problems fixed by these changes are: (a) the assumption that
"/foo" is an absolute file name that expand-file-name cannot possibly
change, and (b) use of a literal ':' character is PATH-style lists of
directories. Also, one of the failures was because
python-shell-calculate-command always quotes the interpreter's file
name on MS-Windows, which the test didn't expect.
Fabián, if these are OK with you, I will commit them.
I will file a separate bug about the other 4 failures, as I need help
there in figuring out how to fix them.
Thanks.
Here are the proposed changes, relative to today's master:
diff --git a/test/automated/python-tests.el b/test/automated/python-tests.el
index 30b1b48..219f99e 100644
--- a/test/automated/python-tests.el
+++ b/test/automated/python-tests.el
@@ -2436,7 +2436,7 @@ (ert-deftest python-shell-calculate-command-1 ()
(python-shell-interpreter-args "-B"))
(should (string=
(format "%s %s"
- python-shell-interpreter
+ (shell-quote-argument python-shell-interpreter)
python-shell-interpreter-args)
(python-shell-calculate-command)))))
@@ -2445,14 +2445,17 @@ (ert-deftest python-shell-calculate-pythonpath-1 ()
(let ((process-environment '("PYTHONPATH=/path0"))
(python-shell-extra-pythonpaths '("/path1" "/path2")))
(should (string= (python-shell-calculate-pythonpath)
- "/path1:/path2:/path0"))))
+ (concat "/path1" path-separator
+ "/path2" path-separator "/path0")))))
(ert-deftest python-shell-calculate-pythonpath-2 ()
"Test existing paths are moved to front."
- (let ((process-environment '("PYTHONPATH=/path0:/path1"))
+ (let ((process-environment
+ (list (concat "PYTHONPATH=/path0" path-separator "/path1")))
(python-shell-extra-pythonpaths '("/path1" "/path2")))
(should (string= (python-shell-calculate-pythonpath)
- "/path1:/path2:/path0"))))
+ (concat "/path1" path-separator
+ "/path2" path-separator "/path0")))))
(ert-deftest python-shell-calculate-process-environment-1 ()
"Test `python-shell-process-environment' modification."
@@ -2468,7 +2471,9 @@ (ert-deftest python-shell-calculate-process-environment-2 ()
(original-pythonpath (setenv "PYTHONPATH" "/path0"))
(python-shell-extra-pythonpaths '("/path1" "/path2"))
(process-environment (python-shell-calculate-process-environment)))
- (should (equal (getenv "PYTHONPATH") "/path1:/path2:/path0"))))
+ (should (equal (getenv "PYTHONPATH")
+ (concat "/path1" path-separator
+ "/path2" path-separator "/path0")))))
(ert-deftest python-shell-calculate-process-environment-3 ()
"Test `python-shell-virtualenv-root' modification."
@@ -2545,7 +2550,8 @@ (ert-deftest python-shell-calculate-exec-path-2 ()
(let* ((exec-path '("/path0"))
(python-shell-virtualenv-root "/env")
(new-exec-path (python-shell-calculate-exec-path)))
- (should (equal new-exec-path '("/env/bin" "/path0")))))
+ (should (equal new-exec-path
+ (list (expand-file-name "/env/bin") "/path0")))))
(ert-deftest python-shell-calculate-exec-path-3 ()
"Test complete `python-shell-virtualenv-root' modification."
@@ -2553,7 +2559,9 @@ (ert-deftest python-shell-calculate-exec-path-3 ()
(python-shell-exec-path '("/path1" "/path2"))
(python-shell-virtualenv-root "/env")
(new-exec-path (python-shell-calculate-exec-path)))
- (should (equal new-exec-path '("/env/bin" "/path1" "/path2" "/path0")))))
+ (should (equal new-exec-path
+ (list (expand-file-name "/env/bin")
+ "/path1" "/path2" "/path0")))))
(ert-deftest python-shell-calculate-exec-path-4 ()
"Test complete `python-shell-virtualenv-root' with remote."
@@ -2562,7 +2570,9 @@ (ert-deftest python-shell-calculate-exec-path-4 ()
(python-shell-exec-path '("/path1" "/path2"))
(python-shell-virtualenv-root "/env")
(new-exec-path (python-shell-calculate-exec-path)))
- (should (equal new-exec-path '("/env/bin" "/path1" "/path2" "/path0")))))
+ (should (equal new-exec-path
+ (list (expand-file-name "/env/bin")
+ "/path1" "/path2" "/path0")))))
(ert-deftest python-shell-calculate-exec-path-5 ()
"Test no side-effects on `exec-path'."
@@ -2590,7 +2600,9 @@ (ert-deftest python-shell-with-environment-1 ()
(original-exec-path exec-path)
(python-shell-virtualenv-root "/env"))
(python-shell-with-environment
- (should (equal exec-path '("/env/bin" "/path1" "/path2" "/path0")))
+ (should (equal exec-path
+ (list (expand-file-name "/env/bin")
+ "/path1" "/path2" "/path0")))
(should (not (getenv "PYTHONHOME")))
(should (string= (getenv "VIRTUAL_ENV") "/env")))
(should (equal exec-path original-exec-path))))
@@ -2605,7 +2617,8 @@ (ert-deftest python-shell-with-environment-2 ()
(python-shell-virtualenv-root "/env"))
(python-shell-with-environment
(should (equal (python-shell-calculate-exec-path)
- '("/env/bin" "/path1" "/path2" "/remote1" "/remote2")))
+ (list (expand-file-name "/env/bin")
+ "/path1" "/path2" "/remote1" "/remote2")))
(let ((process-environment (python-shell-calculate-process-environment)))
(should (not (getenv "PYTHONHOME")))
(should (string= (getenv "VIRTUAL_ENV") "/env"))
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))
^ permalink raw reply related [flat|nested] 3+ messages in thread
* bug#21375: 25.0.50; Python tests fail on MS-Windows -- portability issues
2015-08-29 12:13 bug#21375: 25.0.50; Python tests fail on MS-Windows -- portability issues Eli Zaretskii
@ 2015-08-29 13:51 ` Fabián Ezequiel Gallina
2015-08-29 14:42 ` Eli Zaretskii
0 siblings, 1 reply; 3+ messages in thread
From: Fabián Ezequiel Gallina @ 2015-08-29 13:51 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 21375
Eli Zaretskii <eliz@gnu.org> writes:
> As I reported in the past, some Python tests fail on MS-Windows. 13
> of them, to be more accurate. The changes below reduce those 13 to
> just 4.
>
> The main problems fixed by these changes are: (a) the assumption that
> "/foo" is an absolute file name that expand-file-name cannot possibly
> change, and (b) use of a literal ':' character is PATH-style lists of
> directories. Also, one of the failures was because
> python-shell-calculate-command always quotes the interpreter's file
> name on MS-Windows, which the test didn't expect.
>
> Fabián, if these are OK with you, I will commit them.
>
> I will file a separate bug about the other 4 failures, as I need help
> there in figuring out how to fix them.
>
Hi Eli,
Patch looks good, please install.
Thanks for taking care of this.
Fabián.
^ permalink raw reply [flat|nested] 3+ messages in thread
* bug#21375: 25.0.50; Python tests fail on MS-Windows -- portability issues
2015-08-29 13:51 ` Fabián Ezequiel Gallina
@ 2015-08-29 14:42 ` Eli Zaretskii
0 siblings, 0 replies; 3+ messages in thread
From: Eli Zaretskii @ 2015-08-29 14:42 UTC (permalink / raw)
To: Fabián Ezequiel Gallina; +Cc: 21375-done
> From: fgallina@gnu.org (Fabián Ezequiel Gallina)
> Cc: bug-gnu-emacs@gnu.org
> Date: Sat, 29 Aug 2015 10:51:30 -0300
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > As I reported in the past, some Python tests fail on MS-Windows. 13
> > of them, to be more accurate. The changes below reduce those 13 to
> > just 4.
> >
> > The main problems fixed by these changes are: (a) the assumption that
> > "/foo" is an absolute file name that expand-file-name cannot possibly
> > change, and (b) use of a literal ':' character is PATH-style lists of
> > directories. Also, one of the failures was because
> > python-shell-calculate-command always quotes the interpreter's file
> > name on MS-Windows, which the test didn't expect.
> >
> > Fabián, if these are OK with you, I will commit them.
> >
> > I will file a separate bug about the other 4 failures, as I need help
> > there in figuring out how to fix them.
> >
>
> Hi Eli,
>
> Patch looks good, please install.
Done as master commit 57e1205.
> Thanks for taking care of this.
You are welcome.
I'm closing this bug.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-08-29 14:42 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-29 12:13 bug#21375: 25.0.50; Python tests fail on MS-Windows -- portability issues Eli Zaretskii
2015-08-29 13:51 ` Fabián Ezequiel Gallina
2015-08-29 14:42 ` Eli Zaretskii
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.