test: restructure v-if & v-for tests

This commit is contained in:
Evan You 2019-10-01 17:58:09 -04:00
parent 4fc963bc5a
commit 65661b5ec0
3 changed files with 356 additions and 344 deletions

View File

@ -1,6 +1,6 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`compiler: transform v-if codegen basic v-if 1`] = `
exports[`compiler: v-if codegen basic v-if 1`] = `
"const _Vue = Vue
return function render() {
@ -14,7 +14,7 @@ return function render() {
}"
`;
exports[`compiler: transform v-if codegen template v-if 1`] = `
exports[`compiler: v-if codegen template v-if 1`] = `
"const _Vue = Vue
return function render() {
@ -32,7 +32,7 @@ return function render() {
}"
`;
exports[`compiler: transform v-if codegen v-if + v-else 1`] = `
exports[`compiler: v-if codegen v-if + v-else 1`] = `
"const _Vue = Vue
return function render() {
@ -46,7 +46,7 @@ return function render() {
}"
`;
exports[`compiler: transform v-if codegen v-if + v-else-if + v-else 1`] = `
exports[`compiler: v-if codegen v-if + v-else-if + v-else 1`] = `
"const _Vue = Vue
return function render() {
@ -62,7 +62,7 @@ return function render() {
}"
`;
exports[`compiler: transform v-if codegen v-if + v-else-if 1`] = `
exports[`compiler: v-if codegen v-if + v-else-if 1`] = `
"const _Vue = Vue
return function render() {

View File

@ -27,7 +27,8 @@ function parseWithForTransform(
return node.children[0]
}
describe('compiler: transform v-for', () => {
describe('compiler: v-for', () => {
describe('transform', () => {
test('number expression', () => {
const forNode = parseWithForTransform(
'<span v-for="index in 5" />'
@ -183,7 +184,9 @@ describe('compiler: transform v-for', () => {
expect(forNode.valueAlias).toBeUndefined()
expect((forNode.source as SimpleExpressionNode).content).toBe('items')
})
})
describe('errors', () => {
test('missing expression', () => {
const onError = jest.fn()
parseWithForTransform('<span v-for />', { onError })
@ -243,6 +246,7 @@ describe('compiler: transform v-for', () => {
})
)
})
})
describe('source location', () => {
test('value & source', () => {
@ -534,4 +538,10 @@ describe('compiler: transform v-for', () => {
})
})
})
describe('codegen', () => {
test('basic v-for', () => {})
test('', () => {})
})
})

View File

@ -45,7 +45,8 @@ function parseWithIfTransform(
}
}
describe('compiler: transform v-if', () => {
describe('compiler: v-if', () => {
describe('transform', () => {
test('basic v-if', () => {
const { node } = parseWithIfTransform(`<div v-if="ok"/>`)
expect(node.type).toBe(NodeTypes.IF)
@ -183,6 +184,7 @@ describe('compiler: transform v-if', () => {
content: `_ctx.ok`
})
})
})
describe('errors', () => {
test('error on v-else missing adjacent v-if', () => {