mirror of
https://github.com/vale981/emacs-ipython-notebook
synced 2025-03-05 09:01:40 -05:00
41 lines
1.4 KiB
EmacsLisp
41 lines
1.4 KiB
EmacsLisp
(eval-when-compile (require 'cl))
|
|
(require 'ert)
|
|
|
|
(require 'ein-kill-ring)
|
|
|
|
(ert-deftest ein:kill-ring-simple ()
|
|
(let (ein:kill-ring
|
|
ein:kill-ring-yank-pointer)
|
|
(ein:kill-new 1)
|
|
(should (equal (ein:current-kill 0) 1))))
|
|
|
|
(defun eintest:kill-ring-simple-repeat-setup ()
|
|
(cl-loop for i from 0 below 5
|
|
do (ein:kill-new i)
|
|
do (should (equal (ein:current-kill 0) i))))
|
|
|
|
(ert-deftest ein:kill-ring-simple-repeat ()
|
|
(let (ein:kill-ring
|
|
ein:kill-ring-yank-pointer)
|
|
(eintest:kill-ring-simple-repeat-setup)
|
|
(should (equal ein:kill-ring ein:kill-ring-yank-pointer))
|
|
(should (equal ein:kill-ring '(4 3 2 1 0)))))
|
|
|
|
(ert-deftest ein:kill-ring-repeat-n-1 ()
|
|
(let (ein:kill-ring
|
|
ein:kill-ring-yank-pointer)
|
|
(eintest:kill-ring-simple-repeat-setup)
|
|
(cl-loop for i in '(3 2 1 0 4 3 2)
|
|
do (should (equal (ein:current-kill 1) i)))
|
|
(should-not (equal ein:kill-ring ein:kill-ring-yank-pointer))
|
|
(should (equal ein:kill-ring '(4 3 2 1 0)))
|
|
(should (equal ein:kill-ring-yank-pointer '(2 1 0)))))
|
|
|
|
(ert-deftest ein:kill-ring-exceeds-max ()
|
|
(let (ein:kill-ring
|
|
ein:kill-ring-yank-pointer
|
|
(ein:kill-ring-max 3))
|
|
(eintest:kill-ring-simple-repeat-setup)
|
|
(should (equal ein:kill-ring ein:kill-ring-yank-pointer))
|
|
(should (equal (length ein:kill-ring) ein:kill-ring-max))
|
|
(should (equal ein:kill-ring '(4 3 2)))))
|