init_spec.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  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._watchers).toBeTruthy()
  23. expect(stub._directives).toBeTruthy()
  24. expect(stub._events).toBeTruthy()
  25. expect(stub._eventsCount).toBeTruthy()
  26. })
  27. it('should merge options', function () {
  28. expect(stub.$options.a).toBe(2)
  29. expect(stub.$options.b).toBe(2)
  30. })
  31. it('should call other init methods', function () {
  32. expect(stub._initEvents).toHaveBeenCalled()
  33. expect(stub._initScope).toHaveBeenCalled()
  34. })
  35. it('should call created hook', function () {
  36. expect(stub._callHook).toHaveBeenCalledWith('created')
  37. })
  38. it('should call $mount when options.el is present', function () {
  39. expect(stub.$mount).toHaveBeenCalledWith(stub.$options.el)
  40. })
  41. })