From: Tino Calancha <tino.calancha@gmail.com>
To: Stephen Berman <stephen.berman@gmx.net>
Cc: Eli Zaretskii <eliz@gnu.org>, emacs-devel@gnu.org
Subject: Re: Question about test failure on Hydra
Date: Tue, 01 Aug 2017 13:39:50 +0900 [thread overview]
Message-ID: <87efsvkijt.fsf@calancha-pc> (raw)
In-Reply-To: <87tw1t7yk5.fsf@rosalinde> (Stephen Berman's message of "Mon, 31 Jul 2017 11:20:10 +0200")
Stephen Berman <stephen.berman@gmx.net> writes:
> On Mon, 31 Jul 2017 06:26:55 +0300 Eli Zaretskii <eliz@gnu.org> wrote:
>
> (dired test-dir) reverts an existing Dired buffer, because of setting
> dired-auto-revert-buffer to t. (When I step through the code, it is
> after reverting that point moves to the subdirectory line, which the
> should make "sanity check" true (and does, both when I step through the
> code and just run the test in any way). When I comment out the
> dired-auto-revert-buffer line, then point stays at point-min, which
> makes the sanity check fail (dired-file-name-at-point returns nil),
When i comment out i see the point in point-max, and the test fails
same as you but: (dired-file-name-at-point returns nil)
> though not in the way Hydra reports (it shows point being on the ".."
> entry).)
If somehow, we have in such Dired buffer the point at ".." _before_
call `dired-revert', then _after_ revert the point is preserved:
(let ((test-dir (make-temp-file "test-dir-" t))
(dired-auto-revert-buffer t)
buffers buf)
(with-current-buffer (setq buf (find-file-noselect test-dir))
(make-directory "test-subdir"))
(with-current-buffer buf (forward-line -1))
(push (dired test-dir) buffers)
(with-current-buffer buf (dired-get-filename t t)))
=> ".."
;; Return "test-subdir" when comment out line:
(with-current-buffer buf (forward-line -1))
We can insert additional `should' calls in the failing tests and
wait until next hydra failoure.
(Following just add more should forms into `dired-test-bug27243-01'; we
might do the same in `dired-test-bug27243-02' and `dired-test-bug27243-03').
--8<-----------------------------cut here---------------start------------->8---
commit 5483d883f753b5a2e0b45bff2a659b8d27a017a9
Author: Tino Calancha <tino.calancha@gmail.com>
Date: Tue Aug 1 13:18:28 2017 +0900
* test/lisp/dired-tests.el (dired-test-bug27243-01): Add more should forms
diff --git a/test/lisp/dired-tests.el b/test/lisp/dired-tests.el
index d6fe839708..0ee4e13783 100644
--- a/test/lisp/dired-tests.el
+++ b/test/lisp/dired-tests.el
@@ -122,11 +122,18 @@
(ert-deftest dired-test-bug27243-01 ()
"Test for https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27243#5 ."
- (let ((test-dir (make-temp-file "test-dir-" t))
+ (let ((test-dir (file-name-as-directory (make-temp-file "test-dir-" t)))
(dired-auto-revert-buffer t) buffers)
+ (should-not (dired-buffers-for-dir test-dir))
(with-current-buffer (find-file-noselect test-dir)
(make-directory "test-subdir"))
+ ;; Point must be at end-of-buffer.
+ (with-current-buffer (car (dired-buffers-for-dir test-dir))
+ (should (eobp)))
(push (dired test-dir) buffers)
+ ;; Previous dired call shouldn't create a new buffer: must visit the one
+ ;; created by `find-file-noselect' above.
+ (should (eq 1 (length (dired-buffers-for-dir test-dir))))
(unwind-protect
(let ((buf (current-buffer))
(pt1 (point))
@@ -135,11 +142,10 @@
(write-region "Test" nil test-file nil 'silent nil 'excl)
;; Sanity check: point should now be on the subdirectory.
(should (equal (dired-file-name-at-point)
- (concat (file-name-as-directory test-dir)
- (file-name-as-directory "test-subdir"))))
+ (concat test-dir (file-name-as-directory "test-subdir"))))
(push (dired-find-file) buffers)
(let ((pt2 (point))) ; Point is on test-file.
- (switch-to-buffer buf)
+ (pop-to-buffer-same-window buf)
;; Sanity check: point should now be back on the subdirectory.
(should (eq (point) pt1))
(push (dired-find-file) buffers)
--8<-----------------------------cut here---------------end--------------->8---
In GNU Emacs 26.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.11)
of 2017-07-31
Repository revision: 3a8d0cc825635e07da2a90c4ac987b476fc9b05d
next prev parent reply other threads:[~2017-08-01 4:39 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-30 15:50 Question about test failure on Hydra Stephen Berman
2017-07-30 15:59 ` Eli Zaretskii
2017-07-30 20:23 ` Stephen Berman
2017-07-31 3:26 ` Eli Zaretskii
2017-07-31 9:20 ` Stephen Berman
2017-08-01 3:12 ` Eli Zaretskii
2017-08-01 9:57 ` Stephen Berman
2017-08-01 13:49 ` Eli Zaretskii
2017-08-01 15:23 ` Stephen Berman
2017-08-02 15:27 ` Stephen Berman
2017-08-01 4:39 ` Tino Calancha [this message]
2017-08-01 9:57 ` Stephen Berman
2017-08-01 10:17 ` Tino Calancha
2017-08-01 10:47 ` Stephen Berman
2017-08-05 13:07 ` Tino Calancha
2017-08-05 21:34 ` Stephen Berman
2017-08-03 19:41 ` tagging ERT tests with bug numbers (was: Question about test failure on Hydra) Ted Zlatanov
2017-08-04 7:22 ` tagging ERT tests with bug numbers Michael Albinus
2017-08-04 13:28 ` Ted Zlatanov
2017-08-04 14:50 ` Michael Albinus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87efsvkijt.fsf@calancha-pc \
--to=tino.calancha@gmail.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=stephen.berman@gmx.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).