# HG changeset patch # User Chong Yidong # Date 1276267194 14400 # Node ID cdae067c62d38717663ca2cdeeda8991d76077f5 # Parent a4e18a1ee55d4351f60ed6452c1127c943ba99e9 Fix for comint-password-prompt-regexp (Bug#6367). * lisp/comint.el (comint-password-prompt-regexp): Fix 2010-04-10 change (Bug#6367). * comint-testsuite.el: New file. diff -r a4e18a1ee55d -r cdae067c62d3 lisp/ChangeLog --- a/lisp/ChangeLog Fri Jun 11 14:28:41 2010 +0100 +++ b/lisp/ChangeLog Fri Jun 11 10:39:54 2010 -0400 @@ -1,3 +1,8 @@ +2010-06-11 Chong Yidong + + * comint.el (comint-password-prompt-regexp): Fix 2010-04-10 change + (Bug#6367). + 2010-06-11 Stephen Eglen * shell.el: Bind `shell-resync-dirs' to M-RET. diff -r a4e18a1ee55d -r cdae067c62d3 lisp/comint.el --- a/lisp/comint.el Fri Jun 11 14:28:41 2010 +0100 +++ b/lisp/comint.el Fri Jun 11 10:39:54 2010 -0400 @@ -340,7 +340,7 @@ ;; Something called "perforce" uses "Enter password:". (defcustom comint-password-prompt-regexp (concat - "^\\(" + "\\(" (regexp-opt '("Enter" "Enter same" "Old" "old" "New" "new" "'s" "login" "Kerberos" "CVS" "UNIX" " SMB" "LDAP" "[sudo]" "Repeat" "Bad")) diff -r a4e18a1ee55d -r cdae067c62d3 test/ChangeLog --- a/test/ChangeLog Fri Jun 11 14:28:41 2010 +0100 +++ b/test/ChangeLog Fri Jun 11 10:39:54 2010 -0400 @@ -1,3 +1,7 @@ +2010-06-11 Chong Yidong + + * comint-testsuite.el: New file. + 2010-06-02 Stefan Monnier * indent: New dir. diff -r a4e18a1ee55d -r cdae067c62d3 test/comint-testsuite.el --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/comint-testsuite.el Fri Jun 11 10:39:54 2010 -0400 @@ -0,0 +1,59 @@ +;;; bytecomp-testsuite.el + +;; Copyright (C) 2010 Free Software Foundation, Inc. + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Commentary: + +;; Tests for comint and related modes. + +;;; Code: + +(require 'comint) + +(defun comint-testsuite-run () + (interactive) + (with-output-to-temp-buffer "*comint test*" + (comint-testsuite--test-comint-password-prompt-regexp))) + +(defun comint-testsuite--test-comint-password-prompt-regexp () + (interactive) + (let ((password-strings + '("foo@example.net's password: " ;ssh + "Password for foo@example.org: " ; knit + "Kerberos password for devnull/root GNU.ORG: " ; ksu + "Enter passphrase: " ; ssh-add + "Enter passphrase (empty for no passphrase): " ; ssh-keygen + "Enter same passphrase again: " ; ssh-keygen + "Passphrase for key root@GNU.ORG: " ; plink + "[sudo] password for user:" ; Ubuntu sudo + "Password (again):" + "Enter password:")) + fail) + (dolist (str password-strings) + (unless (string-match comint-password-prompt-regexp str) + (setq fail t) + (princ (format " ERROR: comint-password-prompt-regexp did not match %s\n" + str)))) + (if fail + (princ "FAILED: comint-password-prompt-regexp test\n") + (princ "PASSED: comint-password-prompt-regexp test\n")))) + +(provide 'comint-testsuite) + +;;; comint-testsuite.el ends here +