summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorDmitry Gutov <dgutov@yandex.ru>2017-06-17 03:54:06 +0300
committerDmitry Gutov <dgutov@yandex.ru>2017-06-17 03:55:49 +0300
commit32b0f15365f0d33135866aa659c95372a775c6e3 (patch)
treed9cdd223d598aa6730013393a1999fb3f2a23f80 /test
parente17d6e2f6f0b7e33f16884bcb29b4d5f4433941b (diff)
downloademacs-32b0f15365f0d33135866aa659c95372a775c6e3.tar.gz
Add test for the fix in the parent commit
* test/src/undo-tests.el (undo-test-skip-invalidated-markers): New test, for the fix in the parent commit.
Diffstat (limited to 'test')
-rw-r--r--test/src/undo-tests.el22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/src/undo-tests.el b/test/src/undo-tests.el
index fbd3bf84a42..0cf7fc9f59c 100644
--- a/test/src/undo-tests.el
+++ b/test/src/undo-tests.el
@@ -444,5 +444,27 @@ Demonstrates bug 16818."
(ert-run-tests-interactively "^undo-")
(ert-run-tests-batch "^undo-")))
+(ert-deftest undo-test-skip-invalidated-markers ()
+ "Test marker adjustment when the marker points nowhere.
+Demonstrates bug 25599."
+ (with-temp-buffer
+ (buffer-enable-undo)
+ (insert ";; aaaaaaaaa
+;; bbbbbbbb")
+ (let ((overlay-modified
+ (lambda (ov after-p _beg _end &optional length)
+ (unless after-p
+ (when (overlay-buffer ov)
+ (delete-overlay ov))))))
+ (save-excursion
+ (goto-char (point-min))
+ (let ((ov (make-overlay (line-beginning-position 2)
+ (line-end-position 2))))
+ (overlay-put ov 'insert-in-front-hooks
+ (list overlay-modified)))))
+ (kill-region (point-min) (line-beginning-position 2))
+ (undo-boundary)
+ (undo)))
+
(provide 'undo-tests)
;;; undo-tests.el ends here