diff src/testdir/test_vim9_script.vim @ 25176:af3d0198faad v8.2.3124

patch 8.2.3124: Vim9: no error for white space between option and "=9" Commit: https://github.com/vim/vim/commit/deb108ba0a8599c1307ddc1507c73e7b60f17d36 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Jul 8 17:35:36 2021 +0200 patch 8.2.3124: Vim9: no error for white space between option and "=9" Problem: Vim9: no error for white space between option and "=9". Solution: Check for extraneous white space. (issue https://github.com/vim/vim/issues/8408)
author Bram Moolenaar <Bram@vim.org>
date Thu, 08 Jul 2021 17:45:03 +0200
parents b32c83317492
children 6523cd41fa54
line wrap: on
line diff
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -4075,6 +4075,45 @@ def Test_mapping_line_number()
   delfunc g:FuncA
 enddef
 
+def Test_option_set()
+  # legacy script allows for white space
+  var lines =<< trim END
+      set foldlevel  =11
+      call assert_equal(11, &foldlevel)
+  END
+  CheckScriptSuccess(lines)
+
+  set foldlevel
+  set foldlevel=12
+  assert_equal(12, &foldlevel)
+  set foldlevel+=2
+  assert_equal(14, &foldlevel)
+  set foldlevel-=3
+  assert_equal(11, &foldlevel)
+
+  lines =<< trim END
+      set foldlevel =1
+  END
+  CheckDefExecAndScriptFailure(lines, 'E1205: No white space allowed between option and: =1')
+
+  lines =<< trim END
+      set foldlevel +=1
+  END
+  CheckDefExecAndScriptFailure(lines, 'E1205: No white space allowed between option and: +=1')
+
+  lines =<< trim END
+      set foldlevel ^=1
+  END
+  CheckDefExecAndScriptFailure(lines, 'E1205: No white space allowed between option and: ^=1')
+
+  lines =<< trim END
+      set foldlevel -=1
+  END
+  CheckDefExecAndScriptFailure(lines, 'E1205: No white space allowed between option and: -=1')
+
+  set foldlevel&
+enddef
+
 def Test_option_modifier()
   # legacy script allows for white space
   var lines =<< trim END