From 8a14750dd32290da1d1a56ee70481190ae5ee299 Mon Sep 17 00:00:00 2001 From: "Justin M. Keyes" Date: Thu, 17 Dec 2015 22:12:02 -0500 Subject: test: convert test_marks.in. vim-patch:35e7594 https://github.com/vim/vim/commit/35e7594dd429f7a8a06cefd61c3e8d48b9bd74e2 "Add missing test files from 7.4.634 to the repository." The discrepancy between the expected getpos() result of the old test [0, 15, 2, 0] and the converted test [0, 3, 2, 0] is just a matter of how the buffer is constructed: in the old Vim test the buffer has a bunch of junk at the top. The central purpose of the test is to verify that the getpost("'a") does *not* return [0, 0, 0, 0]. --- test/functional/legacy/marks_spec.lua | 53 +++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 test/functional/legacy/marks_spec.lua (limited to 'test') diff --git a/test/functional/legacy/marks_spec.lua b/test/functional/legacy/marks_spec.lua new file mode 100644 index 0000000000..8e9ceb1653 --- /dev/null +++ b/test/functional/legacy/marks_spec.lua @@ -0,0 +1,53 @@ +local helpers = require('test.functional.helpers') +local feed, insert, source = helpers.feed, helpers.insert, helpers.source +local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect + +describe('marks', function() + before_each(function() + clear() + end) + + it('restores a deleted mark after delete-undo-redo-undo', function() + insert([[ + + textline A + textline B + textline C + + Results:]]) + + execute([[:/^\t/+1]]) + feed([[madduu]]) + source([[ + let g:a = string(getpos("'a")) + $put ='Mark after delete-undo-redo-undo: '.g:a + ]]) + + expect([=[ + + textline A + textline B + textline C + + Results: + Mark after delete-undo-redo-undo: [0, 3, 2, 0]]=]) + end) + + it("CTRL-A and CTRL-X updates last changed mark '[, ']", function() + insert([[ + CTRL-A CTRL-X: + 123 123 123 + 123 123 123 + 123 123 123]]) + + source([[ + /^123/ + execute "normal! \`[v`]rAjwvjw\`[v`]rX"]]) + + expect([=[ + CTRL-A CTRL-X: + AAA 123 123 + 123 XXXXXXX + XXX 123 123]=]) + end) +end) -- cgit