Editor.prototype.removeActiveEditSession calls destroy on the removed edit session

This commit is contained in:
Corey Johnson
2012-06-28 13:54:07 -07:00
parent 3dd9253bc5
commit e295d19d51
2 changed files with 6 additions and 1 deletions

View File

@@ -139,17 +139,21 @@ describe "Editor", ->
describe "when 'close' is triggered", ->
it "closes active edit session and loads next edit session", ->
editor.edit(rootView.project.open())
editSession = editor.activeEditSession
spyOn(editSession, 'destroy').andCallThrough()
spyOn(editor, "remove")
editor.trigger "close"
expect(editSession.destroy).toHaveBeenCalled()
expect(editor.remove).not.toHaveBeenCalled()
expect(editor.buffer).toBe buffer
it "calls remove on the editor if there is one edit session and mini is false", ->
originalBuffer = editor.buffer
editSession = editor.activeEditSession
expect(editor.mini).toBeFalsy()
expect(editor.editSessions.length).toBe 1
spyOn(editor, 'remove')
editor.trigger 'close'
spyOn(editSession, 'destroy').andCallThrough()
expect(editor.remove).toHaveBeenCalled()
editor.remove()

View File

@@ -359,6 +359,7 @@ class Editor extends View
editSession = @activeEditSession
@loadPreviousEditSession()
_.remove(@editSessions, editSession)
editSession.destroy()
loadNextEditSession: ->
nextIndex = (@getActiveEditSessionIndex() + 1) % @editSessions.length