mirror of
https://gitee.com/vuejs/vue.git
synced 2024-12-04 13:07:40 +08:00
add options el tests (#2967)
* add options el tests ref: #2872 * fix error at phantomjs env
This commit is contained in:
parent
05235942a7
commit
d91eda8556
@ -0,0 +1,65 @@
|
||||
import Vue from 'vue'
|
||||
|
||||
describe('Options el', () => {
|
||||
it('basic usage', () => {
|
||||
const el = document.createElement('div')
|
||||
el.innerHTML = '<span>{{message}}</span>'
|
||||
const vm = new Vue({
|
||||
el,
|
||||
data: { message: 'hello world' }
|
||||
})
|
||||
expect(vm.$el.tagName).toBe('DIV')
|
||||
expect(vm.$el.textContent).toBe(vm.message)
|
||||
})
|
||||
|
||||
it('should be replaced when use togther with `template` option', () => {
|
||||
const el = document.createElement('div')
|
||||
el.innerHTML = '<span>{{message}}</span>'
|
||||
const vm = new Vue({
|
||||
el,
|
||||
template: '<p id="app"><span>{{message}}</span></p>',
|
||||
data: { message: 'hello world' }
|
||||
})
|
||||
expect(vm.$el.tagName).toBe('P')
|
||||
expect(vm.$el.textContent).toBe(vm.message)
|
||||
})
|
||||
|
||||
it('should be replaced when use togther with `render` option', () => {
|
||||
const el = document.createElement('div')
|
||||
el.innerHTML = '<span>{{message}}</span>'
|
||||
const vm = new Vue({
|
||||
el,
|
||||
render () {
|
||||
const h = this.$createElement
|
||||
return h('p', { staticAttrs: { id: 'app' }}, [
|
||||
h('span', {}, [this.message])
|
||||
])
|
||||
},
|
||||
data: { message: 'hello world' }
|
||||
})
|
||||
expect(vm.$el.tagName).toBe('P')
|
||||
expect(vm.$el.textContent).toBe(vm.message)
|
||||
})
|
||||
|
||||
it('svg element', () => {
|
||||
const ns = 'http://www.w3.org/2000/svg'
|
||||
const el = document.createElementNS(ns, 'svg')
|
||||
const text = document.createElementNS(ns, 'text')
|
||||
text.setAttribute(':x', 'x')
|
||||
text.setAttribute(':y', 'y')
|
||||
text.setAttribute(':fill', 'color')
|
||||
text.textContent = '{{text}}'
|
||||
el.appendChild(text)
|
||||
const vm = new Vue({
|
||||
el,
|
||||
data: {
|
||||
x: 64, y: 128, color: 'red', text: 'svg text'
|
||||
}
|
||||
})
|
||||
expect(vm.$el.tagName).toBe('svg')
|
||||
expect(vm.$el.childNodes[0].getAttribute('x')).toBe(vm.x.toString())
|
||||
expect(vm.$el.childNodes[0].getAttribute('y')).toBe(vm.y.toString())
|
||||
expect(vm.$el.childNodes[0].getAttribute('fill')).toBe(vm.color)
|
||||
expect(vm.$el.childNodes[0].textContent).toBe(vm.text)
|
||||
})
|
||||
})
|
Loading…
Reference in New Issue
Block a user