init_spec.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. var init = require('../../../../src/instance/init')._init
  2. describe('Instance Init', function () {
  3. var stub = {
  4. constructor: {
  5. options: { a: 1, b: 2 }
  6. },
  7. _initEvents: jasmine.createSpy(),
  8. _callHook: jasmine.createSpy(),
  9. _initScope: jasmine.createSpy(),
  10. $mount: jasmine.createSpy()
  11. }
  12. var options = {
  13. a: 2,
  14. _anonymous: true,
  15. el: {}
  16. }
  17. init.call(stub, options)
  18. it('should setup properties', function () {
  19. expect(stub.$el).toBe(null)
  20. expect(stub.$root).toBe(stub)
  21. expect(stub.$).toBeTruthy()
  22. expect(stub._watcherList).toBeTruthy()
  23. expect(stub._watchers).toBeTruthy()
  24. expect(stub._userWatchers).toBeTruthy()
  25. expect(stub._directives).toBeTruthy()
  26. expect(stub._events).toBeTruthy()
  27. expect(stub._eventsCount).toBeTruthy()
  28. })
  29. it('should merge options', function () {
  30. expect(stub.$options.a).toBe(2)
  31. expect(stub.$options.b).toBe(2)
  32. })
  33. it('should call other init methods', function () {
  34. expect(stub._initEvents).toHaveBeenCalled()
  35. expect(stub._initScope).toHaveBeenCalled()
  36. })
  37. it('should call created hook', function () {
  38. expect(stub._callHook).toHaveBeenCalledWith('created')
  39. })
  40. it('should call $mount when options.el is present', function () {
  41. expect(stub.$mount).toHaveBeenCalledWith(stub.$options.el)
  42. })
  43. })