
It seems that store is not automatically cleaned when calling app.destroy() as this is just regular property on app object. Furthermore, there is a bug with connectOutlet that prevents cleaning views that are set with it. I've added a small hack to save all the views added as outlets to be able to clean them after running tests.
39 lines
1.2 KiB
CoffeeScript
39 lines
1.2 KiB
CoffeeScript
require 'helpers'
|
|
require 'travis/ticker'
|
|
|
|
Travis.reopen
|
|
Controller: Em.Controller.extend
|
|
init: ->
|
|
for name in Array.prototype.slice.apply(arguments)
|
|
name = "#{$.camelize(name, false)}Controller"
|
|
klass = Travis[$.camelize(name)] || Em.Controller
|
|
this[name] = klass.create(parent: this, namespace: Travis, controllers: this)
|
|
|
|
connectTop: ->
|
|
@connectOutlet(outletName: 'top', controller: @topController, viewClass: Travis.TopView)
|
|
@topController.set('tab', @get('name'))
|
|
|
|
connectOutlet: ->
|
|
view = @_super.apply(this, arguments)
|
|
|
|
if view
|
|
_connectedOutletViews = Travis.app.get('_connectedOutletViews')
|
|
unless _connectedOutletViews
|
|
_connectedOutletViews = []
|
|
|
|
_connectedOutletViews.pushObject(view)
|
|
Travis.app.set('_connectedOutletViews', _connectedOutletViews)
|
|
|
|
view
|
|
|
|
# TopController: Em.Controller.extend
|
|
# userBinding: 'Travis.app.currentUser'
|
|
|
|
require 'controllers/builds'
|
|
require 'controllers/home'
|
|
require 'controllers/profile'
|
|
require 'controllers/repositories'
|
|
require 'controllers/repository'
|
|
require 'controllers/sidebar'
|
|
require 'controllers/stats'
|