+(ert-deftest company-multi-backend-filters-backends-by-prefix ()
+ (let ((company-backend
+ (list (lambda (command &optional arg &rest ignore)
+ (cl-case command
+ (prefix (cons "z" t))
+ (candidates '("a" "b"))))
+ (lambda (command &optional arg &rest ignore)
+ (cl-case command
+ (prefix "t")
+ (candidates '("c" "d"))))
+ (lambda (command &optional arg &rest ignore)
+ (cl-case command
+ (prefix "z")
+ (candidates '("e" "f")))))))
+ (should (equal (company-call-backend 'candidates "z") '("a" "b" "e" "f")))))
+