Antonio Scandurra
85dde00e82
Merge branch 'master' into as-use-babel6
2017-02-16 12:59:05 +01:00
Max Brunsfeld
0c3b774c94
Avoid sending file path to renderer process in main process test
...
On windows, because the path contains backslashes, evaling a string containing
the path can interpret the backslashes as escape sequences
2017-02-15 13:53:08 -08:00
Max Brunsfeld
13055c8620
Wait on loadedPromise for workspace to deserialize in main process test
2017-02-15 11:05:21 -08:00
Antonio Scandurra
cf329d0f63
Use octal integer literal
2017-02-15 17:19:55 +01:00
Max Brunsfeld
ec0270b250
Explicitly save window states in main process test
2017-02-14 12:40:00 -08:00
Max Brunsfeld
ee962052b2
Tweak naming in main process test
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2017-02-14 12:05:17 -08:00
Max Brunsfeld
aea6896c2b
Restore correct directory's project state when opening a new file from the command line
2017-02-13 17:23:11 -08:00
Nathan Sobo
c6cae5b8fd
Store represented directory paths directly on AtomWindow in main process
...
Fixes #13729
Previously, when adding a window, we were unable to read its current
project paths out of the hash of the URL during window initialization
because the window still considered itself to be loading. Rather than
fixing this issue, we decided to completely eliminate the sharing of
state between processes in the window.location and instead switch to
cached synchronous RPC for the loadSettings and a dedicated RPC-based
mechanism for the project paths.
2017-02-07 13:15:27 -07:00
Max Brunsfeld
d6bddb4ce6
Avoid assertions about application.json in main process test
...
We can test the user-facing behavior by launching a second instance
of AtomApplication.
Refs #13564
2017-01-09 11:31:25 -08:00
Vladimir Timofeev
a7dda0e6f6
Refactor test code
2017-01-08 00:03:36 +03:00
Vladimir Timofeev
be57e4cd48
Additional check that storage/application.json exists
2017-01-07 23:58:28 +03:00
Vladimir Timofeev
4d5312fec5
Restore test behaviour to check content of storage/application.json
2017-01-07 23:52:29 +03:00
=
1fb066ad68
Really fix tests on windows
...
Path names with backslashes was not quoted.
2017-01-07 23:11:31 +03:00
Vladimir Timofeev
94f28a3877
Another try to fix tests on Windows.
...
Wait for ipc.
2017-01-07 14:10:24 +03:00
Vladimir Timofeev
4ba6919d4d
Try fix tests on Windows.
...
Only count AtomApplication#saveState calls, not saved content.
2017-01-07 13:04:05 +03:00
Vladimir Timofeev
bc77a79e86
Add test to ensure the state saved when project folders changed.
2017-01-07 10:59:22 +03:00
Damien Guard
3fd1dbdce3
Clean up temporary files when running specs
2016-12-01 10:48:45 -08:00
Damien Guard
4c4fa2b478
Integration tests now pass on Win32
2016-11-29 16:55:14 -08:00
Max Brunsfeld
b88fa984cf
Wait for project folder to be added in main process tests
2016-09-21 11:37:37 -07:00
Max Brunsfeld
3039024d17
Go back to using promise based on window:loaded event in main process tests
2016-09-21 11:37:24 -07:00
Max Brunsfeld
cff4de5195
Wait for project directory to be added in main process test
2016-09-21 11:04:29 -07:00
Max Brunsfeld
d1a4fd2378
Wait for reused window's project paths to update in main process test
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-09-20 16:52:47 -07:00
Max Brunsfeld
833b3b0ab0
Save state when reloading AtomWindow
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-09-20 16:10:11 -07:00
Max Brunsfeld
c2c7241eda
Destroy AtomEnvironment in beforeunload handler, not unload handler
...
See https://github.com/electron/electron/issues/7278
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-09-20 16:10:05 -07:00
Max Brunsfeld
46eb861f84
Try manually tearing down atom env before reloading window in main process spec
2016-09-20 12:37:40 -07:00
Max Brunsfeld
cec2c87793
Assert about remote directories' types in main process test
2016-09-20 09:54:28 -07:00
Max Brunsfeld
ee1b8160e5
Wait for each window to save its state in main process test
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-09-19 12:06:37 -07:00
Max Brunsfeld
511fe1a576
Tweak test again for travis
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-09-19 11:02:48 -07:00
Nathan Sobo
7bba3e86b2
Try this on travis
2016-09-16 16:47:33 -06:00
Nathan Sobo
f62bf2c7e0
Focus test on for travis
2016-09-16 14:22:23 -06:00
Nathan Sobo
5fad2bdbf9
Return a promise from AtomWindow.reload that resolves on window:loaded
2016-09-16 14:10:34 -06:00
Max Brunsfeld
e444076a46
WIP - debug travis CI failures
2016-09-15 17:29:02 -07:00
Max Brunsfeld
0d2b7d12b7
Fix test description
2016-09-15 16:56:10 -07:00
Max Brunsfeld
3758fe5646
Use fake directory provider in integration test for remote dirs
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-09-15 16:33:04 -07:00
Antonio Scandurra
5c3bad077d
Run platform-specific specs without mocking process.platform
2016-09-09 17:58:23 +02:00
Antonio Scandurra
924ca8ecf6
Run main process tests on Windows
2016-09-09 17:58:23 +02:00
Antonio Scandurra
6841babc4a
Run main process tests on Linux
2016-09-09 17:58:23 +02:00
Antonio Scandurra
e2a3b75db2
Fix app not quitting on win32 and linux when closing the last window
...
This regression was caused by a nuance in the way we maintain state in
`AtomApplication` for open windows. Specifically, when closing the last
window on Windows and Linux, we were explicitly calling `app.quit`
*before* removing such window from the list of open ones. In turn, this
caused the new `before-quit` behavior introduced in #12619 to work
improperly because it made the application wait on saving the state of a
stale window before exiting.
With this commit we are fixing that by making sure the stale window is
removed before calling `app.quit` in `removeWindow`.
2016-09-09 10:51:40 +02:00
Antonio Scandurra
bb7ff6d535
🎨
2016-09-07 16:36:01 +02:00
Antonio Scandurra
34a99f9c82
Write tests to ensure quitting the application works as expected
2016-09-07 14:18:52 +02:00
Antonio Scandurra
5b57669859
Disable telemetry on AtomApplication tests and smoke-spec.coffee
...
Unless a choice has been made by the user, this tab always shows up as
the first one when opening Atom, thus breaking some of the assumptions
we make in the main process tests.
2016-08-26 15:13:37 +02:00
Nathan Sobo
b6ab5530b5
Fix focus issues on CircleCI
2016-08-12 13:35:08 -06:00
Nathan Sobo
c861abc2a9
Fix timing issues in atom-application-test
...
Signed-off-by: Antonio Scandurra <as-cii@github.com >
2016-08-12 11:46:12 -06:00
Antonio Scandurra
9847c4fc24
Wait until the window is focused before interacting with it in tests
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-08-12 17:46:13 +02:00
Antonio Scandurra
87d684132c
Extract timeoutPromise into async-spec-helpers
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-08-12 17:46:12 +02:00
Antonio Scandurra
4bd644bea2
Bump timeout to 1 minute on AtomApplication tests
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-08-12 17:45:59 +02:00
Antonio Scandurra
336f6425da
Discourage people from using temp directly
...
It's better if we fs.realpathSync the path returned by the temp module.
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-08-12 17:45:56 +02:00
Antonio Scandurra
04d8b9bb86
Ensure we don't reuse the same window when testing the offset distance
...
Signed-off-by: Nathan Sobo <nathan@github.com >
2016-08-12 17:45:50 +02:00
Antonio Scandurra
753db274fc
Clear storage data after each AtomApplication test
...
This, along with using a temporary directory as the ATOM_HOME, will make
sure that tests won't share any state with one another, possibly
increasing the level of resiliency of the suite.
2016-08-12 15:20:58 +02:00
Antonio Scandurra
a817a354dc
Use project paths instead of tree view directories to test remote paths
2016-08-12 14:35:40 +02:00