diff options
Diffstat (limited to 'test/lisp/auth-source-tests.el')
-rw-r--r-- | test/lisp/auth-source-tests.el | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/lisp/auth-source-tests.el b/test/lisp/auth-source-tests.el index be516f2c40d..ca8a3eb78f0 100644 --- a/test/lisp/auth-source-tests.el +++ b/test/lisp/auth-source-tests.el @@ -344,5 +344,25 @@ "session" (format "%s@%s" (plist-get auth-info :user) (plist-get auth-info :host))))) +(ert-deftest auth-source-delete () + (let* ((netrc-file (make-temp-file "auth-source-test" nil nil "\ +machine a1 port a2 user a3 password a4 +machine b1 port b2 user b3 password b4 +machine c1 port c2 user c3 password c4\n")) + (auth-sources (list netrc-file)) + (auth-source-do-cache nil) + (expected '((:host "a1" :port "a2" :user "a3" :secret "a4"))) + (parameters '(:max 1 :host t))) + (unwind-protect + (let ((found (apply #'auth-source-delete parameters))) + (dolist (f found) + (let ((s (plist-get f :secret))) + (setf f (plist-put f :secret + (if (functionp s) (funcall s) s))))) + ;; Note: The netrc backend doesn't delete anything, so + ;; this is actually the same as `auth-source-search'. + (should (equal found expected))) + (delete-file netrc-file)))) + (provide 'auth-source-tests) ;;; auth-source-tests.el ends here |