github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/public/libs/vue-1.0.24/test/unit/specs/observer/dep_spec.js (about) 1 var Dep = require('src/observer/dep') 2 3 describe('Dep', function () { 4 var d 5 beforeEach(function () { 6 d = new Dep() 7 }) 8 9 it('addSub', function () { 10 var sub = {} 11 d.addSub(sub) 12 expect(d.subs.length).toBe(1) 13 expect(d.subs.indexOf(sub)).toBe(0) 14 }) 15 16 it('removeSub', function () { 17 var sub = {} 18 d.addSub(sub) 19 d.removeSub(sub) 20 expect(d.subs.length).toBe(0) 21 expect(d.subs.indexOf(sub)).toBe(-1) 22 }) 23 24 it('notify', function () { 25 var sub = { 26 update: jasmine.createSpy('sub') 27 } 28 d.addSub(sub) 29 d.notify() 30 expect(sub.update).toHaveBeenCalled() 31 }) 32 })