comparison src/testdir/test_vim9_script.vim @ 21821:0deb6f96a5a3 v8.2.1460

patch 8.2.1460: error messages are spread out Commit: https://github.com/vim/vim/commit/451c2e3536a3cb77d07faf3cb2b834512e174351 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Aug 15 16:33:28 2020 +0200 patch 8.2.1460: error messages are spread out Problem: Error messages are spread out. Solution: Move more messages into errors.h.
author Bram Moolenaar <Bram@vim.org>
date Sat, 15 Aug 2020 16:45:04 +0200
parents e3b429b995a6
children d8422de73113
comparison
equal deleted inserted replaced
21820:5ab859e4430b 21821:0deb6f96a5a3
29 call CheckDefFailure(['let x:string = "x"'], 'E1069:') 29 call CheckDefFailure(['let x:string = "x"'], 'E1069:')
30 call CheckDefFailure(['let a:string = "x"'], 'E1069:') 30 call CheckDefFailure(['let a:string = "x"'], 'E1069:')
31 call CheckDefFailure(['let lambda = {-> "lambda"}'], 'E704:') 31 call CheckDefFailure(['let lambda = {-> "lambda"}'], 'E704:')
32 32
33 let nr: number = 1234 33 let nr: number = 1234
34 call CheckDefFailure(['let nr: number = "asdf"'], 'E1013:') 34 call CheckDefFailure(['let nr: number = "asdf"'], 'E1012:')
35 35
36 let a: number = 6 #comment 36 let a: number = 6 #comment
37 assert_equal(6, a) 37 assert_equal(6, a)
38 38
39 if has('channel') 39 if has('channel')
98 END 98 END
99 call CheckScriptSuccess(lines) 99 call CheckScriptSuccess(lines)
100 100
101 call CheckDefFailure(['&notex += 3'], 'E113:') 101 call CheckDefFailure(['&notex += 3'], 'E113:')
102 call CheckDefFailure(['&ts ..= "xxx"'], 'E1019:') 102 call CheckDefFailure(['&ts ..= "xxx"'], 'E1019:')
103 call CheckDefFailure(['&ts = [7]'], 'E1013:') 103 call CheckDefFailure(['&ts = [7]'], 'E1012:')
104 call CheckDefExecFailure(['&ts = g:alist'], 'E1029: Expected number but got list') 104 call CheckDefExecFailure(['&ts = g:alist'], 'E1029: Expected number but got list')
105 call CheckDefFailure(['&ts = "xx"'], 'E1013:') 105 call CheckDefFailure(['&ts = "xx"'], 'E1012:')
106 call CheckDefExecFailure(['&ts = g:astring'], 'E1029: Expected number but got string') 106 call CheckDefExecFailure(['&ts = g:astring'], 'E1029: Expected number but got string')
107 call CheckDefFailure(['&path += 3'], 'E1013:') 107 call CheckDefFailure(['&path += 3'], 'E1012:')
108 call CheckDefExecFailure(['&bs = "asdf"'], 'E474:') 108 call CheckDefExecFailure(['&bs = "asdf"'], 'E474:')
109 # test freeing ISN_STOREOPT 109 # test freeing ISN_STOREOPT
110 call CheckDefFailure(['&ts = 3', 'let asdf'], 'E1022:') 110 call CheckDefFailure(['&ts = 3', 'let asdf'], 'E1022:')
111 &ts = 8 111 &ts = 8
112 112
126 assert_equal(2, g:inc_counter) 126 assert_equal(2, g:inc_counter)
127 127
128 $SOME_ENV_VAR ..= 'more' 128 $SOME_ENV_VAR ..= 'more'
129 assert_equal('somemore', $SOME_ENV_VAR) 129 assert_equal('somemore', $SOME_ENV_VAR)
130 call CheckDefFailure(['$SOME_ENV_VAR += "more"'], 'E1051:') 130 call CheckDefFailure(['$SOME_ENV_VAR += "more"'], 'E1051:')
131 call CheckDefFailure(['$SOME_ENV_VAR += 123'], 'E1013:') 131 call CheckDefFailure(['$SOME_ENV_VAR += 123'], 'E1012:')
132 132
133 @a = 'areg' 133 @a = 'areg'
134 @a ..= 'add' 134 @a ..= 'add'
135 assert_equal('aregadd', @a) 135 assert_equal('aregadd', @a)
136 call CheckDefFailure(['@a += "more"'], 'E1051:') 136 call CheckDefFailure(['@a += "more"'], 'E1051:')
137 call CheckDefFailure(['@a += 123'], 'E1013:') 137 call CheckDefFailure(['@a += 123'], 'E1012:')
138 138
139 lines =<< trim END 139 lines =<< trim END
140 vim9script 140 vim9script
141 @c = 'areg' 141 @c = 'areg'
142 @c ..= 'add' 142 @c ..= 'add'
146 146
147 v:errmsg = 'none' 147 v:errmsg = 'none'
148 v:errmsg ..= 'again' 148 v:errmsg ..= 'again'
149 assert_equal('noneagain', v:errmsg) 149 assert_equal('noneagain', v:errmsg)
150 call CheckDefFailure(['v:errmsg += "more"'], 'E1051:') 150 call CheckDefFailure(['v:errmsg += "more"'], 'E1051:')
151 call CheckDefFailure(['v:errmsg += 123'], 'E1013:') 151 call CheckDefFailure(['v:errmsg += 123'], 'E1012:')
152 152
153 # single letter variables 153 # single letter variables
154 a = 123 154 a = 123
155 assert_equal(123, a) 155 assert_equal(123, a)
156 let b: number 156 let b: number
536 call CheckDefFailure(['let t:var = 5'], 'E1016: Cannot declare a tab variable:') 536 call CheckDefFailure(['let t:var = 5'], 'E1016: Cannot declare a tab variable:')
537 537
538 call CheckDefFailure(['let anr = 4', 'anr ..= "text"'], 'E1019:') 538 call CheckDefFailure(['let anr = 4', 'anr ..= "text"'], 'E1019:')
539 call CheckDefFailure(['let xnr += 4'], 'E1020:') 539 call CheckDefFailure(['let xnr += 4'], 'E1020:')
540 540
541 call CheckScriptFailure(['vim9script', 'def Func()', 'let dummy = s:notfound', 'enddef', 'defcompile'], 'E1050:') 541 call CheckScriptFailure(['vim9script', 'def Func()', 'let dummy = s:notfound', 'enddef', 'defcompile'], 'E1108:')
542 542
543 call CheckDefFailure(['let var: list<string> = [123]'], 'expected list<string> but got list<number>') 543 call CheckDefFailure(['let var: list<string> = [123]'], 'expected list<string> but got list<number>')
544 call CheckDefFailure(['let var: list<number> = ["xx"]'], 'expected list<number> but got list<string>') 544 call CheckDefFailure(['let var: list<number> = ["xx"]'], 'expected list<number> but got list<string>')
545 545
546 call CheckDefFailure(['let var: dict<string> = #{key: 123}'], 'expected dict<string> but got dict<number>') 546 call CheckDefFailure(['let var: dict<string> = #{key: 123}'], 'expected dict<string> but got dict<number>')
1497 CheckScriptFailure(['export let some = 123'], 'E1042:') 1497 CheckScriptFailure(['export let some = 123'], 'E1042:')
1498 CheckScriptFailure(['import some from "./Xexport.vim"'], 'E1048:') 1498 CheckScriptFailure(['import some from "./Xexport.vim"'], 'E1048:')
1499 CheckScriptFailure(['vim9script', 'export let g:some'], 'E1022:') 1499 CheckScriptFailure(['vim9script', 'export let g:some'], 'E1022:')
1500 CheckScriptFailure(['vim9script', 'export echo 134'], 'E1043:') 1500 CheckScriptFailure(['vim9script', 'export echo 134'], 'E1043:')
1501 1501
1502 CheckScriptFailure(['vim9script', 'let str: string', 'str = 1234'], 'E1013:') 1502 CheckScriptFailure(['vim9script', 'let str: string', 'str = 1234'], 'E1012:')
1503 CheckScriptFailure(['vim9script', 'const str = "asdf"', 'str = "xxx"'], 'E46:') 1503 CheckScriptFailure(['vim9script', 'const str = "asdf"', 'str = "xxx"'], 'E46:')
1504 1504
1505 assert_fails('vim9script', 'E1038') 1505 assert_fails('vim9script', 'E1038')
1506 assert_fails('export something', 'E1043') 1506 assert_fails('export something', 'E1043')
1507 enddef 1507 enddef
2216 enddef 2216 enddef
2217 2217
2218 def Test_for_loop_fails() 2218 def Test_for_loop_fails()
2219 CheckDefFailure(['for # in range(5)'], 'E690:') 2219 CheckDefFailure(['for # in range(5)'], 'E690:')
2220 CheckDefFailure(['for i In range(5)'], 'E690:') 2220 CheckDefFailure(['for i In range(5)'], 'E690:')
2221 CheckDefFailure(['let x = 5', 'for x in range(5)'], 'E1023:') 2221 CheckDefFailure(['let x = 5', 'for x in range(5)'], 'E1017:')
2222 CheckScriptFailure(['def Func(arg: any)', 'for arg in range(5)', 'enddef', 'defcompile'], 'E1006:') 2222 CheckScriptFailure(['def Func(arg: any)', 'for arg in range(5)', 'enddef', 'defcompile'], 'E1006:')
2223 CheckDefFailure(['for i in "text"'], 'E1013:') 2223 CheckDefFailure(['for i in "text"'], 'E1012:')
2224 CheckDefFailure(['for i in xxx'], 'E1001:') 2224 CheckDefFailure(['for i in xxx'], 'E1001:')
2225 CheckDefFailure(['endfor'], 'E588:') 2225 CheckDefFailure(['endfor'], 'E588:')
2226 CheckDefFailure(['for i in range(3)', 'echo 3'], 'E170:') 2226 CheckDefFailure(['for i in range(3)', 'echo 3'], 'E170:')
2227 enddef 2227 enddef
2228 2228
2953 let lines =<< trim END 2953 let lines =<< trim END
2954 vim9script 2954 vim9script
2955 let var: string 2955 let var: string
2956 var = 1234 2956 var = 1234
2957 END 2957 END
2958 CheckScriptFailure(lines, 'E1013:') 2958 CheckScriptFailure(lines, 'E1012:')
2959 2959
2960 lines =<< trim END 2960 lines =<< trim END
2961 vim9script 2961 vim9script
2962 let var:string 2962 let var:string
2963 END 2963 END