You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
656 B
31 lines
656 B
9 years ago
|
import Vue from 'vue'
|
||
|
|
||
|
describe('Options propsData', () => {
|
||
|
it('should work', done => {
|
||
|
const A = Vue.extend({
|
||
|
props: ['a'],
|
||
|
template: '<div>{{ a }}</div>'
|
||
|
})
|
||
|
const vm = new A({
|
||
|
propsData: {
|
||
|
a: 123
|
||
|
}
|
||
|
}).$mount()
|
||
|
expect(vm.a).toBe(123)
|
||
|
expect(vm.$el.textContent).toBe('123')
|
||
|
vm.a = 234
|
||
|
waitForUpdate(() => {
|
||
|
expect(vm.$el.textContent).toBe('234')
|
||
|
}).then(done)
|
||
|
})
|
||
|
|
||
|
it('warn non instantiation usage', () => {
|
||
|
Vue.extend({
|
||
|
propsData: {
|
||
|
a: 123
|
||
|
}
|
||
|
})
|
||
|
expect('option "propsData" can only be used during instance creation').toHaveBeenWarned()
|
||
|
})
|
||
|
})
|