|
|
@@ -108,6 +108,34 @@ if (_.inBrowser) {
|
|
|
})
|
|
|
})
|
|
|
|
|
|
+ it('radio expression (new syntax)', function (done) {
|
|
|
+ var vm = new Vue({
|
|
|
+ el: el,
|
|
|
+ data: {
|
|
|
+ test: false,
|
|
|
+ test2: 'string1',
|
|
|
+ expression1: 'string1',
|
|
|
+ expression2: 'string2'
|
|
|
+ },
|
|
|
+ template:
|
|
|
+ '<input type="radio" value="1" v-model="test" name="test" bind-value="true">' +
|
|
|
+ '<input type="radio" value="0" v-model="test" name="test" bind-value="false">' +
|
|
|
+ '<input type="radio" value="1" v-model="test2" name="test2" bind-value="expression1">' +
|
|
|
+ '<input type="radio" value="0" v-model="test2" name="test2" bind-value="expression2">'
|
|
|
+ })
|
|
|
+ expect(el.childNodes[0].checked).toBe(false)
|
|
|
+ expect(el.childNodes[1].checked).toBe(true)
|
|
|
+ expect(el.childNodes[2].checked).toBe(true)
|
|
|
+ expect(el.childNodes[3].checked).toBe(false)
|
|
|
+ _.nextTick(function () {
|
|
|
+ el.childNodes[0].click()
|
|
|
+ expect(vm.test).toBe(true)
|
|
|
+ el.childNodes[3].click()
|
|
|
+ expect(vm.test2).toBe('string2')
|
|
|
+ done()
|
|
|
+ })
|
|
|
+ })
|
|
|
+
|
|
|
it('checkbox', function (done) {
|
|
|
var vm = new Vue({
|
|
|
el: el,
|
|
|
@@ -167,6 +195,32 @@ if (_.inBrowser) {
|
|
|
})
|
|
|
})
|
|
|
|
|
|
+ it('checkbox expression (new syntax)', function (done) {
|
|
|
+ var vm = new Vue({
|
|
|
+ el: el,
|
|
|
+ data: {
|
|
|
+ test: '',
|
|
|
+ expression1: 'aTrueValue',
|
|
|
+ expression2: 'aFalseValue'
|
|
|
+ },
|
|
|
+ template: '<input type="checkbox" v-model="test" bind-true-value="expression1" bind-false-value="expression2">'
|
|
|
+ })
|
|
|
+ expect(vm.test).toBe('')
|
|
|
+ el.firstChild.click()
|
|
|
+ expect(vm.test).toBe('aTrueValue')
|
|
|
+ expect(el.firstChild.checked).toBe(true)
|
|
|
+ el.firstChild.click()
|
|
|
+ expect(vm.test).toBe('aFalseValue')
|
|
|
+ expect(el.firstChild.checked).toBe(false)
|
|
|
+ _.nextTick(function () {
|
|
|
+ vm.test = 'aTrueValue'
|
|
|
+ _.nextTick(function () {
|
|
|
+ expect(el.firstChild.checked).toBe(true)
|
|
|
+ done()
|
|
|
+ })
|
|
|
+ })
|
|
|
+ })
|
|
|
+
|
|
|
it('select', function (done) {
|
|
|
var vm = new Vue({
|
|
|
el: el,
|