@@ -202,3 +202,59 @@ test.snapshot({
202202 'if (foo.size && bar.length) {}'
203203 ]
204204} ) ;
205+
206+ test . vue ( {
207+ valid : [
208+ '<not-template><div v-if="foo.length"></div></not-template>' ,
209+ '<template><div v-not-if="foo.length"></div></template>' ,
210+ '<template><div v-if="foo.notLength"></div></template>'
211+ ] ,
212+ invalid : [
213+ {
214+ code : '<template><div v-if="foo.length"></div></template>' ,
215+ output : '<template><div v-if="foo.length > 0"></div></template>' ,
216+ errors : 1
217+ } ,
218+ {
219+ code : outdent `
220+ <template>
221+ <div>
222+ <div v-if="foo"></div>
223+ <div v-else-if="bar.length"></div>
224+ </div>
225+ </template>
226+ ` ,
227+ output : outdent `
228+ <template>
229+ <div>
230+ <div v-if="foo"></div>
231+ <div v-else-if="bar.length > 0"></div>
232+ </div>
233+ </template>
234+ ` ,
235+ errors : 1
236+ } ,
237+ {
238+ code : '<template><div v-if="foo.length"></div></template>' ,
239+ output : '<template><div v-if="foo.length !== 0"></div></template>' ,
240+ errors : 1 ,
241+ options : [ { 'non-zero' : 'not-equal' } ]
242+ } ,
243+ {
244+ code : '<template><div v-if="foo.length"></div></template>' ,
245+ output : '<template><div v-if="foo.length >= 1"></div></template>' ,
246+ errors : 1 ,
247+ options : [ { 'non-zero' : 'greater-than-or-equal' } ]
248+ } ,
249+ {
250+ code : '<template><div v-if="foo.length && bar"></div></template>' ,
251+ output : '<template><div v-if="foo.length > 0 && bar"></div></template>' ,
252+ errors : 1
253+ } ,
254+ {
255+ code : '<script>if (foo.length) {}</script>' ,
256+ output : '<script>if (foo.length > 0) {}</script>' ,
257+ errors : 1
258+ }
259+ ]
260+ } ) ;
0 commit comments