diff options
Diffstat (limited to 'test/lisp/term-tests.el')
| -rw-r--r-- | test/lisp/term-tests.el | 20 | 
1 files changed, 20 insertions, 0 deletions
| diff --git a/test/lisp/term-tests.el b/test/lisp/term-tests.el index 72a9ad1ef74..ebf48d50a84 100644 --- a/test/lisp/term-tests.el +++ b/test/lisp/term-tests.el @@ -143,6 +143,26 @@ the first character of the line."      (should (equal (term-test-screen-from-input width 12 strs)                     (make-string width ?_))))) +(ert-deftest term-to-margin () +  "Test cursor movement at the scroll margin. +This is a reduced example from GNU nano's initial screen." +  (let* ((width 10) +         (x (make-string width ?x)) +         (y (make-string width ?y))) +    (should (equal (term-test-screen-from-input +                    width 3 +                    `("\e[1;3r"       ; Setup 3 line scrolling region. +                      "\e[2;1H"       ; Move to 2nd last line. +                      ,x              ; Fill with 'x'. +                      "\r\e[1B"       ; Next line. +                      ,y))            ; Fill with 'y'. +                   (concat "\n" x "\n" y))) +    ;; Same idea, but moving upwards. +    (should (equal (term-test-screen-from-input +                    width 3 +                    `("\e[1;3r" "\e[2;1H" ,x "\r\e[1A" ,y)) +                   (concat y "\n" x))))) +  (provide 'term-tests)  ;;; term-tests.el ends here | 
