mirror of
https://github.com/atom/atom.git
synced 2026-04-06 03:02:13 -04:00
Go back to using promise based on window:loaded event in main process tests
This commit is contained in:
@@ -338,17 +338,17 @@ describe('AtomApplication', function () {
|
||||
|
||||
const atomApplication1 = buildAtomApplication()
|
||||
const app1Window1 = atomApplication1.launch(parseCommandLine([tempDirPath1]))
|
||||
await app1Window1.applicationStartedPromise
|
||||
await app1Window1.loadedPromise
|
||||
const app1Window2 = atomApplication1.launch(parseCommandLine([tempDirPath2]))
|
||||
await app1Window2.applicationStartedPromise
|
||||
await app1Window2.loadedPromise
|
||||
|
||||
await app1Window1.saveState()
|
||||
await app1Window2.saveState()
|
||||
|
||||
const atomApplication2 = buildAtomApplication()
|
||||
const [app2Window1, app2Window2] = atomApplication2.launch(parseCommandLine([]))
|
||||
await app2Window1.applicationStartedPromise
|
||||
await app2Window2.applicationStartedPromise
|
||||
await app2Window1.loadedPromise
|
||||
await app2Window2.loadedPromise
|
||||
|
||||
assert.deepEqual(await getTreeViewRootDirectories(app2Window1), [tempDirPath1])
|
||||
assert.deepEqual(await getTreeViewRootDirectories(app2Window2), [tempDirPath2])
|
||||
@@ -423,7 +423,7 @@ describe('AtomApplication', function () {
|
||||
|
||||
async function focusWindow (window) {
|
||||
window.focus()
|
||||
await window.applicationStartedPromise
|
||||
await window.loadedPromise
|
||||
await conditionPromise(() => window.atomApplication.lastFocusedWindow === window)
|
||||
}
|
||||
|
||||
|
||||
@@ -707,7 +707,6 @@ class AtomEnvironment extends Model
|
||||
@menu.update()
|
||||
|
||||
@openInitialEmptyEditorIfNecessary()
|
||||
ipcRenderer.send('window-command', 'window:application-started')
|
||||
|
||||
serialize: (options) ->
|
||||
version: @constructor.version
|
||||
|
||||
@@ -20,6 +20,9 @@ class AtomWindow
|
||||
locationsToOpen ?= [{pathToOpen}] if pathToOpen
|
||||
locationsToOpen ?= []
|
||||
|
||||
@loadedPromise = new Promise((@resolveLoadedPromise) =>)
|
||||
@closedPromise = new Promise((@resolveClosedPromise) =>)
|
||||
|
||||
options =
|
||||
show: false
|
||||
title: 'Atom'
|
||||
@@ -71,12 +74,9 @@ class AtomWindow
|
||||
|
||||
@browserWindow.loadSettings = loadSettings
|
||||
|
||||
@closedPromise = new Promise((@resolveClosedPromise) =>)
|
||||
@applicationStartedPromise = new Promise (resolve) =>
|
||||
@browserWindow.once('window:application-started', resolve)
|
||||
@browserWindow.once 'window:loaded', =>
|
||||
@loaded = true
|
||||
@browserWindow.on 'window:loaded', =>
|
||||
@emit 'window:loaded'
|
||||
@resolveLoadedPromise()
|
||||
|
||||
@setLoadSettings(loadSettings)
|
||||
@env = loadSettings.env if loadSettings.env?
|
||||
@@ -193,10 +193,7 @@ class AtomWindow
|
||||
@openLocations([{pathToOpen, initialLine, initialColumn}])
|
||||
|
||||
openLocations: (locationsToOpen) ->
|
||||
if @loaded
|
||||
@sendMessage 'open-locations', locationsToOpen
|
||||
else
|
||||
@browserWindow.once 'window:loaded', => @openLocations(locationsToOpen)
|
||||
@loadedPromise.then => @sendMessage 'open-locations', locationsToOpen
|
||||
|
||||
replaceEnvironment: (env) ->
|
||||
@browserWindow.webContents.send 'environment', env
|
||||
@@ -255,9 +252,8 @@ class AtomWindow
|
||||
isSpecWindow: -> @isSpec
|
||||
|
||||
reload: ->
|
||||
@applicationStartedPromise = new Promise (resolve) =>
|
||||
@browserWindow.once('window:application-started', resolve)
|
||||
@loadedPromise = new Promise((@resolveLoadedPromise) =>)
|
||||
@saveState().then => @browserWindow.reload()
|
||||
@applicationStartedPromise
|
||||
@loadedPromise
|
||||
|
||||
toggleDevTools: -> @browserWindow.toggleDevTools()
|
||||
|
||||
Reference in New Issue
Block a user