diff src/testdir/test_let.vim @ 18540:f7bb0e413fe1 v8.1.2264

patch 8.1.2264: there are two test files for :let Commit: https://github.com/vim/vim/commit/fcf8a8743bdecc0ba28037b79b7cb2962de70b1d Author: Bram Moolenaar <Bram@vim.org> Date: Wed Nov 6 15:22:00 2019 +0100 patch 8.1.2264: there are two test files for :let Problem: There are two test files for :let. Solution: Merge the two files.
author Bram Moolenaar <Bram@vim.org>
date Wed, 06 Nov 2019 15:30:04 +0100
parents c0cd979000f9
children baf890fa1621
line wrap: on
line diff
--- a/src/testdir/test_let.vim
+++ b/src/testdir/test_let.vim
@@ -152,6 +152,58 @@ func Test_let_utf8_environment()
   call assert_equal('ĀĒĪŌŪあいうえお', $a)
 endfunc
 
+func Test_let_no_type_checking()
+  let v = 1
+  let v = [1,2,3]
+  let v = {'a': 1, 'b': 2}
+  let v = 3.4
+  let v = 'hello'
+endfunc
+
+func Test_let_termcap()
+  " Terminal code
+  let old_t_te = &t_te
+  let &t_te = "\<Esc>[yes;"
+  call assert_match('t_te.*^[[yes;', execute("set termcap"))
+  let &t_te = old_t_te
+
+  if exists("+t_k1")
+    " Key code
+    let old_t_k1 = &t_k1
+    let &t_k1 = "that"
+    call assert_match('t_k1.*that', execute("set termcap"))
+    let &t_k1 = old_t_k1
+  endif
+
+  call assert_fails('let x = &t_xx', 'E113')
+  let &t_xx = "yes"
+  call assert_equal("yes", &t_xx)
+  let &t_xx = ""
+  call assert_fails('let x = &t_xx', 'E113')
+endfunc
+
+func Test_let_option_error()
+  let _w = &tw
+  let &tw = 80
+  call assert_fails('let &tw .= 1', 'E734')
+  call assert_equal(80, &tw)
+  let &tw = _w
+
+  let _w = &fillchars
+  let &fillchars = "vert:|"
+  call assert_fails('let &fillchars += "diff:-"', 'E734')
+  call assert_equal("vert:|", &fillchars)
+  let &fillchars = _w
+endfunc
+
+func Test_let_errors()
+  let s = 'abcd'
+  call assert_fails('let s[1] = 5', 'E689:')
+
+  let l = [1, 2, 3]
+  call assert_fails('let l[:] = 5', 'E709:')
+endfunc
+
 func Test_let_heredoc_fails()
   call assert_fails('let v =<< marker', 'E991:')