kazuya kawaguchi
9 years ago
committed by
Evan You
1 changed files with 30 additions and 0 deletions
@ -0,0 +1,30 @@ |
|||||
|
import Vue from 'entries/web-runtime' |
||||
|
|
||||
|
describe('Options render', () => { |
||||
|
it('basic usage', () => { |
||||
|
const vm = new Vue({ |
||||
|
render () { |
||||
|
const h = this.$createElement |
||||
|
const children = [] |
||||
|
for (let i = 0; i < this.items.length; i++) { |
||||
|
children.push(h('li', { staticClass: 'task' }, [this.items[i].name])) |
||||
|
} |
||||
|
return h('ul', { staticClass: 'tasks' }, children) |
||||
|
}, |
||||
|
data: { |
||||
|
items: [{ id: 1, name: 'task1' }, { id: 2, name: 'task2' }] |
||||
|
} |
||||
|
}).$mount() |
||||
|
expect(vm.$el.tagName).toBe('UL') |
||||
|
for (let i = 0; i < vm.$el.children.length; i++) { |
||||
|
const li = vm.$el.children[i] |
||||
|
expect(li.tagName).toBe('LI') |
||||
|
expect(li.textContent).toBe(vm.items[i].name) |
||||
|
} |
||||
|
}) |
||||
|
|
||||
|
it('should warn non `render` option and non `template` option', () => { |
||||
|
new Vue().$mount() |
||||
|
expect('Failed to mount component: template or render function not defined.').toHaveBeenWarned() |
||||
|
}) |
||||
|
}) |
Loading…
Reference in new issue