unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Kangas <stefan@marxist.se>
To: Michael Albinus <michael.albinus@gmx.de>
Cc: 37202@debbugs.gnu.org
Subject: bug#37202: shadowfile-tests: two failures on macOS
Date: Sun, 8 Sep 2019 22:23:34 +0200	[thread overview]
Message-ID: <CADwFkmntxBpxoj3iuzMRm6rbvbR1jA1SvbOvLPD8Hy8Wo7jazA@mail.gmail.com> (raw)
In-Reply-To: <87y2yzkxle.fsf@gmx.de>

[-- Attachment #1: Type: text/plain, Size: 757 bytes --]

Michael Albinus <michael.albinus@gmx.de> writes:

> That's the first difference to my traces. Locally, I have here
>
> shadow-add-to-todo: ((/tmp/shadowfile-tests0mPIFq . /cluster2:/tmp/shadowfile-tests0mPIFq)) nil
>
> So you have a nil value of `shadows' in that trace. Looking at the code,
> I see that `file-truename' is used to compute `shadows'. That rings a
> bell - `temporary-file-directory' on macOS is located on a symlink. I
> ran into this trap earlier already.
>
> I hope, that my fix, pushed to master, fixes this now.

I'm still seing failures on current master on these tests, including
the line you noted above:

shadow-add-to-todo: nil nil

I've attached the complete log of the latest run (commit 034f9363e).

Thanks again,
Stefan Kangas

[-- Attachment #2: shadowfile-tests.log --]
[-- Type: application/octet-stream, Size: 75336 bytes --]

  ELC      lisp/shadowfile-tests.elc
  GEN      lisp/shadowfile-tests.log
Running 10 tests (2019-09-08 22:18:08+0200, selector `(not (tag :unstable))')
   passed   1/10  shadow-test00-clusters (4.054058 sec)
   passed   2/10  shadow-test01-sites (0.019025 sec)
   passed   3/10  shadow-test02-files (0.031444 sec)
   passed   4/10  shadow-test03-expand-cluster-in-file-name (0.017081 sec)
   passed   5/10  shadow-test04-contract-file-name (0.188851 sec)
   passed   6/10  shadow-test05-file-match (0.034957 sec)
   passed   7/10  shadow-test06-literal-groups (0.040878 sec)
   passed   8/10  shadow-test07-regexp-groups (0.017809 sec)
shadow-test08-shadow-todo: cluster1 /Stefans-MBP: \`/Stefans-MBP:\' ((shadow-cluster cluster1 /Stefans-MBP: \`/Stefans-MBP:\'))
shadow-test08-shadow-todo: cluster2 /mock:Stefans-MBP: \`/mock:Stefans-MBP:\' ((shadow-cluster cluster2 /mock:Stefans-MBP: \`/mock:Stefans-MBP:\') (shadow-cluster cluster1 /Stefans-MBP: \`/Stefans-MBP:\'))
shadow-test08-shadow-todo: /var/folders/pj/rhx0gxy15tv3vx6l3mdy0qvm0000gn/T/shadowfile-testsQbhZHe ((/cluster1:/var/folders/pj/rhx0gxy15tv3vx6l3mdy0qvm0000gn/T/shadowfile-testsQbhZHe /cluster2:/var/folders/pj/rhx0gxy15tv3vx6l3mdy0qvm0000gn/T/shadowfile-testsQbhZHe))
shadow-add-to-todo: nil nil
  backtrace()
  shadow-add-to-todo()
  run-hook-with-args-until-success(shadow-add-to-todo)
  basic-save-buffer(nil)
  save-buffer()
  (progn (set-visited-file-name file) (insert "foo") (save-buffer))
  (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))
  (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))
  (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))))
  (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s %s %s" cluster1 primary regexp shadow-clusters))) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s %s %s" cluster2 primary regexp shadow-clusters))) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file)))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" file shadow-literal-groups))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons file (shadow-contract-file-name (concat "/cluster2:" file))) shadow-files-to-copy))) (let* ((fn-547 #'member) (args-548 (condition-case err (let ((signal-hook-function ...)) (list (cons file ...) shadow-files-to-copy)) (error (progn (setq fn-547 ...) (list ... ...)))))) (let ((value-549 'ert-form-evaluation-aborted-550)) (let (form-description-551) (if (unwind-protect (setq value-549 (apply fn-547 args-548)) (setq form-description-551 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-551)) nil (ert-fail form-description-551))) value-549)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat (shadow-site-primary cluster2) file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons (concat (shadow-site-primary cluster2) file) (shadow-contract-file-name (concat "/cluster1:" file))) shadow-files-to-copy))) (let* ((fn-552 #'member) (args-553 (condition-case err (let ((signal-hook-function ...)) (list (cons ... ...) shadow-files-to-copy)) (error (progn (setq fn-552 ...) (list ... ...)))))) (let ((value-554 'ert-form-evaluation-aborted-555)) (let (form-description-556) (if (unwind-protect (setq value-554 (apply fn-552 args-553)) (setq form-description-556 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-556)) nil (ert-fail form-description-556))) value-554)) (setq shadow-files-to-copy nil shadow-regexp-groups (list (list (concat (shadow-site-primary cluster1) (shadow-regexp-superquote file)) (concat (shadow-site-primary cluster2) (shadow-regexp-superquote file))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" file shadow-regexp-groups))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons file (shadow-contract-file-name (concat "/cluster2:" file))) shadow-files-to-copy))) (let* ((fn-557 #'member) (args-558 (condition-case err (let ((signal-hook-function ...)) (list (cons file ...) shadow-files-to-copy)) (error (progn (setq fn-557 ...) (list ... ...)))))) (let ((value-559 'ert-form-evaluation-aborted-560)) (let (form-description-561) (if (unwind-protect (setq value-559 (apply fn-557 args-558)) (setq form-description-561 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-561)) nil (ert-fail form-description-561))) value-559)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat (shadow-site-primary cluster2) file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons (concat (shadow-site-primary cluster2) file) (shadow-contract-file-name (concat "/cluster1:" file))) shadow-files-to-copy))) (let* ((fn-562 #'member) (args-563 (condition-case err (let ((signal-hook-function ...)) (list (cons ... ...) shadow-files-to-copy)) (error (progn (setq fn-562 ...) (list ... ...)))))) (let ((value-564 'ert-form-evaluation-aborted-565)) (let (form-description-566) (if (unwind-protect (setq value-564 (apply fn-562 args-563)) (setq form-description-566 (nconc ... ... ... ...)) (ert--signal-should-execution form-description-566)) nil (ert-fail form-description-566))) value-564)))
  (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s %s %s" cluster1 primary regexp shadow-clusters))) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s %s %s" cluster2 primary regexp shadow-clusters))) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file)))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" file shadow-literal-groups))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons file (shadow-contract-file-name (concat "/cluster2:" file))) shadow-files-to-copy))) (let* ((fn-547 #'member) (args-548 (condition-case err (let (...) (list ... shadow-files-to-copy)) (error (progn ... ...))))) (let ((value-549 'ert-form-evaluation-aborted-550)) (let (form-description-551) (if (unwind-protect (setq value-549 ...) (setq form-description-551 ...) (ert--signal-should-execution form-description-551)) nil (ert-fail form-description-551))) value-549)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat ... file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons (concat (shadow-site-primary cluster2) file) (shadow-contract-file-name (concat "/cluster1:" file))) shadow-files-to-copy))) (let* ((fn-552 #'member) (args-553 (condition-case err (let (...) (list ... shadow-files-to-copy)) (error (progn ... ...))))) (let ((value-554 'ert-form-evaluation-aborted-555)) (let (form-description-556) (if (unwind-protect (setq value-554 ...) (setq form-description-556 ...) (ert--signal-should-execution form-description-556)) nil (ert-fail form-description-556))) value-554)) (setq shadow-files-to-copy nil shadow-regexp-groups (list (list (concat (shadow-site-primary cluster1) (shadow-regexp-superquote file)) (concat (shadow-site-primary cluster2) (shadow-regexp-superquote file))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" file shadow-regexp-groups))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons file (shadow-contract-file-name (concat "/cluster2:" file))) shadow-files-to-copy))) (let* ((fn-557 #'member) (args-558 (condition-case err (let (...) (list ... shadow-files-to-copy)) (error (progn ... ...))))) (let ((value-559 'ert-form-evaluation-aborted-560)) (let (form-description-561) (if (unwind-protect (setq value-559 ...) (setq form-description-561 ...) (ert--signal-should-execution form-description-561)) nil (ert-fail form-description-561))) value-559)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat ... file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons (concat (shadow-site-primary cluster2) file) (shadow-contract-file-name (concat "/cluster1:" file))) shadow-files-to-copy))) (let* ((fn-562 #'member) (args-563 (condition-case err (let (...) (list ... shadow-files-to-copy)) (error (progn ... ...))))) (let ((value-564 'ert-form-evaluation-aborted-565)) (let (form-description-566) (if (unwind-protect (setq value-564 ...) (setq form-description-566 ...) (ert--signal-should-execution form-description-566)) nil (ert-fail form-description-566))) value-564))) (let ((--dolist-tail-- (list file (concat (shadow-site-primary cluster2) file))) elt) (while --dolist-tail-- (setq elt (car --dolist-tail--)) (condition-case nil (progn (save-current-buffer (set-buffer (get-file-buffer elt)) (set-buffer-modified-p nil) (kill-buffer))) (error nil)) (condition-case nil (progn (delete-file elt)) (error nil)) (setq --dolist-tail-- (cdr --dolist-tail--)))) (shadow--tests-cleanup))
  (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) shadow-clusters shadow-literal-groups shadow-regexp-groups shadow-files-to-copy cluster1 cluster2 primary regexp file) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s %s %s" cluster1 primary regexp shadow-clusters))) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s %s %s" cluster2 primary regexp shadow-clusters))) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file)))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" file shadow-literal-groups))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons file (shadow-contract-file-name ...)) shadow-files-to-copy))) (let* ((fn-547 #'member) (args-548 (condition-case err (let ... ...) (error ...)))) (let ((value-549 'ert-form-evaluation-aborted-550)) (let (form-description-551) (if (unwind-protect ... ... ...) nil (ert-fail form-description-551))) value-549)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name ...) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons (concat ... file) (shadow-contract-file-name ...)) shadow-files-to-copy))) (let* ((fn-552 #'member) (args-553 (condition-case err (let ... ...) (error ...)))) (let ((value-554 'ert-form-evaluation-aborted-555)) (let (form-description-556) (if (unwind-protect ... ... ...) nil (ert-fail form-description-556))) value-554)) (setq shadow-files-to-copy nil shadow-regexp-groups (list (list (concat (shadow-site-primary cluster1) (shadow-regexp-superquote file)) (concat (shadow-site-primary cluster2) (shadow-regexp-superquote file))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" file shadow-regexp-groups))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons file (shadow-contract-file-name ...)) shadow-files-to-copy))) (let* ((fn-557 #'member) (args-558 (condition-case err (let ... ...) (error ...)))) (let ((value-559 'ert-form-evaluation-aborted-560)) (let (form-description-561) (if (unwind-protect ... ... ...) nil (ert-fail form-description-561))) value-559)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name ...) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons (concat ... file) (shadow-contract-file-name ...)) shadow-files-to-copy))) (let* ((fn-562 #'member) (args-563 (condition-case err (let ... ...) (error ...)))) (let ((value-564 'ert-form-evaluation-aborted-565)) (let (form-description-566) (if (unwind-protect ... ... ...) nil (ert-fail form-description-566))) value-564))) (let ((--dolist-tail-- (list file (concat (shadow-site-primary cluster2) file))) elt) (while --dolist-tail-- (setq elt (car --dolist-tail--)) (condition-case nil (progn (save-current-buffer (set-buffer ...) (set-buffer-modified-p nil) (kill-buffer))) (error nil)) (condition-case nil (progn (delete-file elt)) (error nil)) (setq --dolist-tail-- (cdr --dolist-tail--)))) (shadow--tests-cleanup)))
  (lambda nil (let* ((fn-532 #'not) (args-533 (condition-case err (let ((signal-hook-function ...)) (list (memq system-type ...))) (error (progn (setq fn-532 ...) (list ... ...)))))) (let ((value-534 'ert-form-evaluation-aborted-535)) (let (form-description-536) (if (condition-case nil (progn (unwind-protect ... ... ...)) (error nil)) nil (ert-skip form-description-536))) value-534)) (let* ((fn-537 #'file-remote-p) (args-538 (condition-case err (let ((signal-hook-function ...)) (list shadow-test-remote-temporary-file-directory)) (error (progn (setq fn-537 ...) (list ... ...)))))) (let ((value-539 'ert-form-evaluation-aborted-540)) (let (form-description-541) (if (condition-case nil (progn (unwind-protect ... ... ...)) (error nil)) nil (ert-skip form-description-541))) value-539)) (let* ((fn-542 #'file-writable-p) (args-543 (condition-case err (let ((signal-hook-function ...)) (list shadow-test-remote-temporary-file-directory)) (error (progn (setq fn-542 ...) (list ... ...)))))) (let ((value-544 'ert-form-evaluation-aborted-545)) (let (form-description-546) (if (condition-case nil (progn (unwind-protect ... ... ...)) (error nil)) nil (ert-skip form-description-546))) value-544)) (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) shadow-clusters shadow-literal-groups shadow-regexp-groups shadow-files-to-copy cluster1 cluster2 primary regexp file) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s %s %s" cluster1 primary regexp shadow-clusters))) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s %s %s" cluster2 primary regexp shadow-clusters))) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file)))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" file shadow-literal-groups))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ... ... ...) (and ... ...)))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons file ...) shadow-files-to-copy))) (let* ((fn-547 #'member) (args-548 (condition-case err ... ...))) (let ((value-549 ...)) (let (form-description-551) (if ... nil ...)) value-549)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ... ... ...) (and ... ...)))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons ... ...) shadow-files-to-copy))) (let* ((fn-552 #'member) (args-553 (condition-case err ... ...))) (let ((value-554 ...)) (let (form-description-556) (if ... nil ...)) value-554)) (setq shadow-files-to-copy nil shadow-regexp-groups (list (list (concat ... ...) (concat ... ...)))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" file shadow-regexp-groups))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ... ... ...) (and ... ...)))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons file ...) shadow-files-to-copy))) (let* ((fn-557 #'member) (args-558 (condition-case err ... ...))) (let ((value-559 ...)) (let (form-description-561) (if ... nil ...)) value-559)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ... ... ...) (and ... ...)))) (if shadow-debug (progn (message "shadow-test08-shadow-todo: %s %s" (cons ... ...) shadow-files-to-copy))) (let* ((fn-562 #'member) (args-563 (condition-case err ... ...))) (let ((value-564 ...)) (let (form-description-566) (if ... nil ...)) value-564))) (let ((--dolist-tail-- (list file (concat ... file))) elt) (while --dolist-tail-- (setq elt (car --dolist-tail--)) (condition-case nil (progn (save-current-buffer ... ... ...)) (error nil)) (condition-case nil (progn (delete-file elt)) (error nil)) (setq --dolist-tail-- (cdr --dolist-tail--)))) (shadow--tests-cleanup))))()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test :name shadow-test08-shadow-todo :documentation "Check that needed shadows are added to todo." :body (lambda nil (let* ((fn-532 #'not) (args-533 (condition-case err ... ...))) (let ((value-534 ...)) (let (form-description-536) (if ... nil ...)) value-534)) (let* ((fn-537 #'file-remote-p) (args-538 (condition-case err ... ...))) (let ((value-539 ...)) (let (form-description-541) (if ... nil ...)) value-539)) (let* ((fn-542 #'file-writable-p) (args-543 (condition-case err ... ...))) (let ((value-544 ...)) (let (form-description-546) (if ... nil ...)) value-544)) (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) shadow-clusters shadow-literal-groups shadow-regexp-groups shadow-files-to-copy cluster1 cluster2 primary regexp file) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp ...) (shadow-set-cluster cluster1 primary regexp) (if shadow-debug ...) (setq cluster2 "cluster2" primary ... regexp ...) (shadow-set-cluster cluster2 primary regexp) (if shadow-debug ...) (setq file ... shadow-literal-groups ...) (if shadow-debug ...) (let ... ...) (if shadow-debug ...) (let* ... ...) (let ... ...) (if shadow-debug ...) (let* ... ...) (setq shadow-files-to-copy nil shadow-regexp-groups ...) (if shadow-debug ...) (let ... ...) (if shadow-debug ...) (let* ... ...) (let ... ...) (if shadow-debug ...) (let* ... ...)) (let (... elt) (while --dolist-tail-- ... ... ... ...)) (shadow--tests-cleanup)))) :most-recent-result nil :expected-result-type :passed :tags nil) :result #s(ert-test-aborted-with-non-local-exit :messages nil :should-forms nil :duration 0) :exit-continuation #f(compiled-function () #<bytecode 0x1ff5b961d3cd>) :next-debugger debug :ert-debug-on-error nil))
  ert-run-test(#s(ert-test :name shadow-test08-shadow-todo :documentation "Check that needed shadows are added to todo." :body (lambda nil (let* ((fn-532 #'not) (args-533 (condition-case err (let ... ...) (error ...)))) (let ((value-534 'ert-form-evaluation-aborted-535)) (let (form-description-536) (if (condition-case nil ... ...) nil (ert-skip form-description-536))) value-534)) (let* ((fn-537 #'file-remote-p) (args-538 (condition-case err (let ... ...) (error ...)))) (let ((value-539 'ert-form-evaluation-aborted-540)) (let (form-description-541) (if (condition-case nil ... ...) nil (ert-skip form-description-541))) value-539)) (let* ((fn-542 #'file-writable-p) (args-543 (condition-case err (let ... ...) (error ...)))) (let ((value-544 'ert-form-evaluation-aborted-545)) (let (form-description-546) (if (condition-case nil ... ...) nil (ert-skip form-description-546))) value-544)) (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) shadow-clusters shadow-literal-groups shadow-regexp-groups shadow-files-to-copy cluster1 cluster2 primary regexp file) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (if shadow-debug (progn ...)) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (if shadow-debug (progn ...)) (setq file (make-temp-name ...) shadow-literal-groups (list ...)) (if shadow-debug (progn ...)) (let (...) (save-current-buffer ... ...)) (if shadow-debug (progn ...)) (let* (... ...) (let ... ... value-549)) (let (...) (save-current-buffer ... ...)) (if shadow-debug (progn ...)) (let* (... ...) (let ... ... value-554)) (setq shadow-files-to-copy nil shadow-regexp-groups (list ...)) (if shadow-debug (progn ...)) (let (...) (save-current-buffer ... ...)) (if shadow-debug (progn ...)) (let* (... ...) (let ... ... value-559)) (let (...) (save-current-buffer ... ...)) (if shadow-debug (progn ...)) (let* (... ...) (let ... ... value-564))) (let ((--dolist-tail-- ...) elt) (while --dolist-tail-- (setq elt ...) (condition-case nil ... ...) (condition-case nil ... ...) (setq --dolist-tail-- ...))) (shadow--tests-cleanup)))) :most-recent-result nil :expected-result-type :passed :tags nil))
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) :tests [#s(ert-test :name shadow-test00-clusters :documentation "Check cluster definitions...." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test01-sites :documentation "Check site definitions.\nPe..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test02-files :documentation "Check file manipulation fu..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test03-expand-cluster-in-file-name :documentation "Check canonical file name ..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test04-contract-file-name :documentation "Check canonical file name ..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test05-file-match :documentation "Check `shadow-same-site' a..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test06-literal-groups :documentation "Check literal group defini..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test07-regexp-groups :documentation "Check regexp group definit..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test08-shadow-todo :documentation "Check that needed shadows ..." :body ... :most-recent-result nil :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow f..." :body ... :most-recent-result nil :expected-result-type :passed :tags nil)] :test-map #<hash-table eql 10/10 0x1ff5b943554d> :test-results [#s(ert-test-passed :messages "Not a valid primary!\nRegex..." :should-forms ... :duration 4.054058) #s(ert-test-passed :messages "" :should-forms ... :duration 0.019025) #s(ert-test-passed :messages "" :should-forms ... :duration 0.031444) #s(ert-test-passed :messages "" :should-forms ... :duration 0.017081) #s(ert-test-passed :messages "" :should-forms ... :duration 0.188851) #s(ert-test-passed :messages "" :should-forms ... :duration 0.034957) #s(ert-test-passed :messages "" :should-forms ... :duration 0.040878) #s(ert-test-passed :messages "" :should-forms ... :duration 0.017809) nil nil] :test-start-times [(23925 25088 333098 0) (23925 25092 387309 0) (23925 25092 406397 0) (23925 25092 437905 0) (23925 25092 455050 0) (23925 25092 643982 0) (23925 25092 679003 0) (23925 25092 719950 0) (23925 25092 737824 0) nil] :test-end-times [(23925 25092 387156 0) (23925 25092 406334 0) (23925 25092 437841 0) (23925 25092 454986 0) (23925 25092 643901 0) (23925 25092 678939 0) (23925 25092 719881 0) (23925 25092 737759 0) nil nil] :passed-expected 8 :passed-unexpected 0 :failed-expected 0 :failed-unexpected 0 :skipped 0 :start-time (23925 25088 332964 0) :end-time nil :aborted-p nil :current-test #s(ert-test :name shadow-test08-shadow-todo :documentation "Check that needed shadows ..." :body (lambda nil ... ... ... ...) :most-recent-result nil :expected-result-type :passed :tags nil) :next-redisplay 0.0) #s(ert-test :name shadow-test08-shadow-todo :documentation "Check that needed shadows ..." :body (lambda nil (let* ... ...) (let* ... ...) (let* ... ...) (let ... ...)) :most-recent-result nil :expected-result-type :passed :tags nil) #f(compiled-function (event-type &rest event-args) #<bytecode 0x1ff5b962be0d>))
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type &rest event-args) #<bytecode 0x1ff5b962be0d>) nil)
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))) t)
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests.el" "--eval" "(ert-run-tests-batch-and-exit (quote (not (tag :un..."))
  command-line()
  normal-top-level()

shadow-test08-shadow-todo: (/var/folders/pj/rhx0gxy15tv3vx6l3mdy0qvm0000gn/T/shadowfile-testsQbhZHe . /cluster2:/var/folders/pj/rhx0gxy15tv3vx6l3mdy0qvm0000gn/T/shadowfile-testsQbhZHe) nil
Test shadow-test08-shadow-todo backtrace:
  signal(ert-test-failed (((should (member (cons file (shadow-contract
  ert-fail(((should (member (cons file (shadow-contract-file-name (con
  (if (unwind-protect (setq value-549 (apply fn-547 args-548)) (setq f
  (let (form-description-551) (if (unwind-protect (setq value-549 (app
  (let ((value-549 'ert-form-evaluation-aborted-550)) (let (form-descr
  (let* ((fn-547 #'member) (args-548 (condition-case err (let ((signal
  (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "c
  (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (
  (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) 
  (lambda nil (let* ((fn-532 #'not) (args-533 (condition-case err (let
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test08-shadow-todo :documentat
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) 
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))) t)
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test08-shadow-todo condition:
    (ert-test-failed
     ((should
       (member
	(cons file ...)
	shadow-files-to-copy))
      :form
      (member
       ("/var/folders/pj/rhx0gxy15tv3vx6l3mdy0qvm0000gn/T/shadowfile-testsQbhZHe" . "/cluster2:/var/folders/pj/rhx0gxy15tv3vx6l3mdy0qvm0000gn/T/shadowfile-testsQbhZHe")
       nil)
      :value nil))
   FAILED   9/10  shadow-test08-shadow-todo (0.553099 sec)
shadow-add-to-todo: nil nil
  backtrace()
  shadow-add-to-todo()
  run-hook-with-args-until-success(shadow-add-to-todo)
  basic-save-buffer(nil)
  save-buffer()
  (progn (set-visited-file-name file) (insert "foo") (save-buffer))
  (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))
  (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))
  (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))))
  (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file))) shadow-regexp-groups (list (list (concat (shadow-site-primary cluster1) (shadow-regexp-superquote file)) (concat (shadow-site-primary cluster2) (shadow-regexp-superquote file)))) mocked-input (list (concat (shadow-site-primary cluster2) file) file)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat (shadow-site-primary cluster2) file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (advice--add-function :before (cons #'(lambda nil (symbol-function #'write-region)) #'(lambda (gv--val) (fset #'write-region gv--val))) #'(lambda (&rest args) (if (and (buffer-file-name) mocked-input) (progn (let* (... ...) (let ... ... value-584))))) '((name . "write-region-mock"))) (shadow-copy-files 'noquery) (let ((value-587 (gensym "ert-form-evaluation-aborted-"))) (let (form-description-588) (if (not (unwind-protect (setq value-587 shadow-files-to-copy) (setq form-description-588 (list ... :form ... :value value-587)) (ert--signal-should-execution form-description-588))) nil (ert-fail form-description-588))) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char (point-min)) (let* ((fn-589 #'looking-at) (args-590 (condition-case err (let (...) (list ...)) (error (progn ... ...))))) (let ((value-591 'ert-form-evaluation-aborted-592)) (let (form-description-593) (if (unwind-protect (setq value-591 ...) (setq form-description-593 ...) (ert--signal-should-execution form-description-593)) nil (ert-fail form-description-593))) value-591))))
  (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file))) shadow-regexp-groups (list (list (concat (shadow-site-primary cluster1) (shadow-regexp-superquote file)) (concat (shadow-site-primary cluster2) (shadow-regexp-superquote file)))) mocked-input (list (concat (shadow-site-primary cluster2) file) file)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat ... file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (advice--add-function :before (cons #'(lambda nil (symbol-function #'write-region)) #'(lambda (gv--val) (fset #'write-region gv--val))) #'(lambda (&rest args) (if (and (buffer-file-name) mocked-input) (progn (let* ... ...)))) '((name . "write-region-mock"))) (shadow-copy-files 'noquery) (let ((value-587 (gensym "ert-form-evaluation-aborted-"))) (let (form-description-588) (if (not (unwind-protect (setq value-587 shadow-files-to-copy) (setq form-description-588 ...) (ert--signal-should-execution form-description-588))) nil (ert-fail form-description-588))) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char (point-min)) (let* ((fn-589 #'looking-at) (args-590 (condition-case err (let ... ...) (error ...)))) (let ((value-591 'ert-form-evaluation-aborted-592)) (let (form-description-593) (if (unwind-protect ... ... ...) nil (ert-fail form-description-593))) value-591)))) (let* ((new (advice--remove-function (symbol-function #'write-region) "write-region-mock"))) (if (eq new (symbol-function #'write-region)) nil (fset #'write-region new))) (let ((--dolist-tail-- (list file (concat (shadow-site-primary cluster2) file))) elt) (while --dolist-tail-- (setq elt (car --dolist-tail--)) (condition-case nil (progn (save-current-buffer (set-buffer (get-file-buffer elt)) (set-buffer-modified-p nil) (kill-buffer))) (error nil)) (condition-case nil (progn (delete-file elt)) (error nil)) (setq --dolist-tail-- (cdr --dolist-tail--)))) (shadow--tests-cleanup))
  (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) (shadow-noquery t) shadow-clusters shadow-files-to-copy cluster1 cluster2 primary regexp file mocked-input) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file))) shadow-regexp-groups (list (list (concat (shadow-site-primary cluster1) (shadow-regexp-superquote file)) (concat (shadow-site-primary cluster2) (shadow-regexp-superquote file)))) mocked-input (list (concat (shadow-site-primary cluster2) file) file)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name ...) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (advice--add-function :before (cons #'(lambda nil (symbol-function ...)) #'(lambda (gv--val) (fset ... gv--val))) #'(lambda (&rest args) (if (and ... mocked-input) (progn ...))) '((name . "write-region-mock"))) (shadow-copy-files 'noquery) (let ((value-587 (gensym "ert-form-evaluation-aborted-"))) (let (form-description-588) (if (not (unwind-protect ... ... ...)) nil (ert-fail form-description-588))) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char (point-min)) (let* ((fn-589 #'looking-at) (args-590 (condition-case err ... ...))) (let ((value-591 ...)) (let (form-description-593) (if ... nil ...)) value-591)))) (let* ((new (advice--remove-function (symbol-function #'write-region) "write-region-mock"))) (if (eq new (symbol-function #'write-region)) nil (fset #'write-region new))) (let ((--dolist-tail-- (list file (concat (shadow-site-primary cluster2) file))) elt) (while --dolist-tail-- (setq elt (car --dolist-tail--)) (condition-case nil (progn (save-current-buffer (set-buffer ...) (set-buffer-modified-p nil) (kill-buffer))) (error nil)) (condition-case nil (progn (delete-file elt)) (error nil)) (setq --dolist-tail-- (cdr --dolist-tail--)))) (shadow--tests-cleanup)))
  (lambda nil (let* ((fn-567 #'not) (args-568 (condition-case err (let ((signal-hook-function ...)) (list (memq system-type ...))) (error (progn (setq fn-567 ...) (list ... ...)))))) (let ((value-569 'ert-form-evaluation-aborted-570)) (let (form-description-571) (if (condition-case nil (progn (unwind-protect ... ... ...)) (error nil)) nil (ert-skip form-description-571))) value-569)) (let* ((fn-572 #'file-remote-p) (args-573 (condition-case err (let ((signal-hook-function ...)) (list shadow-test-remote-temporary-file-directory)) (error (progn (setq fn-572 ...) (list ... ...)))))) (let ((value-574 'ert-form-evaluation-aborted-575)) (let (form-description-576) (if (condition-case nil (progn (unwind-protect ... ... ...)) (error nil)) nil (ert-skip form-description-576))) value-574)) (let* ((fn-577 #'file-writable-p) (args-578 (condition-case err (let ((signal-hook-function ...)) (list shadow-test-remote-temporary-file-directory)) (error (progn (setq fn-577 ...) (list ... ...)))))) (let ((value-579 'ert-form-evaluation-aborted-580)) (let (form-description-581) (if (condition-case nil (progn (unwind-protect ... ... ...)) (error nil)) nil (ert-skip form-description-581))) value-579)) (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) (shadow-noquery t) shadow-clusters shadow-files-to-copy cluster1 cluster2 primary regexp file mocked-input) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file))) shadow-regexp-groups (list (list (concat ... ...) (concat ... ...))) mocked-input (list (concat (shadow-site-primary cluster2) file) file)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ... ... ...) (and ... ...)))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ... ... ...) (and ... ...)))) (advice--add-function :before (cons #'(lambda nil ...) #'(lambda ... ...)) #'(lambda (&rest args) (if ... ...)) '((name . "write-region-mock"))) (shadow-copy-files 'noquery) (let ((value-587 (gensym "ert-form-evaluation-aborted-"))) (let (form-description-588) (if (not ...) nil (ert-fail form-description-588))) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char (point-min)) (let* ((fn-589 ...) (args-590 ...)) (let (...) (let ... ...) value-591)))) (let* ((new (advice--remove-function (symbol-function ...) "write-region-mock"))) (if (eq new (symbol-function #'write-region)) nil (fset #'write-region new))) (let ((--dolist-tail-- (list file (concat ... file))) elt) (while --dolist-tail-- (setq elt (car --dolist-tail--)) (condition-case nil (progn (save-current-buffer ... ... ...)) (error nil)) (condition-case nil (progn (delete-file elt)) (error nil)) (setq --dolist-tail-- (cdr --dolist-tail--)))) (shadow--tests-cleanup))))()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow files are copied." :body (lambda nil (let* ((fn-567 #'not) (args-568 (condition-case err ... ...))) (let ((value-569 ...)) (let (form-description-571) (if ... nil ...)) value-569)) (let* ((fn-572 #'file-remote-p) (args-573 (condition-case err ... ...))) (let ((value-574 ...)) (let (form-description-576) (if ... nil ...)) value-574)) (let* ((fn-577 #'file-writable-p) (args-578 (condition-case err ... ...))) (let ((value-579 ...)) (let (form-description-581) (if ... nil ...)) value-579)) (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) (shadow-noquery t) shadow-clusters shadow-files-to-copy cluster1 cluster2 primary regexp file mocked-input) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp ...) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary ... regexp ...) (shadow-set-cluster cluster2 primary regexp) (setq file ... shadow-literal-groups ... shadow-regexp-groups ... mocked-input ...) (let ... ...) (let ... ...) (advice--add-function :before ... ... ...) (shadow-copy-files ...) (let ... ... value-587) (save-current-buffer ... ... ...)) (let* (...) (if ... nil ...)) (let (... elt) (while --dolist-tail-- ... ... ... ...)) (shadow--tests-cleanup)))) :most-recent-result nil :expected-result-type :passed :tags nil) :result #s(ert-test-aborted-with-non-local-exit :messages nil :should-forms nil :duration 0) :exit-continuation #f(compiled-function () #<bytecode 0x1ff5b961d3cd>) :next-debugger debug :ert-debug-on-error nil))
  ert-run-test(#s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow files are copied." :body (lambda nil (let* ((fn-567 #'not) (args-568 (condition-case err (let ... ...) (error ...)))) (let ((value-569 'ert-form-evaluation-aborted-570)) (let (form-description-571) (if (condition-case nil ... ...) nil (ert-skip form-description-571))) value-569)) (let* ((fn-572 #'file-remote-p) (args-573 (condition-case err (let ... ...) (error ...)))) (let ((value-574 'ert-form-evaluation-aborted-575)) (let (form-description-576) (if (condition-case nil ... ...) nil (ert-skip form-description-576))) value-574)) (let* ((fn-577 #'file-writable-p) (args-578 (condition-case err (let ... ...) (error ...)))) (let ((value-579 'ert-form-evaluation-aborted-580)) (let (form-description-581) (if (condition-case nil ... ...) nil (ert-skip form-description-581))) value-579)) (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) (shadow-noquery t) shadow-clusters shadow-files-to-copy cluster1 cluster2 primary regexp file mocked-input) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name ...) shadow-literal-groups (list ...) shadow-regexp-groups (list ...) mocked-input (list ... file)) (let (...) (save-current-buffer ... ...)) (let (...) (save-current-buffer ... ...)) (advice--add-function :before (cons ... ...) #'... '...) (shadow-copy-files 'noquery) (let (...) (let ... ...) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char ...) (let* ... ...))) (let* ((new ...)) (if (eq new ...) nil (fset ... new))) (let ((--dolist-tail-- ...) elt) (while --dolist-tail-- (setq elt ...) (condition-case nil ... ...) (condition-case nil ... ...) (setq --dolist-tail-- ...))) (shadow--tests-cleanup)))) :most-recent-result nil :expected-result-type :passed :tags nil))
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) :tests [#s(ert-test :name shadow-test00-clusters :documentation "Check cluster definitions...." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test01-sites :documentation "Check site definitions.\nPe..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test02-files :documentation "Check file manipulation fu..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test03-expand-cluster-in-file-name :documentation "Check canonical file name ..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test04-contract-file-name :documentation "Check canonical file name ..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test05-file-match :documentation "Check `shadow-same-site' a..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test06-literal-groups :documentation "Check literal group defini..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test07-regexp-groups :documentation "Check regexp group definit..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test08-shadow-todo :documentation "Check that needed shadows ..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow f..." :body ... :most-recent-result nil :expected-result-type :passed :tags nil)] :test-map #<hash-table eql 10/10 0x1ff5b943554d> :test-results [#s(ert-test-passed :messages "Not a valid primary!\nRegex..." :should-forms ... :duration 4.054058) #s(ert-test-passed :messages "" :should-forms ... :duration 0.019025) #s(ert-test-passed :messages "" :should-forms ... :duration 0.031444) #s(ert-test-passed :messages "" :should-forms ... :duration 0.017081) #s(ert-test-passed :messages "" :should-forms ... :duration 0.188851) #s(ert-test-passed :messages "" :should-forms ... :duration 0.034957) #s(ert-test-passed :messages "" :should-forms ... :duration 0.040878) #s(ert-test-passed :messages "" :should-forms ... :duration 0.017809) #s(ert-test-failed :messages "shadow-test08-shadow-todo:..." :should-forms ... :duration 0.553099 :condition ... :backtrace ... :infos nil) nil] :test-start-times [(23925 25088 333098 0) (23925 25092 387309 0) (23925 25092 406397 0) (23925 25092 437905 0) (23925 25092 455050 0) (23925 25092 643982 0) (23925 25092 679003 0) (23925 25092 719950 0) (23925 25092 737824 0) (23925 25093 709516 0)] :test-end-times [(23925 25092 387156 0) (23925 25092 406334 0) (23925 25092 437841 0) (23925 25092 454986 0) (23925 25092 643901 0) (23925 25092 678939 0) (23925 25092 719881 0) (23925 25092 737759 0) (23925 25093 290923 0) nil] :passed-expected 8 :passed-unexpected 0 :failed-expected 0 :failed-unexpected 1 :skipped 0 :start-time (23925 25088 332964 0) :end-time nil :aborted-p nil :current-test #s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow f..." :body (lambda nil ... ... ... ...) :most-recent-result nil :expected-result-type :passed :tags nil) :next-redisplay 0.0) #s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow f..." :body (lambda nil (let* ... ...) (let* ... ...) (let* ... ...) (let ... ...)) :most-recent-result nil :expected-result-type :passed :tags nil) #f(compiled-function (event-type &rest event-args) #<bytecode 0x1ff5b962be0d>))
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type &rest event-args) #<bytecode 0x1ff5b962be0d>) nil)
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))) t)
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests.el" "--eval" "(ert-run-tests-batch-and-exit (quote (not (tag :un..."))
  command-line()
  normal-top-level()



shadow-add-to-todo: nil nil
  backtrace()
  shadow-add-to-todo()
  run-hook-with-args-until-success(shadow-add-to-todo)
  basic-save-buffer(nil)
  save-buffer()
  (progn (set-visited-file-name (concat (shadow-site-primary cluster2) file)) (insert "foo") (save-buffer))
  (unwind-protect (progn (set-visited-file-name (concat (shadow-site-primary cluster2) file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))
  (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat (shadow-site-primary cluster2) file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))
  (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat (shadow-site-primary cluster2) file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))))
  (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file))) shadow-regexp-groups (list (list (concat (shadow-site-primary cluster1) (shadow-regexp-superquote file)) (concat (shadow-site-primary cluster2) (shadow-regexp-superquote file)))) mocked-input (list (concat (shadow-site-primary cluster2) file) file)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat (shadow-site-primary cluster2) file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (advice--add-function :before (cons #'(lambda nil (symbol-function #'write-region)) #'(lambda (gv--val) (fset #'write-region gv--val))) #'(lambda (&rest args) (if (and (buffer-file-name) mocked-input) (progn (let* (... ...) (let ... ... value-584))))) '((name . "write-region-mock"))) (shadow-copy-files 'noquery) (let ((value-587 (gensym "ert-form-evaluation-aborted-"))) (let (form-description-588) (if (not (unwind-protect (setq value-587 shadow-files-to-copy) (setq form-description-588 (list ... :form ... :value value-587)) (ert--signal-should-execution form-description-588))) nil (ert-fail form-description-588))) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char (point-min)) (let* ((fn-589 #'looking-at) (args-590 (condition-case err (let (...) (list ...)) (error (progn ... ...))))) (let ((value-591 'ert-form-evaluation-aborted-592)) (let (form-description-593) (if (unwind-protect (setq value-591 ...) (setq form-description-593 ...) (ert--signal-should-execution form-description-593)) nil (ert-fail form-description-593))) value-591))))
  (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file))) shadow-regexp-groups (list (list (concat (shadow-site-primary cluster1) (shadow-regexp-superquote file)) (concat (shadow-site-primary cluster2) (shadow-regexp-superquote file)))) mocked-input (list (concat (shadow-site-primary cluster2) file) file)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name (concat ... file)) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (advice--add-function :before (cons #'(lambda nil (symbol-function #'write-region)) #'(lambda (gv--val) (fset #'write-region gv--val))) #'(lambda (&rest args) (if (and (buffer-file-name) mocked-input) (progn (let* ... ...)))) '((name . "write-region-mock"))) (shadow-copy-files 'noquery) (let ((value-587 (gensym "ert-form-evaluation-aborted-"))) (let (form-description-588) (if (not (unwind-protect (setq value-587 shadow-files-to-copy) (setq form-description-588 ...) (ert--signal-should-execution form-description-588))) nil (ert-fail form-description-588))) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char (point-min)) (let* ((fn-589 #'looking-at) (args-590 (condition-case err (let ... ...) (error ...)))) (let ((value-591 'ert-form-evaluation-aborted-592)) (let (form-description-593) (if (unwind-protect ... ... ...) nil (ert-fail form-description-593))) value-591)))) (let* ((new (advice--remove-function (symbol-function #'write-region) "write-region-mock"))) (if (eq new (symbol-function #'write-region)) nil (fset #'write-region new))) (let ((--dolist-tail-- (list file (concat (shadow-site-primary cluster2) file))) elt) (while --dolist-tail-- (setq elt (car --dolist-tail--)) (condition-case nil (progn (save-current-buffer (set-buffer (get-file-buffer elt)) (set-buffer-modified-p nil) (kill-buffer))) (error nil)) (condition-case nil (progn (delete-file elt)) (error nil)) (setq --dolist-tail-- (cdr --dolist-tail--)))) (shadow--tests-cleanup))
  (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) (shadow-noquery t) shadow-clusters shadow-files-to-copy cluster1 cluster2 primary regexp file mocked-input) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file))) shadow-regexp-groups (list (list (concat (shadow-site-primary cluster1) (shadow-regexp-superquote file)) (concat (shadow-site-primary cluster2) (shadow-regexp-superquote file)))) mocked-input (list (concat (shadow-site-primary cluster2) file) file)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name file) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (set-visited-file-name ...) (insert "foo") (save-buffer)) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (advice--add-function :before (cons #'(lambda nil (symbol-function ...)) #'(lambda (gv--val) (fset ... gv--val))) #'(lambda (&rest args) (if (and ... mocked-input) (progn ...))) '((name . "write-region-mock"))) (shadow-copy-files 'noquery) (let ((value-587 (gensym "ert-form-evaluation-aborted-"))) (let (form-description-588) (if (not (unwind-protect ... ... ...)) nil (ert-fail form-description-588))) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char (point-min)) (let* ((fn-589 #'looking-at) (args-590 (condition-case err ... ...))) (let ((value-591 ...)) (let (form-description-593) (if ... nil ...)) value-591)))) (let* ((new (advice--remove-function (symbol-function #'write-region) "write-region-mock"))) (if (eq new (symbol-function #'write-region)) nil (fset #'write-region new))) (let ((--dolist-tail-- (list file (concat (shadow-site-primary cluster2) file))) elt) (while --dolist-tail-- (setq elt (car --dolist-tail--)) (condition-case nil (progn (save-current-buffer (set-buffer ...) (set-buffer-modified-p nil) (kill-buffer))) (error nil)) (condition-case nil (progn (delete-file elt)) (error nil)) (setq --dolist-tail-- (cdr --dolist-tail--)))) (shadow--tests-cleanup)))
  (lambda nil (let* ((fn-567 #'not) (args-568 (condition-case err (let ((signal-hook-function ...)) (list (memq system-type ...))) (error (progn (setq fn-567 ...) (list ... ...)))))) (let ((value-569 'ert-form-evaluation-aborted-570)) (let (form-description-571) (if (condition-case nil (progn (unwind-protect ... ... ...)) (error nil)) nil (ert-skip form-description-571))) value-569)) (let* ((fn-572 #'file-remote-p) (args-573 (condition-case err (let ((signal-hook-function ...)) (list shadow-test-remote-temporary-file-directory)) (error (progn (setq fn-572 ...) (list ... ...)))))) (let ((value-574 'ert-form-evaluation-aborted-575)) (let (form-description-576) (if (condition-case nil (progn (unwind-protect ... ... ...)) (error nil)) nil (ert-skip form-description-576))) value-574)) (let* ((fn-577 #'file-writable-p) (args-578 (condition-case err (let ((signal-hook-function ...)) (list shadow-test-remote-temporary-file-directory)) (error (progn (setq fn-577 ...) (list ... ...)))))) (let ((value-579 'ert-form-evaluation-aborted-580)) (let (form-description-581) (if (condition-case nil (progn (unwind-protect ... ... ...)) (error nil)) nil (ert-skip form-description-581))) value-579)) (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) (shadow-noquery t) shadow-clusters shadow-files-to-copy cluster1 cluster2 primary regexp file mocked-input) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name (expand-file-name "shadowfile-tests" temporary-file-directory)) shadow-literal-groups (list (list (concat "/cluster1:" file) (concat "/cluster2:" file))) shadow-regexp-groups (list (list (concat ... ...) (concat ... ...))) mocked-input (list (concat (shadow-site-primary cluster2) file) file)) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ... ... ...) (and ... ...)))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ... ... ...) (and ... ...)))) (advice--add-function :before (cons #'(lambda nil ...) #'(lambda ... ...)) #'(lambda (&rest args) (if ... ...)) '((name . "write-region-mock"))) (shadow-copy-files 'noquery) (let ((value-587 (gensym "ert-form-evaluation-aborted-"))) (let (form-description-588) (if (not ...) nil (ert-fail form-description-588))) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char (point-min)) (let* ((fn-589 ...) (args-590 ...)) (let (...) (let ... ...) value-591)))) (let* ((new (advice--remove-function (symbol-function ...) "write-region-mock"))) (if (eq new (symbol-function #'write-region)) nil (fset #'write-region new))) (let ((--dolist-tail-- (list file (concat ... file))) elt) (while --dolist-tail-- (setq elt (car --dolist-tail--)) (condition-case nil (progn (save-current-buffer ... ... ...)) (error nil)) (condition-case nil (progn (delete-file elt)) (error nil)) (setq --dolist-tail-- (cdr --dolist-tail--)))) (shadow--tests-cleanup))))()
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow files are copied." :body (lambda nil (let* ((fn-567 #'not) (args-568 (condition-case err ... ...))) (let ((value-569 ...)) (let (form-description-571) (if ... nil ...)) value-569)) (let* ((fn-572 #'file-remote-p) (args-573 (condition-case err ... ...))) (let ((value-574 ...)) (let (form-description-576) (if ... nil ...)) value-574)) (let* ((fn-577 #'file-writable-p) (args-578 (condition-case err ... ...))) (let ((value-579 ...)) (let (form-description-581) (if ... nil ...)) value-579)) (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) (shadow-noquery t) shadow-clusters shadow-files-to-copy cluster1 cluster2 primary regexp file mocked-input) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp ...) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary ... regexp ...) (shadow-set-cluster cluster2 primary regexp) (setq file ... shadow-literal-groups ... shadow-regexp-groups ... mocked-input ...) (let ... ...) (let ... ...) (advice--add-function :before ... ... ...) (shadow-copy-files ...) (let ... ... value-587) (save-current-buffer ... ... ...)) (let* (...) (if ... nil ...)) (let (... elt) (while --dolist-tail-- ... ... ... ...)) (shadow--tests-cleanup)))) :most-recent-result nil :expected-result-type :passed :tags nil) :result #s(ert-test-aborted-with-non-local-exit :messages nil :should-forms nil :duration 0) :exit-continuation #f(compiled-function () #<bytecode 0x1ff5b961d3cd>) :next-debugger debug :ert-debug-on-error nil))
  ert-run-test(#s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow files are copied." :body (lambda nil (let* ((fn-567 #'not) (args-568 (condition-case err (let ... ...) (error ...)))) (let ((value-569 'ert-form-evaluation-aborted-570)) (let (form-description-571) (if (condition-case nil ... ...) nil (ert-skip form-description-571))) value-569)) (let* ((fn-572 #'file-remote-p) (args-573 (condition-case err (let ... ...) (error ...)))) (let ((value-574 'ert-form-evaluation-aborted-575)) (let (form-description-576) (if (condition-case nil ... ...) nil (ert-skip form-description-576))) value-574)) (let* ((fn-577 #'file-writable-p) (args-578 (condition-case err (let ... ...) (error ...)))) (let ((value-579 'ert-form-evaluation-aborted-580)) (let (form-description-581) (if (condition-case nil ... ...) nil (ert-skip form-description-581))) value-579)) (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) (shadow-todo-file shadow-test-todo-file) (shadow-inhibit-message t) (shadow-test-remote-temporary-file-directory (file-truename shadow-test-remote-temporary-file-directory)) (shadow-noquery t) shadow-clusters shadow-files-to-copy cluster1 cluster2 primary regexp file mocked-input) (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "cluster1" primary shadow-system-name regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster1 primary regexp) (setq cluster2 "cluster2" primary (file-remote-p shadow-test-remote-temporary-file-directory) regexp (shadow-regexp-superquote primary)) (shadow-set-cluster cluster2 primary regexp) (setq file (make-temp-name ...) shadow-literal-groups (list ...) shadow-regexp-groups (list ...) mocked-input (list ... file)) (let (...) (save-current-buffer ... ...)) (let (...) (save-current-buffer ... ...)) (advice--add-function :before (cons ... ...) #'... '...) (shadow-copy-files 'noquery) (let (...) (let ... ...) value-587) (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char ...) (let* ... ...))) (let* ((new ...)) (if (eq new ...) nil (fset ... new))) (let ((--dolist-tail-- ...) elt) (while --dolist-tail-- (setq elt ...) (condition-case nil ... ...) (condition-case nil ... ...) (setq --dolist-tail-- ...))) (shadow--tests-cleanup)))) :most-recent-result nil :expected-result-type :passed :tags nil))
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) :tests [#s(ert-test :name shadow-test00-clusters :documentation "Check cluster definitions...." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test01-sites :documentation "Check site definitions.\nPe..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test02-files :documentation "Check file manipulation fu..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test03-expand-cluster-in-file-name :documentation "Check canonical file name ..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test04-contract-file-name :documentation "Check canonical file name ..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test05-file-match :documentation "Check `shadow-same-site' a..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test06-literal-groups :documentation "Check literal group defini..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test07-regexp-groups :documentation "Check regexp group definit..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test08-shadow-todo :documentation "Check that needed shadows ..." :body ... :most-recent-result ... :expected-result-type :passed :tags nil) #s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow f..." :body ... :most-recent-result nil :expected-result-type :passed :tags nil)] :test-map #<hash-table eql 10/10 0x1ff5b943554d> :test-results [#s(ert-test-passed :messages "Not a valid primary!\nRegex..." :should-forms ... :duration 4.054058) #s(ert-test-passed :messages "" :should-forms ... :duration 0.019025) #s(ert-test-passed :messages "" :should-forms ... :duration 0.031444) #s(ert-test-passed :messages "" :should-forms ... :duration 0.017081) #s(ert-test-passed :messages "" :should-forms ... :duration 0.188851) #s(ert-test-passed :messages "" :should-forms ... :duration 0.034957) #s(ert-test-passed :messages "" :should-forms ... :duration 0.040878) #s(ert-test-passed :messages "" :should-forms ... :duration 0.017809) #s(ert-test-failed :messages "shadow-test08-shadow-todo:..." :should-forms ... :duration 0.553099 :condition ... :backtrace ... :infos nil) nil] :test-start-times [(23925 25088 333098 0) (23925 25092 387309 0) (23925 25092 406397 0) (23925 25092 437905 0) (23925 25092 455050 0) (23925 25092 643982 0) (23925 25092 679003 0) (23925 25092 719950 0) (23925 25092 737824 0) (23925 25093 709516 0)] :test-end-times [(23925 25092 387156 0) (23925 25092 406334 0) (23925 25092 437841 0) (23925 25092 454986 0) (23925 25092 643901 0) (23925 25092 678939 0) (23925 25092 719881 0) (23925 25092 737759 0) (23925 25093 290923 0) nil] :passed-expected 8 :passed-unexpected 0 :failed-expected 0 :failed-unexpected 1 :skipped 0 :start-time (23925 25088 332964 0) :end-time nil :aborted-p nil :current-test #s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow f..." :body (lambda nil ... ... ... ...) :most-recent-result nil :expected-result-type :passed :tags nil) :next-redisplay 0.0) #s(ert-test :name shadow-test09-shadow-copy-files :documentation "Check that needed shadow f..." :body (lambda nil (let* ... ...) (let* ... ...) (let* ... ...) (let ... ...)) :most-recent-result nil :expected-result-type :passed :tags nil) #f(compiled-function (event-type &rest event-args) #<bytecode 0x1ff5b962be0d>))
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type &rest event-args) #<bytecode 0x1ff5b962be0d>) nil)
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))) t)
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests.el" "--eval" "(ert-run-tests-batch-and-exit (quote (not (tag :un..."))
  command-line()
  normal-top-level()

Test shadow-test09-shadow-copy-files backtrace:
  signal(ert-test-failed (((should (looking-at (regexp-quote "(setq sh
  ert-fail(((should (looking-at (regexp-quote "(setq shadow-files-to-c
  (if (unwind-protect (setq value-591 (apply fn-589 args-590)) (setq f
  (let (form-description-593) (if (unwind-protect (setq value-591 (app
  (let ((value-591 'ert-form-evaluation-aborted-592)) (let (form-descr
  (let* ((fn-589 #'looking-at) (args-590 (condition-case err (let ((si
  (save-current-buffer (set-buffer shadow-todo-buffer) (goto-char (poi
  (progn (shadow--tests-cleanup) (shadow-initialize) (setq cluster1 "c
  (unwind-protect (progn (shadow--tests-cleanup) (shadow-initialize) (
  (let ((backup-inhibited t) (shadow-info-file shadow-test-info-file) 
  (lambda nil (let* ((fn-567 #'not) (args-568 (condition-case err (let
  ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
  ert-run-test(#s(ert-test :name shadow-test09-shadow-copy-files :docu
  ert-run-or-rerun-test(#s(ert--stats :selector (not (tag :unstable)) 
  ert-run-tests((not (tag :unstable)) #f(compiled-function (event-type
  ert-run-tests-batch((not (tag :unstable)))
  ert-run-tests-batch-and-exit((not (tag :unstable)))
  eval((ert-run-tests-batch-and-exit '(not (tag :unstable))) t)
  command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/shadowfile-tests.el"
  command-line()
  normal-top-level()
Test shadow-test09-shadow-copy-files condition:
    (ert-test-failed
     ((should
       (looking-at
	(regexp-quote "(setq shadow-files-to-copy nil)")))
      :form
      (looking-at "(setq shadow-files-to-copy nil)")
      :value nil))
   FAILED  10/10  shadow-test09-shadow-copy-files (1.097443 sec)

Ran 10 tests, 8 results as expected, 2 unexpected (2019-09-08 22:18:15+0200, 6.863622 sec)

2 unexpected results:
   FAILED  shadow-test08-shadow-todo
   FAILED  shadow-test09-shadow-copy-files

make[1]: *** [lisp/shadowfile-tests.log] Error 1
make: *** [lisp/shadowfile-tests] Error 2

  reply	other threads:[~2019-09-08 20:23 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-28  0:41 bug#37202: shadowfile-tests: two failures on macOS Stefan Kangas
2019-08-28  8:18 ` Michael Albinus
2019-08-29 13:51   ` Michael Albinus
     [not found]     ` <CADwFkmkxp+NhTTuUg_kja-768nskD4JhbhTwTMKkwh4=QxfKjw@mail.gmail.com>
2019-09-03 12:12       ` Michael Albinus
2019-09-03 13:13         ` Stefan Kangas
2019-09-03 15:04           ` Michael Albinus
2019-09-04 12:16           ` Michael Albinus
2019-09-05 15:07             ` Stefan Kangas
2019-09-07 10:33               ` Michael Albinus
2019-09-07 12:45                 ` Stefan Kangas
2019-09-08  8:21                   ` Michael Albinus
2019-09-08 20:23                     ` Stefan Kangas [this message]
2019-09-13 12:29                       ` Michael Albinus
2019-09-14 16:39                         ` Stefan Kangas
2019-09-15 14:56                           ` Michael Albinus
2019-09-16  2:07                             ` Stefan Kangas
2019-09-16 13:13                               ` Michael Albinus
2019-09-16 19:52                             ` Glenn Morris
2019-09-19 11:09                               ` Michael Albinus
2019-09-20  0:19                                 ` Paul Eggert
2019-09-20 12:35                                   ` Michael Albinus
2019-09-20 19:04                                     ` Paul Eggert
2019-09-20 19:13                                       ` Michael Albinus
2019-09-21  7:55                               ` Michael Albinus
2019-10-03 13: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=CADwFkmntxBpxoj3iuzMRm6rbvbR1jA1SvbOvLPD8Hy8Wo7jazA@mail.gmail.com \
    --to=stefan@marxist.se \
    --cc=37202@debbugs.gnu.org \
    --cc=michael.albinus@gmx.de \
    /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).