comparison src/testdir/test_vim9_expr.vim @ 21024:02b03915855d v8.2.1063

patch 8.2.1063: Vim9: no line break allowed before || or && Commit: https://github.com/vim/vim/commit/be7ee488761a5582a5605197c3951a17f20d072e Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jun 26 21:38:51 2020 +0200 patch 8.2.1063: Vim9: no line break allowed before || or && Problem: Vim9: no line break allowed before || or &&. Solution: Check for operator after line break.
author Bram Moolenaar <Bram@vim.org>
date Fri, 26 Jun 2020 21:45:16 +0200
parents 9d8634e91d1b
children fe2ed85db946
comparison
equal deleted inserted replaced
21023:71f6a958bd70 21024:02b03915855d
113 assert_equal([0, 4], g:vals) 113 assert_equal([0, 4], g:vals)
114 114
115 g:vals = [] 115 g:vals = []
116 assert_equal(0, Record([]) || Record('') || Record(0)) 116 assert_equal(0, Record([]) || Record('') || Record(0))
117 assert_equal([[], '', 0], g:vals) 117 assert_equal([[], '', 0], g:vals)
118 enddef
119
120 def Test_expr2_vimscript()
121 " only checks line continuation
122 let lines =<< trim END
123 vim9script
124 let var = 0
125 || 1
126 assert_equal(1, var)
127 END
128 CheckScriptSuccess(lines)
129
130 lines =<< trim END
131 vim9script
132 let var = v:false
133 || v:true
134 || v:false
135 assert_equal(1, var)
136 END
137 CheckScriptSuccess(lines)
118 enddef 138 enddef
119 139
120 func Test_expr2_fails() 140 func Test_expr2_fails()
121 let msg = "white space required before and after '||'" 141 let msg = "white space required before and after '||'"
122 call CheckDefFailure(["let x = 1||2"], msg) 142 call CheckDefFailure(["let x = 1||2"], msg)
156 assert_equal([8, 4, 0], g:vals) 176 assert_equal([8, 4, 0], g:vals)
157 177
158 g:vals = [] 178 g:vals = []
159 assert_equal(0, Record([1]) && Record('z') && Record(0)) 179 assert_equal(0, Record([1]) && Record('z') && Record(0))
160 assert_equal([[1], 'z', 0], g:vals) 180 assert_equal([[1], 'z', 0], g:vals)
181 enddef
182
183 def Test_expr3_vimscript()
184 " only checks line continuation
185 let lines =<< trim END
186 vim9script
187 let var = 0
188 && 1
189 assert_equal(0, var)
190 END
191 CheckScriptSuccess(lines)
192
193 lines =<< trim END
194 vim9script
195 let var = v:true
196 && v:true
197 && v:true
198 assert_equal(1, var)
199 END
200 CheckScriptSuccess(lines)
161 enddef 201 enddef
162 202
163 func Test_expr3_fails() 203 func Test_expr3_fails()
164 let msg = "white space required before and after '&&'" 204 let msg = "white space required before and after '&&'"
165 call CheckDefFailure(["let x = 1&&2"], msg) 205 call CheckDefFailure(["let x = 1&&2"], msg)