From 898449e374e2e6f36cca0735d304eaf5d36bdb43 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Wed, 20 Jun 2018 19:09:05 +0200 Subject: [PATCH] Add completion/company tests --- .../completion/company/test/test-company.el | 52 +++++++++++-------- 1 file changed, 29 insertions(+), 23 deletions(-) diff --git a/modules/completion/company/test/test-company.el b/modules/completion/company/test/test-company.el index 8d7c3d61a..9892516a7 100644 --- a/modules/completion/company/test/test-company.el +++ b/modules/completion/company/test/test-company.el @@ -1,44 +1,50 @@ ;; -*- lexical-binding: t; no-byte-compile: t; -*- ;;; completion/company/test/test-company.el -(load! "../autoload") - -;; -(xdescribe "completion/company" - :var (company-backends) - +(describe "completion/company" (before-all - (provide 'company)) - (after-all - (unload-feature 'company t)) + (load! "../autoload")) (describe ":company-backend" - :var (text-mode-hook company-backends) + :var (a) (before-each (setq company-backends '(default) - text-mode-hook nil)) + text-mode-hook nil + a (get-buffer-create "x")) + (set-buffer a) + (spy-on 'require)) + (after-each + (fmakunbound '+company|init-text-mode) + (kill-buffer a)) + + (it "adds hooks and defines +company|init-MODE" + (set-company-backend! 'text-mode '(backend-1)) + (expect (fboundp '+company|init-text-mode)) + (expect text-mode-hook :to-equal '(+company|init-text-mode))) (it "adds grouped backends" (set-company-backend! 'text-mode '(backend-1)) - (with-temp-buffer - (text-mode) - (expect company-backends :to-equal '((backend-1) default)))) + (text-mode) + (expect company-backends :to-equal '((backend-1) default))) (it "adds multiple backends" (set-company-backend! 'text-mode 'backend-1 'backend-2) - (with-temp-buffer - (text-mode) - (expect company-backends :to-equal '(backend-1 backend-2 default)))) + (text-mode) + (expect company-backends :to-equal '(backend-1 backend-2 default))) (it "adds single backend" (set-company-backend! 'text-mode 'backend-1) - (with-temp-buffer - (text-mode) - (expect company-backends :to-equal '(backend-1 default)))) + (text-mode) + (expect company-backends :to-equal '(backend-1 default))) (it "overwrites past values" (set-company-backend! 'text-mode 'backend-1) (set-company-backend! 'text-mode 'backend-2) - (with-temp-buffer - (text-mode) - (expect company-backends :to-equal '(backend-2 default)))))) + (text-mode) + (expect company-backends :to-equal '(backend-2 default))) + + (it "unsets past values" + (set-company-backend! 'text-mode 'backend-1) + (set-company-backend! 'text-mode nil) + (text-mode) + (expect company-backends :to-equal '(default)))))