Subject: Re: bug#76323: 30.0.93; auth-source-pass: Annoying error when ~/.password-store doesn't exist

From: Damien Cassou <[email-masked]>
Date: Tue, 11 Mar 2025 14:11:30 +0100

"Basil L. Contovounesios" <[email-masked]> writes:
> Applying the patch leads to the attached test failures.  It looks like
> the tests did not require an existing auth-source-pass-filename until
> now.  Perhaps the following fix is sufficient?

I find it a bit annoying to create a directory on the file system for
each test that executes, especially as I wrote the test suite in a way
that the filesystem is never necessary :-). Another approach would be to
temporarily bind `file-directory-p` to a function that always return a
non-nil value but this is a bit too white-box testing for my taste. I
suggest merging your fix as it is.

Thank you for your work

> diff --git a/test/lisp/auth-source-pass-tests.el b/test/lisp/auth-source-pass-tests.el
> index ac88f3de030..48796086970 100644
> --- a/test/lisp/auth-source-pass-tests.el
> +++ b/test/lisp/auth-source-pass-tests.el
> @@ -92,7 +92,8 @@ auth-source-pass--with-store
>       (let ((auth-source-debug #'auth-source-pass--debug)
>             (auth-source-pass--debug-log nil)
>             (auth-source-pass--parse-log nil))
> -       ,@body)))
> +       (ert-with-temp-directory auth-source-pass-filename
> +         ,@body))))
>  
>  (defun auth-source-pass--explain-match-entry-p (entry hostname &optional user port)
>    "Explainer function for `auth-source-pass-match-entry-p'.
>
> Yasufuku-san, would you like to provide an updated patch?
>
> Thanks,
> -- 
> Basil
>
> -*- mode: compilation; default-directory: "~/.local/src/emacs/" -*-
> Compilation started at Sat Mar  8 10:44:00
>
> make TEST_LOAD_EL=no test/auth-source-pass-tests
> make -C test auth-source-pass-tests
> make[1]: Entering directory '/home/blc/.local/src/emacs/test'
> make[2]: Entering directory '/home/blc/.local/src/emacs/test'
>   ELC      lisp/auth-source-pass-tests.elc
>   GEN      lisp/auth-source-pass-tests.log
> Running 50 tests (2025-03-08 10:44:01+0100, selector `(not (or (tag :unstable) (tag :nativecomp)))')
>    passed   1/50  auth-source-pass--disambiguate-extract-host-from-hostname (0.026075 sec)
>    passed   2/50  auth-source-pass--disambiguate-extract-port-from-hostname (0.000242 sec)
>    passed   3/50  auth-source-pass--disambiguate-extract-user-from-hostname (0.000220 sec)
>    passed   4/50  auth-source-pass--disambiguate-prefer-port-parameter (0.000211 sec)
>    passed   5/50  auth-source-pass--disambiguate-prefer-user-parameter (0.000212 sec)
>    passed   6/50  auth-source-pass--find-match-return-parsed-data (0.000242 sec)
>    passed   7/50  auth-source-pass--matching-entries (0.000390 sec)
>    passed   8/50  auth-source-pass--matching-entries-find-entries-with-a-port (0.000080 sec)
>    passed   9/50  auth-source-pass--matching-entries-find-entries-with-a-port-when-passed-multiple-ports (0.000157 sec)
>    passed  10/50  auth-source-pass--matching-entries-find-entries-with-a-username (0.000266 sec)
>    passed  11/50  auth-source-pass--matching-entries-find-entries-with-slash (0.000243 sec)
>    passed  12/50  auth-source-pass--matching-entries-sort-results (0.000470 sec)
>    passed  13/50  auth-source-pass-all-supported-organizations (0.001892 sec)
>    passed  14/50  auth-source-pass-any-host (0.003013 sec)
>    passed  15/50  auth-source-pass-build-result-entry-takes-precedence (0.000277 sec)
>    passed  16/50  auth-source-pass-build-result-return-entry-values (0.000154 sec)
>    passed  17/50  auth-source-pass-build-result-return-parameters (0.000171 sec)
>    passed  18/50  auth-source-pass-build-result-with-multiple-hosts (0.000267 sec)
>    passed  19/50  auth-source-pass-build-result-with-multiple-hosts-no-match (0.000237 sec)
> Test auth-source-pass-can-start-from-auth-source-search backtrace:
>   signal(ert-test-failed (((should (equal (plist-get result :user) "so
>   ert-fail(((should (equal (plist-get result :user) "someone")) :form 
>   #f(compiled-function () #<bytecode -0xb7974fe07c738cf>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-can-start-from-auth-
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-can-start-from-auth-source-search condition:
>     (ert-test-failed
>      ((should (equal (plist-get result :user) "someone")) :form
>       (equal nil "someone") :value nil :explanation
>       (different-types nil "someone")))
>    FAILED  20/50  auth-source-pass-can-start-from-auth-source-search (0.000538 sec) at lisp/auth-source-pass-tests.el:467
> Test auth-source-pass-extra-query-keywords--akib backtrace:
>   signal(ert-test-failed (((should (equal results '((:host "disroot.or
>   ert-fail(((should (equal results '((:host "disroot.org" :user "akib"
>   #f(compiled-function () #<bytecode -0x83ca3c541d1f226>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--akib condition:
>     (ert-test-failed
>      ((should (equal results '(...))) :form
>       (equal nil ((:host "disroot.org" :user "akib" :secret "b"))) :value
>       nil :explanation
>       (different-types nil
> 		       ((:host "disroot.org" :user "akib" :secret "b")))))
>    FAILED  21/50  auth-source-pass-extra-query-keywords--akib (0.000824 sec) at lisp/auth-source-pass-tests.el:630
> Test auth-source-pass-extra-query-keywords--ambiguous-user-host backtrace:
>   signal(ert-test-failed (((should (equal results '((:host "bar.org" :
>   ert-fail(((should (equal results '((:host "bar.org" :secret "c")))) 
>   #f(compiled-function () #<bytecode -0x83ca3c541d1f226>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--ambiguous-user-host condition:
>     (ert-test-failed
>      ((should (equal results '(...))) :form
>       (equal nil ((:host "bar.org" :secret "c"))) :value nil :explanation
>       (different-types nil ((:host "bar.org" :secret "c")))))
>    FAILED  22/50  auth-source-pass-extra-query-keywords--ambiguous-user-host (0.000462 sec) at lisp/auth-source-pass-tests.el:731
> Test auth-source-pass-extra-query-keywords--baseline backtrace:
>   signal(ert-test-failed (((should (equal (auth-source-search :host "f
>   ert-fail(((should (equal (auth-source-search :host "foo") '((:host "
>   #f(compiled-function () #<bytecode 0x6738477e320d0d>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--baseline condition:
>     (ert-test-failed
>      ((should (equal (auth-source-search :host "foo") '(...))) :form
>       (equal nil ((:host "foo"))) :value nil :explanation
>       (different-types nil ((:host "foo")))))
>    FAILED  23/50  auth-source-pass-extra-query-keywords--baseline (0.000457 sec) at lisp/auth-source-pass-tests.el:681
> Test auth-source-pass-extra-query-keywords--host backtrace:
>   signal(ert-test-failed (((should (equal results '((:host "Libera.Cha
>   ert-fail(((should (equal results '((:host "Libera.Chat" :secret "b")
>   #f(compiled-function () #<bytecode -0x83ca3c541d1f226>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--host condition:
>     (ert-test-failed
>      ((should (equal results '(...))) :form
>       (equal nil ((:host "Libera.Chat" :secret "b"))) :value nil
>       :explanation
>       (different-types nil ((:host "Libera.Chat" :secret "b")))))
>    FAILED  24/50  auth-source-pass-extra-query-keywords--host (0.000535 sec) at lisp/auth-source-pass-tests.el:658
> Test auth-source-pass-extra-query-keywords--hosts-first backtrace:
>   signal(ert-test-failed (((should (equal results '((:host "x.com" :se
>   ert-fail(((should (equal results '((:host "x.com" :secret "c") (:hos
>   #f(compiled-function () #<bytecode -0x83ca3c541d1f226>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--hosts-first condition:
>     (ert-test-failed
>      ((should (equal results '(... ... ...))) :form
>       (equal nil
> 	     ((:host "x.com" :secret "c")
> 	      (:host "x.com" :user "bar" :port "42" :secret "a")
> 	      (:host "x.com" :user "foo" :secret "e")))
>       :value nil :explanation
>       (different-types nil
> 		       ((:host "x.com" :secret "c")
> 			(:host "x.com" :user "bar" :port "42" :secret "a")
> 			(:host "x.com" :user "foo" :secret "e")))))
>    FAILED  25/50  auth-source-pass-extra-query-keywords--hosts-first (0.000443 sec) at lisp/auth-source-pass-tests.el:712
>    passed  26/50  auth-source-pass-extra-query-keywords--netrc-akib (0.001084 sec)
>    passed  27/50  auth-source-pass-extra-query-keywords--netrc-baseline (0.000452 sec)
>    passed  28/50  auth-source-pass-extra-query-keywords--netrc-host (0.000537 sec)
> Test auth-source-pass-extra-query-keywords--port-type backtrace:
>   signal(ert-test-failed (((should (equal (mapcar f (auth-source-searc
>   ert-fail(((should (equal (mapcar f (auth-source-search :host "x.com"
>   #f(compiled-function () #<bytecode 0x90b1b551d420e86>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--port-type condition:
>     (ert-test-failed
>      ((should (equal (mapcar f ...) '(...))) :form
>       (equal nil ((:host "x.com" :port 42 :secret "a"))) :value nil
>       :explanation
>       (different-types nil ((:host "x.com" :port 42 :secret "a")))))
>    FAILED  29/50  auth-source-pass-extra-query-keywords--port-type (0.000405 sec) at lisp/auth-source-pass-tests.el:689
>    passed  30/50  auth-source-pass-extra-query-keywords--req-noparam-miss (0.000422 sec)
>    passed  31/50  auth-source-pass-extra-query-keywords--req-noparam-miss-netrc (0.000653 sec)
> Test auth-source-pass-extra-query-keywords--req-param backtrace:
>   signal(ert-test-failed (((should (equal results '((:host "foo" :user
>   ert-fail(((should (equal results '((:host "foo" :user "bob" :secret 
>   #f(compiled-function () #<bytecode -0x1a53c7eb5556092f>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--req-param condition:
>     (ert-test-failed
>      ((should (equal results '(...))) :form
>       (equal nil ((:host "foo" :user "bob" :secret "a"))) :value nil
>       :explanation
>       (different-types nil ((:host "foo" :user "bob" :secret "a")))))
>    FAILED  32/50  auth-source-pass-extra-query-keywords--req-param (0.000367 sec) at lisp/auth-source-pass-tests.el:580
>    passed  33/50  auth-source-pass-extra-query-keywords--req-param-netrc (0.000600 sec)
> Test auth-source-pass-extra-query-keywords--suffixed-user backtrace:
>   signal(ert-test-failed (((should (equal results '((:host "x.com" :us
>   ert-fail(((should (equal results '((:host "x.com" :user "s p@m" :sec
>   #f(compiled-function () #<bytecode -0x5cca815e832d3b8>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--suffixed-user condition:
>     (ert-test-failed
>      ((should (equal results '(... ... ... ... ...))) :form
>       (equal nil
> 	     ((:host "x.com" :user "s p@m" :secret "b")
> 	      (:host "x.com" :user "s p@m" :port "42" :secret "a")
> 	      (:host "fa ke" :user "s p@m" :secret "e")
> 	      (:host "fa ke" :user "s p@m" :secret "d")
> 	      (:host "y.org" :user "s p@m" :secret "c")))
>       :value nil :explanation
>       (different-types nil
> 		       ((:host "x.com" :user "s p@m" :secret "b")
> 			(:host "x.com" :user "s p@m" :port "42" :secret
> 			       "a")
> 			(:host "fa ke" :user "s p@m" :secret "e")
> 			(:host "fa ke" :user "s p@m" :secret "d")
> 			(:host "y.org" :user "s p@m" :secret "c")))))
>    FAILED  34/50  auth-source-pass-extra-query-keywords--suffixed-user (0.000252 sec) at lisp/auth-source-pass-tests.el:746
> Test auth-source-pass-extra-query-keywords--user-priorities backtrace:
>   signal(ert-test-failed (((should (equal results '((:host "h" :user "
>   ert-fail(((should (equal results '((:host "h" :user "u" :port 2 :sec
>   #f(compiled-function () #<bytecode 0x1a7d46adbe651f58>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--user-priorities condition:
>     (ert-test-failed
>      ((should (equal results '(... ... ... ...))) :form
>       (equal nil
> 	     ((:host "h" :user "u" :port 2 :secret "@")
> 	      (:host "h" :user "u" :port 2 :secret "/")
> 	      (:host "g" :user "u" :port 2 :secret "@")
> 	      (:host "g" :user "u" :port 2 :secret "/")))
>       :value nil :explanation
>       (different-types nil
> 		       ((:host "h" :user "u" :port 2 :secret "@")
> 			(:host "h" :user "u" :port 2 :secret "/")
> 			(:host "g" :user "u" :port 2 :secret "@")
> 			(:host "g" :user "u" :port 2 :secret "/")))))
>    FAILED  35/50  auth-source-pass-extra-query-keywords--user-priorities (0.000273 sec) at lisp/auth-source-pass-tests.el:777
> Test auth-source-pass-extra-query-keywords--wild-port-hit backtrace:
>   signal(ert-test-failed (((should (equal results '((:host "x.com" :se
>   ert-fail(((should (equal results '((:host "x.com" :secret "a") (:hos
>   #f(compiled-function () #<bytecode -0xf92c73a98c86423>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--wild-port-hit condition:
>     (ert-test-failed
>      ((should (equal results '(... ...))) :form
>       (equal nil
> 	     ((:host "x.com" :secret "a")
> 	      (:host "x.com" :port 42 :secret "b")))
>       :value nil :explanation
>       (different-types nil
> 		       ((:host "x.com" :secret "a")
> 			(:host "x.com" :port 42 :secret "b")))))
>    FAILED  36/50  auth-source-pass-extra-query-keywords--wild-port-hit (0.000264 sec) at lisp/auth-source-pass-tests.el:539
>    passed  37/50  auth-source-pass-extra-query-keywords--wild-port-hit-netrc (0.000582 sec)
> Test auth-source-pass-extra-query-keywords--wild-port-miss backtrace:
>   signal(ert-test-failed (((should (equal results '((:host "x.com" :se
>   ert-fail(((should (equal results '((:host "x.com" :secret "a")))) :f
>   #f(compiled-function () #<bytecode -0xf92c73a98c86423>)()
>   #f(compiled-function () #<bytecode 0x84afd65454f8ec7>)()
>   handler-bind-1(#f(compiled-function () #<bytecode 0x84afd65454f8ec7>
>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>   ert-run-test(#s(ert-test :name auth-source-pass-extra-query-keywords
>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>   ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
>   ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
>   ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
>   eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
>   command-line-1(("-L" ":." "-l" "ert" "--eval" "(setq treesit-extra-l
>   command-line()
>   normal-top-level()
> Test auth-source-pass-extra-query-keywords--wild-port-miss condition:
>     (ert-test-failed
>      ((should (equal results '(...))) :form
>       (equal nil ((:host "x.com" :secret "a"))) :value nil :explanation
>       (different-types nil ((:host "x.com" :secret "a")))))
>    FAILED  38/50  auth-source-pass-extra-query-keywords--wild-port-miss (0.000203 sec) at lisp/auth-source-pass-tests.el:513
>    passed  39/50  auth-source-pass-extra-query-keywords--wild-port-miss-netrc (0.000588 sec)
>    passed  40/50  auth-source-pass-extra-query-keywords--wild-port-req-miss (0.000201 sec)
>    passed  41/50  auth-source-pass-extra-query-keywords--wild-port-req-miss-netrc (0.000256 sec)
>    passed  42/50  auth-source-pass-find-match-minimal-parsing (0.000427 sec)
>    passed  43/50  auth-source-pass-matching-entries-with-custom-separator (0.000095 sec)
>    passed  44/50  auth-source-pass-not-found (0.000052 sec)
>    passed  45/50  auth-source-pass-parse-simple (0.000047 sec)
>    passed  46/50  auth-source-pass-parse-with-colons-in-data (0.000034 sec)
>    passed  47/50  auth-source-pass-parse-with-dash-line (0.000033 sec)
>    passed  48/50  auth-source-pass-parse-with-trailing-spaces (0.000031 sec)
>    passed  49/50  auth-source-pass-prints-meaningful-debug-log (0.000192 sec)
>    passed  50/50  auth-source-pass-undefined-host (0.000024 sec)
>
> Ran 50 tests, 38 results as expected, 12 unexpected (2025-03-08 10:44:02+0100, 1.325117 sec)
>
> 12 unexpected results:
>    FAILED  auth-source-pass-can-start-from-auth-source-search
>    FAILED  auth-source-pass-extra-query-keywords--akib
>    FAILED  auth-source-pass-extra-query-keywords--ambiguous-user-host
>    FAILED  auth-source-pass-extra-query-keywords--baseline
>    FAILED  auth-source-pass-extra-query-keywords--host
>    FAILED  auth-source-pass-extra-query-keywords--hosts-first
>    FAILED  auth-source-pass-extra-query-keywords--port-type
>    FAILED  auth-source-pass-extra-query-keywords--req-param
>    FAILED  auth-source-pass-extra-query-keywords--suffixed-user
>    FAILED  auth-source-pass-extra-query-keywords--user-priorities
>    FAILED  auth-source-pass-extra-query-keywords--wild-port-hit
>    FAILED  auth-source-pass-extra-query-keywords--wild-port-miss
>
> make[2]: *** [Makefile:185: lisp/auth-source-pass-tests.log] Error 1
> make[2]: Leaving directory '/home/blc/.local/src/emacs/test'
> make[1]: *** [Makefile:251: lisp/auth-source-pass-tests] Error 2
> make[1]: Leaving directory '/home/blc/.local/src/emacs/test'
> make: *** [Makefile:1137: test/auth-source-pass-tests] Error 2
>
> Compilation exited abnormally with code 2 at Sat Mar  8 10:44:02, duration 2.54 s

-- 
Damien Cassou

"Success is the ability to go from one failure to another without
losing enthusiasm." --Winston Churchill