70 lines
2.9 KiB
EmacsLisp
70 lines
2.9 KiB
EmacsLisp
(require 'oni-core)
|
||
|
||
(ert-deftest oni-core-move-beginning-of-dwim-moves-to-beginning-of-indentation ()
|
||
"Test that ‘oni-core-move-beginning-of-dwim’ moves to the beginning of indentation."
|
||
(with-temp-buffer
|
||
(emacs-lisp-mode)
|
||
(insert "(defun test-defun ()\n \"Just testing a function\")")
|
||
(goto-char (point-max))
|
||
(oni-core-move-beginning-of-dwim)
|
||
(should (equal 24 (point)))))
|
||
|
||
(ert-deftest oni-core-move-beginning-of-dwim-moves-to-beginning-of-line ()
|
||
"Test that ‘oni-core-move-beginning-of-dwim’ moves to the beginning of the line."
|
||
(with-temp-buffer
|
||
(emacs-lisp-mode)
|
||
(insert "(defun test-defun ()\n \"Just testing a function\")")
|
||
(goto-char (point-max))
|
||
(oni-core-move-beginning-of-dwim)
|
||
(oni-core-move-beginning-of-dwim)
|
||
(should (equal 22 (point)))))
|
||
|
||
(ert-deftest oni-core-move-beginning-of-dwim-moves-to-beginning-of-indentation-again ()
|
||
"Test that ‘oni-core-move-beginning-of-dwim’ moves to the beginning of indentation again."
|
||
(with-temp-buffer
|
||
(emacs-lisp-mode)
|
||
(insert "(defun test-defun ()\n \"Just testing a function\")")
|
||
(goto-char (point-max))
|
||
(oni-core-move-beginning-of-dwim)
|
||
(oni-core-move-beginning-of-dwim)
|
||
(oni-core-move-beginning-of-dwim)
|
||
(should (equal 24 (point)))))
|
||
|
||
(ert-deftest oni-core-move-end-of-dwim-moves-to-end-of-code ()
|
||
"Test that ‘oni-core-move-end-of-dwim’ moves to the end of the code before a comment."
|
||
(with-temp-buffer
|
||
(emacs-lisp-mode)
|
||
(insert "(defun test-defun () ;; Just testing\n \"Just testing a function\")")
|
||
(goto-char (point-min))
|
||
(oni-core-move-end-of-dwim)
|
||
(should (equal 21 (point)))))
|
||
|
||
(ert-deftest oni-core-move-end-of-dwim-moves-to-end-of-line ()
|
||
"Test that ‘oni-core-move-end-of-dwim’ moves to the end of the line."
|
||
(with-temp-buffer
|
||
(emacs-lisp-mode)
|
||
(insert "(defun test-defun () ;; Just testing\n \"Just testing a function\")")
|
||
(goto-char (point-min))
|
||
(oni-core-move-end-of-dwim)
|
||
(oni-core-move-end-of-dwim)
|
||
(should (equal 38 (point)))))
|
||
|
||
(ert-deftest oni-core-move-end-of-dwim-moves-to-end-of-code-again ()
|
||
"Test that ‘oni-core-move-end-of-dwim’ moves to the end of the code before a comment again."
|
||
(with-temp-buffer
|
||
(emacs-lisp-mode)
|
||
(insert "(defun test-defun () ;; Just testing\n \"Just testing a function\")")
|
||
(goto-char (point-min))
|
||
(oni-core-move-end-of-dwim)
|
||
(oni-core-move-end-of-dwim)
|
||
(oni-core-move-end-of-dwim)
|
||
(should (equal 21 (point)))))
|
||
|
||
(ert-deftest oni-core-loading-is-idempotent-recentf-idle-timer ()
|
||
"Test that loading ‘oni-core’ is idempotent in regards to an idle timer."
|
||
;; We already loaded it with the ‘require’ call above. We load it again so we
|
||
;; can check that the timer set up in it doesn’t appear twice.
|
||
(load-library "oni-core")
|
||
(let* ((pred (lambda (elt) (eq 'recentf-save-list (aref elt 5))))
|
||
(matches (delete nil (mapcar pred timer-idle-list))))
|
||
(should (eq 1 (length matches)))))
|