mirror of
https://gitlab.com/dwt1/dotfiles.git
synced 2026-04-23 11:30:23 +10:00
Updating Doom Emacs.
This commit is contained in:
@@ -1,69 +0,0 @@
|
||||
;; -*- lexical-binding: t; no-byte-compile: t; -*-
|
||||
;;; core/test/helpers.el
|
||||
|
||||
(eval-and-compile
|
||||
(setq doom-interactive-mode 'test)
|
||||
(doom-initialize 'force 'noerror)
|
||||
(require 'buttercup)
|
||||
(setq split-width-threshold 0
|
||||
split-height-threshold 0
|
||||
window-min-width 0
|
||||
window-min-height 0))
|
||||
|
||||
;;
|
||||
;;; Buttercup extensions
|
||||
|
||||
(buttercup-define-matcher-for-binary-function :to-equal-file file-equal-p)
|
||||
|
||||
(buttercup-define-matcher :to-expand-into (form expected)
|
||||
(cl-destructuring-bind (form expected)
|
||||
(mapcar #'funcall (list form expected))
|
||||
(let ((expanded (macroexpand-1 form)))
|
||||
(if (equal expanded expected)
|
||||
(cons t (format "Expected `%S' to not expand to `%S'"
|
||||
form expected))
|
||||
(cons nil (format "Expected `%S' to not expand to `%S', but got `%S' instead"
|
||||
form expected expanded))))))
|
||||
|
||||
(buttercup-define-matcher :to-output (form &optional expected-output)
|
||||
(let ((expected-output (and (functionp expected-output)
|
||||
(funcall expected-output)))
|
||||
output)
|
||||
(with-current-buffer (get-buffer "*Messages*")
|
||||
(let ((standard-output (current-buffer))
|
||||
(start (point)))
|
||||
(let ((inhibit-message t))
|
||||
(funcall form))
|
||||
(setq output (buffer-substring-no-properties start (point-max)))
|
||||
(with-silent-modifications (erase-buffer))))
|
||||
(cond ((null expected-output)
|
||||
(if (string-empty-p output)
|
||||
(cons nil (format "Expected output %S, but got none"
|
||||
expected-output))
|
||||
(cons t (format "Expected no output, but got %S"
|
||||
output))))
|
||||
((not (equal expected-output output))
|
||||
(cons nil (format "Expected output %S, but got %S instead"
|
||||
expected-output output)))
|
||||
((cons t (format "Expected to not get %S as output"
|
||||
expected-output))))))
|
||||
|
||||
(buttercup-define-matcher :to-contain-items (items expected)
|
||||
(cl-destructuring-bind (items expected)
|
||||
(mapcar #'funcall (list items expected))
|
||||
(if-let (missing (cl-set-difference expected items))
|
||||
(cons nil (format "Expected list to contain %S, but it was missing %S"
|
||||
expected missing))
|
||||
(cons t (format "Expected list to not contain %S, but it did: %S"
|
||||
expected items)))))
|
||||
|
||||
|
||||
;;
|
||||
;;; Helper macros
|
||||
|
||||
(defmacro insert!! (&rest text)
|
||||
"Insert TEXT in buffer, then move cursor to last {0} marker."
|
||||
`(progn
|
||||
(insert ,@text)
|
||||
(when (search-backward "{0}" nil t)
|
||||
(replace-match "" t t))))
|
||||
@@ -1,17 +0,0 @@
|
||||
;;; core/test/init.el -*- lexical-binding: t; no-byte-compile: t; -*-
|
||||
|
||||
;; An init.el for our unit test suites. Do not use this!
|
||||
|
||||
(doom! :completion
|
||||
company
|
||||
:ui
|
||||
doom-dashboard
|
||||
popup
|
||||
workspaces
|
||||
:editor
|
||||
evil
|
||||
:tools
|
||||
pass
|
||||
:lang
|
||||
org
|
||||
web)
|
||||
@@ -1,4 +0,0 @@
|
||||
;; -*- no-byte-compile: t; -*-
|
||||
;;; core/test/packages.el
|
||||
|
||||
(package! buttercup)
|
||||
@@ -3,9 +3,9 @@
|
||||
|
||||
(describe "core/autoload/format"
|
||||
(describe "format!"
|
||||
:var (doom-format-backend)
|
||||
:var (doom-output-backend)
|
||||
(before-all
|
||||
(setq doom-format-backend 'ansi))
|
||||
(setq doom-output-backend 'ansi))
|
||||
|
||||
(it "should be a drop-in replacement for `format'"
|
||||
(expect (format! "Hello %s" "World")
|
||||
@@ -16,7 +16,7 @@
|
||||
:to-equal "[31mHello World[0m"))
|
||||
|
||||
(it "supports text properties in interactive sessions"
|
||||
(let ((doom-format-backend 'text-properties))
|
||||
(let ((doom-output-backend 'text-properties))
|
||||
(expect (get-text-property 0 'face (format! (red "Hello %s") "World"))
|
||||
:to-equal (list :foreground (face-foreground 'term-color-red)))))
|
||||
|
||||
|
||||
@@ -101,12 +101,6 @@
|
||||
(expect (appendq! list '(d e f))
|
||||
:to-equal '(a b c d e f)))))
|
||||
|
||||
(describe "nconcq!"
|
||||
(it "nconc's a list to a list symbol"
|
||||
(let ((list '(a b c)))
|
||||
(expect (nconcq! list '(d e f))
|
||||
:to-equal '(a b c d e f)))))
|
||||
|
||||
(describe "delq!"
|
||||
(it "delete's a symbol from a list"
|
||||
(let ((list '(a b c)))
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
;;; core/test/test-core.el
|
||||
|
||||
(describe "core"
|
||||
:var (doom-interactive-mode)
|
||||
:var (doom-interactive-p)
|
||||
(before-each
|
||||
(setq doom-interactive-mode nil))
|
||||
(setq doom-interactive-p nil))
|
||||
|
||||
(describe "initialization"
|
||||
(describe "doom-initialize"
|
||||
@@ -33,7 +33,7 @@
|
||||
(expect 'doom-initialize-packages :to-have-been-called))
|
||||
|
||||
(it "doesn't initialize packages if core autoload file was loaded"
|
||||
(let ((doom-interactive-mode t))
|
||||
(let ((doom-interactive-p t))
|
||||
(spy-on 'doom-load-autoloads-file :and-return-value t)
|
||||
(doom-initialize nil 'noerror)
|
||||
(expect 'doom-load-autoloads-file :to-have-been-called-with doom-package-autoload-file)
|
||||
|
||||
Reference in New Issue
Block a user