Fix Workspace specs

This commit is contained in:
Antonio Scandurra
2017-03-11 19:20:16 +01:00
parent 284f2c62e5
commit b1704ee7e6
2 changed files with 25 additions and 4 deletions

View File

@@ -23,6 +23,7 @@ describe "PaneContainer", ->
serialize: -> deserializer: 'Item'
containerA = new PaneContainer(params)
containerA.initialize()
pane1A = containerA.getActivePane()
pane1A.addItem(new Item)
pane2A = pane1A.splitRight(items: [new Item])
@@ -33,6 +34,7 @@ describe "PaneContainer", ->
expect(pane3A.focused).toBe true
containerB = new PaneContainer(params)
containerB.initialize()
containerB.deserialize(containerA.serialize(), atom.deserializers)
[pane1B, pane2B, pane3B] = containerB.getPanes()
expect(pane3B.focused).toBe true
@@ -42,6 +44,7 @@ describe "PaneContainer", ->
expect(containerA.getActivePane()).toBe pane3A
containerB = new PaneContainer(params)
containerB.initialize()
containerB.deserialize(containerA.serialize(), atom.deserializers)
[pane1B, pane2B, pane3B] = containerB.getPanes()
expect(containerB.getActivePane()).toBe pane3B
@@ -51,6 +54,7 @@ describe "PaneContainer", ->
state = containerA.serialize()
state.activePaneId = -22
containerB = new PaneContainer(params)
containerB.initialize()
containerB.deserialize(state, atom.deserializers)
expect(containerB.getActivePane()).toBe containerB.getPanes()[0]
@@ -62,6 +66,7 @@ describe "PaneContainer", ->
it "leaves the empty panes intact", ->
state = containerA.serialize()
containerB = new PaneContainer(params)
containerB.initialize()
containerB.deserialize(state, atom.deserializers)
[leftPane, column] = containerB.getRoot().getChildren()
[topPane, bottomPane] = column.getChildren()
@@ -76,6 +81,7 @@ describe "PaneContainer", ->
state = containerA.serialize()
containerB = new PaneContainer(params)
containerB.initialize()
containerB.deserialize(state, atom.deserializers)
[leftPane, rightPane] = containerB.getRoot().getChildren()
@@ -84,6 +90,7 @@ describe "PaneContainer", ->
it "does not allow the root pane to be destroyed", ->
container = new PaneContainer(params)
container.initialize()
container.getRoot().destroy()
expect(container.getRoot()).toBeDefined()
expect(container.getRoot().isDestroyed()).toBe false
@@ -93,6 +100,7 @@ describe "PaneContainer", ->
beforeEach ->
container = new PaneContainer(params)
container.initialize()
pane1 = container.getRoot()
it "returns the first pane if no pane has been made active", ->
@@ -122,6 +130,7 @@ describe "PaneContainer", ->
beforeEach ->
container = new PaneContainer(params)
container.initialize()
container.getRoot().addItems([new Object, new Object])
container.getRoot().splitRight(items: [new Object, new Object])
[pane1, pane2] = container.getPanes()
@@ -144,6 +153,7 @@ describe "PaneContainer", ->
beforeEach ->
container = new PaneContainer(root: new Pane(items: [new Object, new Object]))
container.initialize()
container.getRoot().splitRight(items: [new Object, new Object])
[pane1, pane2] = container.getPanes()
@@ -165,6 +175,7 @@ describe "PaneContainer", ->
describe "::observePanes()", ->
it "invokes observers with all current and future panes", ->
container = new PaneContainer(params)
container.initialize()
container.getRoot().splitRight()
[pane1, pane2] = container.getPanes()
@@ -179,6 +190,7 @@ describe "PaneContainer", ->
describe "::observePaneItems()", ->
it "invokes observers with all current and future pane items", ->
container = new PaneContainer(params)
container.initialize()
container.getRoot().addItems([new Object, new Object])
container.getRoot().splitRight(items: [new Object])
[pane1, pane2] = container.getPanes()
@@ -199,6 +211,7 @@ describe "PaneContainer", ->
getURI: -> 'test'
container = new PaneContainer(params)
container.initialize()
container.getRoot().splitRight()
[pane1, pane2] = container.getPanes()
pane1.addItem(new TestItem)
@@ -219,6 +232,7 @@ describe "PaneContainer", ->
describe "::onDidAddPane(callback)", ->
it "invokes the given callback when panes are added", ->
container = new PaneContainer(params)
container.initialize()
events = []
container.onDidAddPane (event) ->
expect(event.pane in container.getPanes()).toBe true
@@ -238,6 +252,7 @@ describe "PaneContainer", ->
isDestroyed: -> @_isDestroyed
container = new PaneContainer(params)
container.initialize()
events = []
container.onWillDestroyPane (event) ->
itemsDestroyed = (item.isDestroyed() for item in event.pane.getItems())
@@ -254,6 +269,7 @@ describe "PaneContainer", ->
describe "::onDidDestroyPane(callback)", ->
it "invokes the given callback when panes are destroyed", ->
container = new PaneContainer(params)
container.initialize()
events = []
container.onDidDestroyPane (event) ->
expect(event.pane in container.getPanes()).toBe false
@@ -270,6 +286,7 @@ describe "PaneContainer", ->
it "invokes the given callback when the container is destroyed", ->
container = new PaneContainer(params)
container.initialize()
events = []
container.onDidDestroyPane (event) ->
expect(event.pane in container.getPanes()).toBe false
@@ -286,6 +303,7 @@ describe "PaneContainer", ->
describe "::onWillDestroyPaneItem() and ::onDidDestroyPaneItem", ->
it "invokes the given callbacks when an item will be destroyed on any pane", ->
container = new PaneContainer(params)
container.initialize()
pane1 = container.getRoot()
item1 = new Object
item2 = new Object
@@ -313,6 +331,7 @@ describe "PaneContainer", ->
describe "::saveAll()", ->
it "saves all modified pane items", ->
container = new PaneContainer(params)
container.initialize()
pane1 = container.getRoot()
pane2 = pane1.splitRight()
@@ -354,6 +373,7 @@ describe "PaneContainer", ->
copy: -> new TestItem(@id)
container = new PaneContainer(params)
container.initialize()
pane1 = container.getRoot()
item1 = new TestItem('1')
pane2 = pane1.splitRight(items: [item1])

View File

@@ -53,6 +53,7 @@ describe('Workspace', () => {
assert: atom.assert.bind(atom),
textEditorRegistry: atom.textEditors
})
atom.workspace.initialize()
return atom.workspace.deserialize(workspaceState, atom.deserializers)
}
@@ -975,8 +976,8 @@ i = /test/; #FIXME\
`
)
const atom2 = new AtomEnvironment({
applicationDelegate: atom.applicationDelegate,
const atom2 = new AtomEnvironment({applicationDelegate: atom.applicationDelegate})
atom2.initialize({
window: document.createElement('div'),
document: Object.assign(
document.createElement('div'),
@@ -1115,8 +1116,8 @@ i = /test/; #FIXME\
it("updates the title to contain the project's path", () => {
document.title = null
const atom2 = new AtomEnvironment({
applicationDelegate: atom.applicationDelegate,
const atom2 = new AtomEnvironment({applicationDelegate: atom.applicationDelegate})
atom2.initialize({
window: document.createElement('div'),
document: Object.assign(
document.createElement('div'),