diff src/testdir/test_move.vim @ 15010:e3910b9827d0 v8.1.0516

patch 8.1.0516: :move command marks buffer modified when nothing changed commit https://github.com/vim/vim/commit/ddd1f9183bed00d096f29c503721ac559174a29f Author: Bram Moolenaar <Bram@vim.org> Date: Sat Nov 10 19:19:36 2018 +0100 patch 8.1.0516: :move command marks buffer modified when nothing changed Problem: :move command marks buffer modified when nothing changed. Solution: Do not set 'modified'. Add a test. (Jason Franklin)
author Bram Moolenaar <Bram@vim.org>
date Sat, 10 Nov 2018 19:30:05 +0100
parents
children b8fd7364befd
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/src/testdir/test_move.vim
@@ -0,0 +1,40 @@
+" Test the ":move" command.
+
+func Test_move()
+  enew!
+  call append(0, ['line 1', 'line 2', 'line 3'])
+  g /^$/ delete _
+  set nomodified
+
+  move .
+  call assert_equal(['line 1', 'line 2', 'line 3'], getline(1, 3))
+  call assert_false(&modified)
+
+  1,2move 0
+  call assert_equal(['line 1', 'line 2', 'line 3'], getline(1, 3))
+  call assert_false(&modified)
+
+  1,3move 3
+  call assert_equal(['line 1', 'line 2', 'line 3'], getline(1, 3))
+  call assert_false(&modified)
+
+  1move 2
+  call assert_equal(['line 2', 'line 1', 'line 3'], getline(1, 3))
+  call assert_true(&modified)
+  set nomodified
+
+  3move 0
+  call assert_equal(['line 3', 'line 2', 'line 1'], getline(1, 3))
+  call assert_true(&modified)
+  set nomodified
+
+  2,3move 0
+  call assert_equal(['line 2', 'line 1', 'line 3'], getline(1, 3))
+  call assert_true(&modified)
+  set nomodified
+
+  call assert_fails('1,2move 1', 'E134')
+  call assert_fails('2,3move 2', 'E134')
+
+  %bwipeout!
+endfunc