branch: externals/company
commit 854e48fa804c0770e479a876e77414169d48edb9
Author: Dmitry Gutov <[email protected]>
Commit: Dmitry Gutov <[email protected]>
Add tests for capf interruption handling
---
test/capf-tests.el | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/test/capf-tests.el b/test/capf-tests.el
index 37efa8d541..10bb267728 100644
--- a/test/capf-tests.el
+++ b/test/capf-tests.el
@@ -1,6 +1,6 @@
;;; capf-tests.el --- company tests for the company-capf backend -*-
lexical-binding: t; -*-
-;; Copyright (C) 2018-2019, 2021-2023 Free Software Foundation, Inc.
+;; Copyright (C) 2018-2019, 2021-2024 Free Software Foundation, Inc.
;; Author: João Távora <[email protected]>
;; Keywords:
@@ -141,5 +141,29 @@
0 14 (face (company-tooltip-common company-tooltip));
"with-current-b"
14 19 (face company-tooltip))))))) ; "uffer"
+(ert-deftest company-capf-interrupted-on-input ()
+ (should
+ (eq
+ (catch 'interrupted
+ (with-temp-buffer
+ (let ((completion-at-point-functions
+ (list (lambda ()
+ (list 1 1 obarray :company-use-while-no-input t))))
+ (unread-command-events '(?a)))
+ (company-capf 'candidates "a")
+ (error "Not reachable"))))
+ 'new-input)))
+
+(ert-deftest company-capf-uninterrupted ()
+ (should
+ (equal
+ (with-temp-buffer
+ (let ((completion-at-point-functions
+ (list (lambda ()
+ (list 1 1 '("abcd" "ae" "be") t))))
+ (unread-command-events '(?a)))
+ (company-capf 'candidates "b")))
+ '("be"))))
+
(provide 'capf-tests)
;;; capf-tests.el ends here