]> code.delx.au - gnu-emacs-elpa/blobdiff - company-tests.el
Support the keyword :with
[gnu-emacs-elpa] / company-tests.el
index 4ac59909256e1834db9ecf2b0033abb5f853e9e5..5a2608632ffb0009a2b3f7f8d3deef3cd3156460 100644 (file)
       (should (equal "13" (company-call-backend 'post-completion (nth 2 candidates))))
       (should (equal "42" (company-call-backend 'post-completion (nth 3 candidates)))))))
 
+(ert-deftest company-multi-backend-handles-keyword-with ()
+  (let ((primo (lambda (command &optional arg)
+                 (case command
+                   (prefix "a")
+                   (candidates '("abb" "abc" "abd")))))
+        (secundo (lambda (command &optional arg)
+                   (case command
+                     (prefix "a")
+                     (candidates '("acc" "acd"))))))
+    (let ((company-backend (list 'ignore 'ignore :with secundo)))
+      (should (null (company-call-backend 'prefix))))
+    (let ((company-backend (list 'ignore primo :with secundo)))
+      (should (equal "a" (company-call-backend 'prefix)))
+      (should (equal '("abb" "abc" "abd" "acc" "acd")
+                     (company-call-backend 'candidates "a"))))))
+
 (ert-deftest company-begin-backend-failure-doesnt-break-company-backends ()
   (with-temp-buffer
     (insert "a")