aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/lisp/auth-source-tests.el45
1 files changed, 27 insertions, 18 deletions
diff --git a/test/lisp/auth-source-tests.el b/test/lisp/auth-source-tests.el
index e73f55e2bfa..2634777c7db 100644
--- a/test/lisp/auth-source-tests.el
+++ b/test/lisp/auth-source-tests.el
@@ -32,6 +32,10 @@
32(defvar secrets-enabled t 32(defvar secrets-enabled t
33 "Enable the secrets backend to test its features.") 33 "Enable the secrets backend to test its features.")
34 34
35(defun auth-source-ensure-ignored-backend (source)
36 (auth-source-validate-backend source '((:source . "")
37 (:type . ignore))))
38
35(defun auth-source-validate-backend (source validation-alist) 39(defun auth-source-validate-backend (source validation-alist)
36 (let ((backend (auth-source-backend-parse source))) 40 (let ((backend (auth-source-backend-parse source)))
37 (should (auth-source-backend-p backend)) 41 (should (auth-source-backend-p backend))
@@ -119,15 +123,6 @@
119 (:search-function . auth-source-secrets-search) 123 (:search-function . auth-source-secrets-search)
120 (:create-function . auth-source-secrets-create))))) 124 (:create-function . auth-source-secrets-create)))))
121 125
122(ert-deftest auth-source-backend-parse-secrets-nil-source ()
123 (provide 'secrets) ; simulates the presence of the `secrets' package
124 (let ((secrets-enabled t))
125 (auth-source-validate-backend '(:source (:secrets nil))
126 '((:source . "session")
127 (:type . secrets)
128 (:search-function . auth-source-secrets-search)
129 (:create-function . auth-source-secrets-create)))))
130
131(ert-deftest auth-source-backend-parse-secrets-alias () 126(ert-deftest auth-source-backend-parse-secrets-alias ()
132 (provide 'secrets) ; simulates the presence of the `secrets' package 127 (provide 'secrets) ; simulates the presence of the `secrets' package
133 (let ((secrets-enabled t)) 128 (let ((secrets-enabled t))
@@ -162,17 +157,12 @@
162 (:search-function . auth-source-secrets-search) 157 (:search-function . auth-source-secrets-search)
163 (:create-function . auth-source-secrets-create)))))) 158 (:create-function . auth-source-secrets-create))))))
164 159
165;; TODO This test shows suspicious behavior of auth-source: the 160(ert-deftest auth-source-backend-parse-invalid-or-nil-source ()
166;; "secrets" source is used even though nothing in the input indicates
167;; that is what we want
168(ert-deftest auth-source-backend-parse-secrets-no-source ()
169 (provide 'secrets) ; simulates the presence of the `secrets' package 161 (provide 'secrets) ; simulates the presence of the `secrets' package
170 (let ((secrets-enabled t)) 162 (let ((secrets-enabled t))
171 (auth-source-validate-backend '(:source '(foo)) 163 (auth-source-ensure-ignored-backend nil)
172 '((:source . "session") 164 (auth-source-ensure-ignored-backend '(:source '(foo)))
173 (:type . secrets) 165 (auth-source-ensure-ignored-backend '(:source nil))))
174 (:search-function . auth-source-secrets-search)
175 (:create-function . auth-source-secrets-create)))))
176 166
177(defun auth-source--test-netrc-parse-entry (entry host user port) 167(defun auth-source--test-netrc-parse-entry (entry host user port)
178 "Parse a netrc entry from buffer." 168 "Parse a netrc entry from buffer."
@@ -219,5 +209,24 @@
219 ("login" . "user1") 209 ("login" . "user1")
220 ("machine" . "mymachine1")))))) 210 ("machine" . "mymachine1"))))))
221 211
212(ert-deftest auth-source-test-format-prompt ()
213 (should (equal (auth-source-format-prompt "test %u %h %p" '((?u "user") (?h "host")))
214 "test user host %p")))
215
216(ert-deftest auth-source-test-remembrances-of-things-past ()
217 (let ((password-cache t)
218 (password-data (make-vector 7 0)))
219 (auth-source-remember '(:host "wedd") '(4 5 6))
220 (should (auth-source-remembered-p '(:host "wedd")))
221 (should-not (auth-source-remembered-p '(:host "xedd")))
222 (auth-source-remember '(:host "xedd") '(1 2 3))
223 (should (auth-source-remembered-p '(:host "xedd")))
224 (should-not (auth-source-remembered-p '(:host "zedd")))
225 (should (auth-source-recall '(:host "xedd")))
226 (should-not (auth-source-recall nil))
227 (auth-source-forget+ :host t)
228 (should-not (auth-source-remembered-p '(:host "xedd")))
229 (should-not (auth-source-remembered-p '(:host t)))))
230
222(provide 'auth-source-tests) 231(provide 'auth-source-tests)
223;;; auth-source-tests.el ends here 232;;; auth-source-tests.el ends here