Commit graph

634 commits

Author SHA1 Message Date
Milan Burda
3ad3ade828 refactor: add prefer-const to .eslintrc + fix errors (#14880) 2018-10-02 11:56:31 +10:00
Alexey Kuzmin
c9edf77e8e test: slightly rewrite getGPUInfo() tests (#14863)
Rewrite GPUInfo tests for linux and update `getGPUInfo` functionality for linux.
`basic` and `complete` GPUInfo is same for linux.
2018-10-01 18:34:52 -07:00
Milan Burda
c61db523c7 refactor: replace var with const / let (#14866) 2018-09-29 09:17:00 +10:00
Samuel Attard
50a4a8e9c3
spec: add test for syncronous access to blink APIs (#14637)
This test should ensure we catch a regression of #13787
2018-09-25 10:40:15 +12:00
Samuel Attard
6d01952e66
chore: replace standard with eslint-config-standard and add custom rules (#14636)
* chore: replace standard with eslint-config-standard

This adds support for --cache so linting JS only takes ~1 second and only lints things that changed

It also allows us to add custom linting rules

* chore: add eslint-plugin-mocha and enable the no-exclusive-tests rule

This will block anyone from pushing / merging a `.only` test or describe
2018-09-16 03:51:23 +10:00
Samuel Attard
558fff69e7
chore: update to standard 12 2018-09-14 14:57:01 +10:00
Samuel Attard
14df89f214 Remove the 'getProcessMemoryInfo' API
* Underlying APIs have been removed in Chromium
  * https://chromium-review.googlesource.com/c/chromium/src/+/969089
  * https://chromium-review.googlesource.com/c/chromium/src/+/953723
  * https://bugs.chromium.org/p/chromium/issues/detail?id=819289
* https://github.com/electron/electron/projects/11#card-11509601
2018-09-11 20:21:32 +02:00
Robo
14ed71fa1b fix: use render client id to track deleted render process hosts (#14520)
* fix: use render client id to track deleted render process hosts

Instead of relying on OS process id, which may not be unique
when a process is reused, we rely on the renderer client id
passed by the content layer when starting the renderer process
which is guaranteed to be unique for the lifetime of the app.

* fix: store context id as int64_t

Ensuring that it doesn't wrap easily with a large number
of context creation on some malformed web pages.
2018-09-11 11:18:10 -07:00
Milan Burda
38419e3a6a chore: address TODO for WebContents.prototype.setSize / reportRemovedAttribute removal (#14517)
* chore: remove WebContents.prototype.setSize

* chore: remove reportRemovedAttribute

* chore: remove unused fixtures
2018-09-11 17:58:57 +10:00
Milan Burda
dcd580b6cf chore: remove app.makeSingleInstance / releaseSingleInstance (#14518) 2018-09-10 16:33:36 +10:00
Robo
8441d09a18 chore: refactor webContents module isCurrentlyAudible api spec (#14410) 2018-09-05 16:00:05 -05:00
Milan Burda
c63014c256 refactor: use loadFile when appropriate in tests (#14422) 2018-09-04 09:50:53 -05:00
Milan Burda
c17a1b37ea feat: add event.senderId property to IPCs sent via ipcRenderer.sendTo (#14395) 2018-08-31 20:13:51 -05:00
Robo
32158ca5dd chore: refactor context isolation spec (#14394)
* spec: refactor BrowserWindow module contextIsolation option

* spec: check for serialzation in isolated renderers separately
2018-09-01 08:51:29 +12:00
Robo
edd5c4b9bb fix: use OS process handle to clear object registry (#14324)
RenderProcessHost switch can happen between ipc calls when
speculative process are invvolved, which will lead to deletion
of entries on current context. Use OS process handles to
uniquely associate a destruction handler for a render process.
2018-08-28 13:32:46 -05:00
Milan Burda
e6e3ccfc50 refactor: use std::string instead of base::string16 for IPC channel names (#14286) 2018-08-24 10:30:37 -05:00
Robo
bce5bd87a8 fix: opt into location services once device service has been started (#14253)
* fix: opt into location services once device service has been started

* refactor: provide fake location provider to mock geolocation reponses

* chore: add spec for navigator.geolocation api using fake location provider
2018-08-23 08:51:46 -07:00
Milan Burda
fc85d02786 feat: expose missing process APIs in sandboxed renderers (#13505) 2018-08-21 11:05:45 -07:00
John Kleinschmidt
828e317360 Fix flaky sandbox tests
Windows apparently has issues running opening two windows at once which is causing flakiness on the mixed sandbox tests.
2018-08-13 09:30:20 -07:00
Milan Burda
9a1ad2b93f fix: ipcRemote.sendSync regression after moving away from JSON for return values (#13941) 2018-08-09 19:45:10 +10:00
Milan Burda
db38c8b620 Fix process.execPath returning parent process path instead of the helper in sandboxed renderer (#13839) 2018-07-30 11:13:42 +10:00
PalmerAL
ffc15e02a6 fix: add native function to create preload script (#13032)
* add native function to create preload script

* add tests

* fix formatting

* fix tests

* rerun CI
2018-07-13 11:17:11 +09:00
Felix Rieseberg
deedf6c3f4 feat: Add isCurrentlyAudible() to WebContents (#13614)
* 🔧 Add isCurrentlyAudible() to WebContents

* ❤️ Implement feedback, use await to wait for event

* 👷 Add missing imports
2018-07-12 21:35:11 +10:00
Jeremy Apthorp
bdceea6aca fix: enable spell checking, which broke in upgrade to ch66
Chromium commit [03563dd163][1] changed the way that the
spellcheck-enabled status was checked, defaulting to false.

Added the first (!) test for spellchecking, too.

Fixes #13608.

[1]: 03563dd163
2018-07-11 10:27:56 -07:00
Jeremy Apthorp
f50f8e3f3d chore: [gn] fix CSP warning in debugger API test (#13541)
There's an attempt to suppress the warning in `spec/static/main.js`, which
sets `process.env.ELECTRON_DISABLE_SECURITY_WARNINGS`. However, it sets the
variable too late in the boot process: by the time that line in main.js has
run, a child zygote has already been booted. `test.py` works around this by
setting that environment variable outside of the test process, to ensure that
it gets propagated to all children.

I've been running the GN tests directly with `./out/Default/electron
electron/spec`, rather than through the wrapper script, and the
`api-debugger-spec.js` tests were failing, because they depend on a particular
log message being the first one emitted, and the CSP warning was causing that
test to fail, since it wasn't being correctly suppressed.

Instead of writing another wrapper script, this just fixes the underlying thing
that the warning is complaining about, which I think is reasonable because the
test's pass/fail depends on this specific behaviour.
2018-07-06 15:01:33 -04:00
Cheng Zhao
e42c6d3eb7
fix the crash when loading site with jquery (#13475) 2018-06-29 09:42:04 +09:00
Cheng Zhao
44aad039c6 fix: do not expose Node's external strings (#13438) 2018-06-27 10:18:09 +10:00
Aleksei Kuzmin
417fe29dc0 Fix the media events test
Playing a media now requires a user gesture.
See https://goo.gl/xX8pDD.
2018-06-19 11:49:45 +10:00
Zhuo Lu
ab24a1e36d feat: netLog API for dynamic logging control (#13068)
* Introduce `net.{start|stop}Logging()`

- Slight regression right now as Electron won't automatically start logging net-logs at launch, will soon be fixed
- To implement callback for async controls

* Add `net.isLogging` & optional callback param for `net.stopLogging()`

* Fix small regression on --log-net-log

--log-net-log should work again

* Error on empty file path

* Only start with valid file path

* Remove unused var

* Allow setting log file path before URLRequestContextGetter starts logging

* Add net log tests

* Remove redundant checks

* Use brightray::NetLog

* Clean up code

* Should automatically stop listening

* 🎨 Attempt to fix styles

* Only run non-null callback

* Dump file to tmpdir

* Simplify net log spec

Spawned Electron process on Linux CI can fail to launch

* Separate netLog module

* Remove net logging test from net spec

* Add tests for netLog

* Fix header guard

* Clean up code

* Add netLog.currentlyLoggingPath

* Callback with filepath

* Add test for case when only .stopLogging() is called

* Add docs

* Reintroduce error on invalid arg

* Update copyright

* Update error message

* Juggle file path string types
2018-06-19 11:45:58 +10:00
Thiago de Arruda
6ff111a141 perf: don't use JSON to send the result of ipcRenderer.sendSync. (#8953)
* Don't use JSON to send the result of `ipcRenderer.sendSync`.

- Change the return type of AtomViewHostMsg_Message_Sync from `base::string16`
  to `base::ListValue`
- Adjust lib/browser/api/web-contents.js and /lib/renderer/api/ipc-renderer.js
  to wrap/unwrap return values to/from array, instead of
  serializing/deserializing JSON.

This change can greatly improve `ipcRenderer.sendSync` calls where the return
value contains Buffer instances, because those are converted to Array before
being serialized to JSON(which has no efficient way of representing byte
arrays).

A simple benchmark where remote.require('fs') was used to read a 16mb file got
at least 5x faster, not to mention it used a lot less memory.  This difference
tends increases with larger buffers.

* Don't base64 encode Buffers

* Don't allocate V8ValueConverter on the heap

* Replace hidden global.sandbox with NodeBindings::IsInitialized()

* Refactoring: check NodeBindings::IsInitialized() in V8ValueConverter

* Refactor problematic test to make it more reliable

* Add tests for NaN and Infinity
2018-06-13 17:38:31 +10:00
Alexey Kuzmin
0d5e98a201 Slightly rewrite <webview> tag tests (#13122) 2018-06-01 10:56:48 +02:00
Milan Burda
4cfe5ecaa4 add proper support for typed arrays in remote (#13055) 2018-05-24 21:05:46 +09:00
Alexey Kuzmin
fc34076c2b Refactor <webview> tag tests (#12886) 2018-05-14 17:00:49 -05:00
Samuel Attard
5b5c161601
feat: new makeSingleInstance API (#12782)
* Refactor app.makeSingleInstance
* new API `app.isPrimaryInstance()`
* new API `app.isSingleInstance()`
* new event `app.on('second-instance')`
* deprecated old syntax `app.makeSingleInstance(cb)`
* deprecated old syntax of `app.makeSingleInstance() --> bool` in favor
of `app.isPrimaryInstance()`
* Fix spec, we don't need process.nextTick hacks any more
* Make deprecation TODO for the return value of makeSingleInstance
* Refactor makeSingleInstance to requestSingleInstanceLock and add appropriate deprecation comments
* I swear this isn't tricking the linter
* Make const
* Add deprecation warnings for release, and add to planned-breaking-changes

BREAKING CHANGE
2018-05-08 01:29:18 +10:00
Tatsuya Hiroishi
9c65abd746 handle remote exception (#12694)
* add cause property to exception in callFunction

* update exceptionToMeta function

* add sender argument
* and cause property to return value

* update exception convert in metaToValue function

* add from and cause properties to the exception error

* unit test for remote exception
2018-04-24 08:40:19 -04:00
Charles Kerr
c2673aa970 Set appropriate defaults for webview options (#12271)
* Persist defaults to webPreferences object to JS land can read the inferred values instead of just user defined values

* Test inherited default propogation

* Refactor to remove coupling from fetching values and defaults

* Test description type

* Fix up tests
2018-03-15 13:56:46 +09:00
Hari Juturu
704af29543 Exposing process.env status (#12166) 2018-03-14 12:01:40 +09:00
Cheng Zhao
cde0c1d418 Print detailed error for serviceWorker test (#12186) 2018-03-08 21:06:29 -05:00
Hari Juturu
2f4fd3324b Preload doesn't load in sandboxed render if preload path contains special chars (#12037)
* Adding missing headers

* adding ut

* Removing the file path exists check

* fixing test

* exposing window.require in UT
2018-03-07 11:40:00 -05:00
Charles Kerr
65ee977a86 Exit gracefully on linux (#12139)
* Fix timing issue in singleton fixture.

Singleton now sends the "we've started" message out only after it's
received a `'ready'` event from `app`. Previously it sent the message
out immediately, resulting in the parent test trying to manipulate it
before Singleton's event loop was fully bootstrapped.

* Check for graceful exits on Linux, too.

Rewrite the "exits gracefully on macos" spec to run on Linux too.

* Check for graceful exits everywhere.

* Tweak comment

* Better error logging in api-app-spec.js. (#12122)

In the 'exits gracefully' test for app.exit(exitCode),
print the relevant error information if the test fails.

* Run the exit-gracefully test on macOS and Linux.

Windows does not support sending signals, but Node.js offers some
emulation with process.kill(), and subprocess.kill(). Sending signal 0
can be used to test for the existence of a process. Sending SIGINT,
SIGTERM, and SIGKILL cause the unconditional termination of the target
process.

So, we'll need a different approach if we want to test this in win32.
2018-03-06 22:01:17 -05:00
Samuel Attard
b3234f634b Add ability to set arbitrary arguments in a renderer process (#11850) 2018-02-12 11:54:31 -06:00
shelley vohr
ca34978e73 add app.setLocale() (#11469)
* infrastructure for setLocale via klang

* add documentation for setLocale

* add test for setLocale

* fix spec

* add spec and update docs

* fix carriage feeds on windows

* SetLocale() sets LC_ALL on Linux

* in SetLocale() on Linux, use g_setenv()

* fix tyop: '#ifdef OSX_POSIX'

* make the linter happy

* improvements from review
2018-02-08 08:26:37 -06:00
Felix Rieseberg
d586ef2f39 feature: Hot security tips (#11810)
* 🔧 Add security issue detection (and logs)

* 🔧 Check for it on load

* 👷 Add some tests

* 👷 Make the linter happy

* 🔧 Allow them to be enabled by force

* 📝 Make message slightly prettier

* 🔧 Fix a typo in the code comment

* 🔧 Classic mistake

* 🚀 Optimize things a bit more

* 👷 Add tests, fix tests

* 📝 Document things

* 🔧 Make linter happy

* 🔧 One more piece of cleanup
2018-02-03 07:50:12 -07:00
Shelley Vohr
276f758560
remove deprecated method call 2017-12-07 14:26:57 -05:00
Cheng Zhao
cb3a9c69ab Add a SessionPreferences to manage session related data
By design the BrowserClient should not be aware of the api:: classes.
2017-12-05 15:59:15 +09:00
Samuel Attard
0ddd078aaf Add ability to set global preload scripts 2017-12-05 11:35:27 +09:00
Ales Pergl
ecdbe79e29 Make the asar-video test run faster
I cut the video to 3 seconds and removed the audio track, which makes the test
finish a lot sooner. Also the asar file is 160 kB instead of 1 MB.
2017-12-02 11:30:57 +01:00
deepak1556
0b88873e77 add basic inspector module test 2017-11-24 10:58:53 +09:00
Ales Pergl
82394cc06d Use an existing host name so that it resolves quickly and tests don't time out. 2017-11-24 10:58:53 +09:00
Ahmed Mohamed Ali
b6109030a1 Fix missing eof missing from html test files 2017-11-13 21:22:36 +01:00
Ahmed Mohamed Ali
1f2c949316 Merge branch 'master' of https://github.com/ahmedmohamedali/electron 2017-11-13 21:16:52 +01:00
Ahmed Mohamed Ali
ff707a0f3d Fix issues in the file for the tests. 2017-11-13 21:13:19 +01:00
Ahmed
9b3960fe90
Merge branch 'master' into master 2017-11-08 18:03:55 +01:00
Shelley Vohr
0adf775d9a
clean fixture and fix failing travis test 2017-11-01 08:57:22 -04:00
Ahmed Mohamed Ali
1e9942c1bf Fix js coding style errors 2017-10-20 08:46:41 +02:00
Ahmed Mohamed Ali
44f91e12e1 Add tests for fix described in #10793 2017-10-19 16:15:02 +02:00
Yuya Ochiai
6326c6727e Add did-attach-webview event 2017-10-07 22:52:20 +09:00
Cheng Zhao
d87ea5713d spec: It is not certain which process starts first 2017-09-25 11:19:25 +09:00
Cheng Zhao
b4075bed87 spec: Add test case for app.makeSingleInstance 2017-09-20 11:58:32 +09:00
sungpark
eca7ff986c add webFrame to sandboxed renderer 2017-08-23 10:52:02 -07:00
sungpark
bf07c5aebd fix contextIsolation issue while webPreference sandbox is on
contextIsolation didn't work while sandbox is on. The fix is contextIsolation picked up while sandbox on
2017-08-23 10:52:02 -07:00
Kevin Sawicki
3925bfde8e Add spec for reloading opened window cross-origin 2017-07-17 11:55:15 -07:00
Kevin Sawicki
86b1deedfa Inherit enabled-sandbox in opened windows 2017-07-17 11:55:15 -07:00
Kevin Sawicki
c71b0a5441 Add spec for configuring web preferences from sandboxed new-window event 2017-07-17 11:55:15 -07:00
Kevin Sawicki
48f5a66f87 Merge pull request #9983 from electron/devtools-mixed-sandbox
Fix devtools open in mixed sandbox
2017-07-14 09:41:56 -07:00
Kevin Sawicki
60f563ae5f Surface require errors so spec does not hang 2017-07-13 08:36:58 -07:00
Hari Juturu
80bd6a3e91 🎨 2017-07-11 18:36:01 -07:00
Hari Juturu
9a3b78d9fe Fix devtools open in mixed sandbox mode 2017-07-11 18:36:00 -07:00
Kevin Sawicki
506b354c1b 👕 Remove lint 2017-06-28 13:40:28 -07:00
Kevin Sawicki
9f0d2cd39d Use pdf-loaded event in specs 2017-06-28 12:57:05 -07:00
Kevin Sawicki
2cd49f3036 Merge pull request #9644 from electron/webview-sandbox
Enable sandbox on webview
2017-06-28 10:10:25 -07:00
Kevin Sawicki
5822e718e6 Add finish helper to ensure connection 2017-06-28 09:58:23 -07:00
Kevin Sawicki
523fbe2df9 Send messages between app via socket connection 2017-06-28 09:27:19 -07:00
Kevin Sawicki
7fcc00f137 Add spec for app.enableMixedSandbox() 2017-06-28 08:33:11 -07:00
Kevin Sawicki
0eaddd1565 Verify --enable-sandbox/--no-sandbox command line 2017-06-26 14:12:03 -07:00
Hari Krishna Reddy Juturu
902b34ba39 🎨 2017-06-19 08:03:02 -07:00
Hari Krishna Reddy Juturu
e546820a4a Completing UTs 2017-06-19 07:46:14 -07:00
Hari Krishna Reddy Juturu
0b7e7458c9 WIP: Adding UT 2017-06-16 15:34:11 -07:00
Birunthan Mohanathas
7d2226e05e Let Chromium manage document.visibilityState and document.hidden
Chromium already includes the necessary plumbing to manage the
visibility properties and `visibilitychange` event so this gets rid of
most of our custom logic for `BrowserWindow` and `BrowserView`.

Note that `webview` remains unchanged and is still affected by the issues
listed below.

User facing changes:

- The `document` visibility properties and `visibilitychange` event are
  now also updated/fired in response to occlusion changes on macOS. In
  other words, `document.visibilityState` will now be `hidden` on macOS
  if the window is occluded by another window.

- Previously, `visibilitychange` was also fired by *both* Electron and
  Chromium in some cases (e.g. when hiding the window). Now it is only
  fired by Chromium so you no longer get duplicate events.

- The visiblity state of `BrowserWindow`s created with `{ show: false }`
  is now initially `visible` until the window is shown and hidden.

- The visibility state of `BrowserWindow`s with `backgroundThrottling`
  disabled is now permanently `visible`.

This should also fix #6860 (but not for `webview`).
2017-06-06 15:16:01 -07:00
Kevin Sawicki
9f49b71b89 Add cross-origin frame webview spec 2017-05-26 10:10:36 -07:00
Kevin Sawicki
36989e19f8 Add spec for cross-origin blockage 2017-05-26 10:10:36 -07:00
Kevin Sawicki
f5cf6d4ddd Add spec for native window.open from iframe 2017-05-26 10:10:36 -07:00
Kevin Sawicki
a0571e3c72 Add failing spec for native window.open returning null without allowpopups 2017-05-26 10:10:36 -07:00
Kevin Sawicki
fd782706b2 Add explicit spec for removing preload from webview 2017-05-17 13:47:00 -07:00
Kevin Sawicki
e817dbf50a Add failing spec for webviewTag inheritance 2017-05-17 13:27:28 -07:00
Thiago de Arruda
5654ff0d43 Add test for #9387 2017-05-16 09:07:41 -03:00
Ryohei Ikegami
7ac93045b7 Merge branch 'master' into native-window-open 2017-05-11 13:51:43 +09:00
Kevin Sawicki
8c856922f3 Merge pull request #9292 from 22222/issue8911
Fix #8911
2017-05-09 09:06:26 -07:00
Kevin Sawicki
70e199e255 Merge pull request #9333 from electron/process-memory-info-sandbox
Expose `process.get{System,Process}MemoryInfo` to sandbox
2017-05-04 14:17:44 -07:00
22222
042b511a27 Fix #8911 2017-05-03 12:47:00 -05:00
Kevin Sawicki
56a4a69dee Add more non-matching target origins 2017-05-01 08:45:38 -07:00
Kevin Sawicki
efc62629ef Fix typo in fixture comment 2017-05-01 08:45:38 -07:00
Kevin Sawicki
3c58d50f87 Add failing spec for targetOrigin handling 2017-05-01 08:45:38 -07:00
Thiago de Arruda
a8640fb8a3 Add test to verify memory is released after sandboxed popup is closed 2017-05-01 11:30:07 -03:00
Ryohei Ikegami
da97150fc9 Fix JS style in test HTMLs 2017-04-30 19:43:21 +09:00
Ryohei Ikegami
0034b306f5 Add test for nativeWindowOpen + contextIsolation 2017-04-30 19:33:40 +09:00
Ryohei Ikegami
edeac2f59e Split test HTML file into separate ones 2017-04-30 18:54:08 +09:00
Ryohei Ikegami
1d73e84a29 Merge branch 'master' into native-window-open 2017-04-27 12:03:55 +09:00
Kevin Sawicki
cee0507090 Add failing spec for inheriting Javascript web preference 2017-04-25 12:57:53 -07:00
Kevin Sawicki
de62f1ea6c Restart crash service in each spec 2017-04-19 16:37:24 -07:00
Ryohei Ikegami
8dff29185b Merge branch 'master' into native-window-open 2017-04-18 21:59:22 +09:00
Kevin Sawicki
bfb9388191 Add failing spec for app.exit with >2 windows 2017-04-11 09:09:17 -07:00
Ryohei Ikegami
349ea3a15a Add test for native addon after reload 2017-04-06 11:43:57 +09:00
Thiago de Arruda
ce1a5e3c9c Fix sandboxed crashReporter for windows.
- Use `path` module from browser process in sandboxed renderer. This is required
  because the return value of `path.join` is platform-specific, and this is an
  assumtion of crash-reporter.js which is shared between sandboxed and
  non-sandboxed renderers.
- Set `process.platform` and `process.execPath` in sandboxed renderer
  environment. This is required to spawn the windows crash service from
  sandboxed renderer.
- Use a single temporary directory for all crashReporter tests. This is required
  to make tests more deterministic across platforms(since mac's crashpad doesn't
  support changing the crash dump directory). Also make a few improvements/fixes
  to the `uploadToServer` test.
2017-04-05 18:09:24 -03:00
Kevin Sawicki
e5f70f90a4 Add spec for remote setter with remote object 2017-04-04 11:18:16 -07:00
Ryohei Ikegami
61fa8693d2 Merge branch 'master' into native-window-open 2017-04-04 20:54:37 +09:00
Ryohei Ikegami
051e133ce3 Add test for opeing HTML file 2017-04-04 19:05:13 +09:00
Kevin Sawicki
257f6b142f Add spec for remote setter not surfacing error 2017-04-03 09:10:46 -07:00
Thiago de Arruda
460fb9cdb9 Add tests for uploadToServer option. 2017-03-31 13:48:07 -03:00
Kevin Sawicki
39fdc26921 Time out after 5 minutes 2017-03-30 14:39:48 -07:00
Kevin Sawicki
b85ebb00aa Tweak logged messages 2017-03-30 14:36:52 -07:00
Kevin Sawicki
7873130019 Add comment to codecs app script 2017-03-30 14:36:52 -07:00
Kevin Sawicki
6b8f840da0 Add script to verify ffmpeg without proprietary codecs 2017-03-30 14:36:52 -07:00
Ryohei Ikegami
6f9dbd4e04 Merge branch 'master' into native-window-open 2017-03-24 00:11:43 +09:00
Thiago de Arruda
5ee6205c0a Run the crash reporter specs with sandbox option.
- Create a function that accepts BrowserWindow options and generates a suite
  that contains the renderer-specific tests.
- Run the function twice to execute the tests with and without sandbox option.
2017-03-23 10:01:02 -03:00
Cheng Zhao
940d77b9a0 Fix typos and adjust sentences 2017-03-20 12:52:46 -07:00
Cheng Zhao
033aa16e04 test: Node integration in web workers 2017-03-20 12:52:46 -07:00
Kevin Sawicki
286f529968 Merge pull request #8890 from twolfson/dev/proxy.to.string.sqwished
🐛 Add toString support to remote functions
2017-03-20 09:35:51 -07:00
Ryohei Ikegami
6bbfe89f96 Add spec for useNativeWindowOpen 2017-03-19 18:11:20 +09:00
Kevin Sawicki
648d3324fb Add spec for remote function with toString property 2017-03-17 10:28:23 -07:00
deepak1556
80ce60f644 spec: check if pdf has loaded 2017-03-14 00:26:27 +05:30
deepak1556
6be779c777 update spec with new asset 2017-03-14 00:26:27 +05:30
deepak1556
a4400dc549 add basic spec 2017-03-14 00:26:27 +05:30
Kevin Sawicki
14e8e463b3 Merge pull request #8864 from electron/zoom_controller_webview_patch
browser: track origin zoom with HostZoomMap
2017-03-09 11:27:34 -08:00
Kevin Sawicki
17b70670f8 Add initial NativeImage.addRepresentation specs 2017-03-09 09:56:42 -08:00
deepak1556
224ffe44aa add spec 2017-03-08 19:16:55 +05:30
Kevin Sawicki
8eaf48e552 Add spec for 1x1 PNG data URL 2017-03-07 12:27:55 -08:00
Kevin Sawicki
f549bda9fc Merge pull request #8799 from nitsakh/baseURLForDataURL
Support base URL option to loadURL for data URLs
2017-03-06 10:25:53 -08:00
Kevin Sawicki
7fb77ee1cb Set isolated world security origin 2017-03-02 08:49:18 -08:00
Kevin Sawicki
7f6283352f Add failing spec for fetch from isolated world 2017-03-02 08:49:18 -08:00
Nitish Sakhawalkar
879082b1a6 Issue #8735:Support base URL option to loadURL for data URLs 2017-02-28 16:49:03 -08:00
Kevin Sawicki
6c40b1eead Verify global.Buffer is undefined 2017-02-24 09:57:32 -08:00
Kevin Sawicki
e6fec57bd8 Add failing spec for Buffer from preload required module 2017-02-24 09:57:32 -08:00
deepak1556
a57af31b99 add zoom specs based on standard protocols 2017-02-18 01:41:39 +05:30
deepak1556
403e7681c1 add basic webview zoom specs 2017-02-18 01:34:32 +05:30
deepak1556
dfc2e6c4a8 add temporary zoom api spec 2017-02-18 01:34:32 +05:30
Kevin Sawicki
86007fe61d Update blur parent window spec 2017-02-15 08:28:55 -08:00
Kevin Sawicki
35908ac398 Add webContents.focus() spec 2017-02-15 08:28:55 -08:00
Kevin Sawicki
272a0824e8 Fix darwin platform name 2017-02-14 09:37:09 -08:00
Kevin Sawicki
af7702d0f2 🎨 2017-02-14 09:37:09 -08:00
Kevin Sawicki
b51adf8ae5 Add spec for updated extra parameters 2017-02-14 09:37:09 -08:00
Kevin Sawicki
a4bbad03c2 autoSubmit -> uploadToServer 2017-02-14 09:37:09 -08:00
Kevin Sawicki
7e138083ef Add declared const Buffer spec 2017-02-14 08:42:34 -08:00
Kevin Sawicki
70010fdb8e Add spec for Buffer global 2017-02-14 08:42:34 -08:00
Kevin Sawicki
6b56dfd94b Add spec for remote callback length 2017-02-08 11:59:43 -08:00
Kevin Sawicki
84f8bfbdef Add spec for registering/requiring Coffeescript 2017-02-08 09:00:14 -08:00
Cheng Zhao
c72438f09f WebInspector has been split up 2017-02-06 10:34:29 -08:00
Kevin Sawicki
e99b1709d9 Redeclare process/global as strings 2017-01-30 09:58:44 -08:00
James Ide
0430380de1 Update the Node submodule to use the new module wrapper
See the fixed issue for the context. This pulls in a vendored copy of Node that includes the described patch.

Fixes #8358

Test Plan: Built Electron and verified it loaded the sample app correctly and that the module wrapper is the new one by viewing Node's source code in the Blink Inspector.

Added specs and tested with `npm test -- --grep "global variables"`
2017-01-30 09:37:14 -08:00
Kevin Sawicki
45986405b8 Assert remote event names 2017-01-25 12:36:55 -08:00
Charlie Hess
b04db2e546 Add a spec for the "renderer window closed" error. 2017-01-25 12:36:55 -08:00
Kevin Sawicki
170c51ae85 Add spec for crashing node process 2017-01-24 13:49:45 -08:00
Kevin Sawicki
977680d00b Add spec for midi without sysex permission 2017-01-19 09:05:59 +02:00
Kevin Sawicki
1d824d4645 Assert document visibility in main context 2017-01-16 13:03:38 -08:00
Kevin Sawicki
37b7dda3c5 Remove use of now private guestId 2017-01-16 12:38:16 -08:00
Kevin Sawicki
3f7b3c4bd7 Implement window overrides in main context 2017-01-16 12:38:16 -08:00
Kevin Sawicki
b348cdeae8 Set page variable using webFrame.executeJavaScript 2017-01-16 12:38:16 -08:00
Kevin Sawicki
ea2273dde5 Assert built-in prototype isolation 2017-01-16 12:38:16 -08:00
Kevin Sawicki
2928fe5c43 Add initial isolated world spec 2017-01-16 12:38:16 -08:00
Kevin Sawicki
12382f064b Add failing spec for cycle in options 2017-01-06 09:58:40 -08:00
Zeke Sikelianos
b0c4c79c49 remove unused webview fixture 2016-12-22 10:41:05 -08:00
Zeke Sikelianos
1085c28612 rename all web-view files to webview 2016-12-22 10:41:05 -08:00
Kevin Sawicki
b08bc02cde Merge pull request #8137 from deepak1556/media_device_id_patch
session: reset media device id salt when cookies are cleared
2016-12-12 13:34:24 -08:00
Paul Frazee
99ea50649a finish implementation of {secure:true} opt on protocol.registerStandardScehesm, and add working test 2016-12-12 12:49:57 -08:00
deepak1556
e043dabcb8 add spec 2016-12-04 00:22:57 +05:30
Kevin Sawicki
c1a02d6556 Add spec for render-view-deleted issue 2016-12-02 10:42:09 -08:00
Cheng Zhao
a1dfdbdde4 spec: Should check origin before accessing window.opener 2016-11-16 07:50:30 -08:00
Birunthan Mohanathas
2986b7bc4a Allow webview guests to be resized manually
This adds the `disableguestresize` property for webviews to prevent the
webview guest from reacting to size changes of the webview element. This
also partially documents the `webContents.setSize` function in order to
manually control the webview guest size.

These two features can be combined to improve resize performance for
e.g. webviews that span the entire window. This greatly reduces the lag
described in #6905.
2016-11-15 11:00:09 -08:00
Jhen
8b30439d7f Update devtools extension spec for chrome.storage 2016-11-15 19:58:08 +08:00
Kevin Sawicki
dda3fcef91 Add failing spec for notification permission crash 2016-10-31 08:54:56 -07:00
Cheng Zhao
ce847fc3ca Merge pull request #7578 from electron/windows-logging
Show console output from Windows when ELECTRON_RUN_AS_NODE is set
2016-10-17 20:22:39 +08:00
Samuel Attard
eac5ba4c56 Fix spec linting issues 2016-10-13 12:47:43 +11:00
Kevin Sawicki
e899050500 Add basic test of spawned ELECTRON_RUN_AS_NODE process 2016-10-12 13:48:49 -07:00
Kevin Sawicki
8897a7a926 Add specs for ELECTRON_NO_ASAR env var 2016-10-12 11:11:27 -07:00
Kevin Sawicki
99414065a9 Add char/keypress event tests 2016-10-10 09:35:44 -07:00
Kevin Sawicki
e4b0577cb0 Assert key and code in keyup input event spec 2016-10-10 09:35:44 -07:00
Kevin Sawicki
d69367aa9b Add keydown sendInputEvent specs 2016-10-10 09:35:43 -07:00
Michael Vasseur
edd80d88a9 Update BrowserWindow's test to check additional features upon window.open() call 2016-10-05 13:45:15 +02:00
Kevin Sawicki
e16fa08e61 🎨 2016-09-30 08:38:21 -07:00
Cheng Zhao
458c4dd129 Merge branch 'support-chromium-sandbox' of https://github.com/tarruda/electron into tarruda-support-chromium-sandbox 2016-09-27 20:02:23 +08:00
Thiago de Arruda
47fd41715f Add some tests for "sandbox" option 2016-09-27 06:01:47 -03:00
deepak1556
7ba947aee9 add spec 2016-09-22 00:15:25 +05:30
Cheng Zhao
e3e450613d Merge pull request #7157 from Mossop/moveguest
Allow moving a webcontents to a different webview
2016-09-20 14:28:42 +09:00
Dave Townsend
47df447e4f Test that replacement history entries don't break forward navigation.
This is a test for #7175
2016-09-16 17:08:54 -07:00
Kevin Sawicki
f792c720f4 Allow spec to be run multiple times in same runner 2016-09-14 11:16:44 -07:00
Kevin Sawicki
bc13536208 Add failing spec for missing remote properties 2016-09-14 10:53:25 -07:00
Dave Townsend
313b2faa3c Add a guestinstance attribute to webviews reflecting their current guest
instance ID and allowing moving a guest instance to a new webview.
2016-09-09 10:32:05 -07:00
Cheng Zhao
e189132176 Merge pull request #7123 from deepak1556/asar_range_patch
protocol: respect range header when reading from asar
2016-09-09 20:59:12 +09:00
Kevin Sawicki
aaf2bb2751 Add spec for deleting Buffer global in preload 2016-09-08 10:34:09 -07:00
deepak1556
1ae7b2fcbc update 2016-09-08 10:12:23 +05:30
deepak1556
7e6cba1482 add failing spec 2016-09-08 09:37:06 +05:30
Cheng Zhao
f854b27bfb Merge pull request #6867 from electron/remote-function-properties
Allow accessing remote function properties
2016-08-31 17:28:09 +09:00
deepak1556
ae297760af add spec and docs 2016-08-24 06:53:14 +05:30
Kevin Sawicki
ec44a5d198 Add tests for setting remote function properties 2016-08-22 17:07:18 -07:00
Kevin Sawicki
d226b7bc6c Use Proxy for accessing properties of remote function 2016-08-22 17:07:18 -07:00
Kevin Sawicki
600076b46d Remove lint from fixtures 2016-08-22 17:07:17 -07:00
Kevin Sawicki
d333cc5e38 Support remote function properties 2016-08-22 17:07:17 -07:00
Kevin Sawicki
9e4665fbc4 Add failing spec for remote static members 2016-08-22 17:07:17 -07:00
Kevin Sawicki
5cc61089d9 Add failing spec for remote function with properties 2016-08-22 17:07:17 -07:00
Kevin Sawicki
cce6be1900 Only prevent unload the first time it is attempted 2016-08-03 16:23:39 -07:00
Kevin Sawicki
60e60d86d1 Send coverage from chrome extension iframe 2016-08-03 16:23:39 -07:00
gellert
439ad94afe Merge remote-tracking branch 'upstream/master' into speedup-gpu 2016-08-01 12:00:34 +02:00
gellert
35ee99265e adds tests for osr 2016-07-31 17:10:53 +02:00
Cheng Zhao
57dbf284c1 spec: shell.writeShortcutLink/readShortcutLink 2016-07-27 19:43:11 +09:00
Cheng Zhao
eb51e080e5 spec: TypeArray should work in remote 2016-07-25 16:30:40 +09:00
Kevin Sawicki
ab1786c17d Add spec for circular array/object references 2016-07-11 09:52:50 -07:00
Kevin Sawicki
2e02994277 Add parens about constructor 2016-07-06 15:45:35 -07:00
Kevin Sawicki
56739e10e3 Add anonymous class to exports and assert it 2016-07-06 13:11:25 -07:00
Kevin Sawicki
d67dfd09fd Pass through empty constructor names 2016-07-06 09:18:20 -07:00
Kevin Sawicki
a1209b69b3 Add spec for constructor-less param 2016-07-06 09:11:04 -07:00
Kevin Sawicki
197ec98800 Remove standard linter warnings 2016-06-29 09:46:16 -07:00
Kevin Sawicki
2fe83bc5f0 Add failing spec for no specified storage keys 2016-06-28 13:01:51 -07:00
Kevin Sawicki
14df90fd19 Add spec for valid .ico file 2016-06-28 12:17:05 -07:00
Cheng Zhao
3d2ad0080d Merge pull request #6164 from MaxWhere/master
beginFrameSubscription bugfix and improvement
2016-06-26 02:39:59 +00:00
Heilig Benedek
5118def724 damaged -> dirty rename, fixed misc issues, changed signature, updated docs and added tests 2016-06-25 18:23:40 +02:00
Kevin Sawicki
8a9f2261d0 Add default error handler to remote promises (#6151)
* Add failing spec for unhandled main process exception

* Remove unused return

* Use let/const instead of var

* Add spec for unhandled rejection in renderer process

* Prevent unhandled rejection defaul

* Use once instead of on

* Add default fulfilled/rejection handler to promise
2016-06-21 00:54:15 +00:00
Jessica Lord
c68ca16148 Merge pull request #5974 from electron/chrome-storage-sync
Add chrome.storage.sync and chrome.storage.get APIs
2016-06-10 12:20:03 -07:00
Cheng Zhao
21081549fd Merge pull request #5967 from electron/window-opener-webview
Support window.opener from windows opened from a <webview>
2016-06-10 11:52:37 +00:00
Cheng Zhao
ccaf837da4 Merge pull request #5964 from electron/manifest-errors
Throw errors reading/parsing manifest.json files
2016-06-10 03:28:57 +00:00
Jessica Lord
f121f46a24 Merge branch 'master' into chrome-storage-sync 2016-06-09 16:35:00 -07:00
Jessica Lord
d6d4d51173 Fix spec case 2016-06-09 16:26:25 -07:00
Jessica Lord
d6b108b272 Add spec 2016-06-09 14:14:20 -07:00
Jessica Lord
0ed10658a3 Add spec 2016-06-09 13:57:51 -07:00
Kevin Sawicki
a184b6afb3 Add spec for window.open from <webview> 2016-06-09 12:02:01 -07:00
Kevin Sawicki
d1ac5dd29b Add specs for manifest.json read/parse error 2016-06-09 09:44:49 -07:00
Kevin Sawicki
4f7bde38a9 Assert on tab id as well 2016-06-08 12:00:13 -07:00
Kevin Sawicki
19787544b5 Add failing spec for webview devtools extension 2016-06-08 12:00:12 -07:00
Kevin Sawicki
d6311daea3 Add failing spec for chrome.runtime.id 2016-06-06 14:41:55 -07:00
Cheng Zhao
707d68f719 spec: Add test case for app.relaunch 2016-06-03 12:12:20 +09:00
Cheng Zhao
4d8994df92 spec: child_process.fork shouble be able to pipe stdio 2016-05-31 11:05:58 +09:00
Cheng Zhao
9f0fc96025 Merge pull request #5711 from electron/extension-code-cleanup
Implement partial chrome.* API for devtools extension
2016-05-29 23:29:08 +00:00
Cheng Zhao
a58b84bbd7 spec: ipcRenderer.sendTo sends message to WebContents 2016-05-28 20:50:30 +09:00
Kevin Sawicki
fc4b224dec Add asserts for properties 2016-05-27 10:52:56 -07:00
Kevin Sawicki
7cf6be07a6 Add failing spec for remote property with no prototype 2016-05-27 10:45:39 -07:00
Kevin Sawicki
4e68a8d16e Remove logging in parent page 2016-05-25 09:12:52 -07:00
Kevin Sawicki
1e15ce6ccd Add failing spec for webview visiblity changes 2016-05-25 09:12:52 -07:00
Cheng Zhao
28e2058ff1 Merge pull request #5648 from electron/chrome51
Update to Chrome 51
2016-05-24 10:59:11 +00:00
Cheng Zhao
cd444e82f9 Merge pull request #5666 from electron/remote-promise-reject
Handle rejection of remote promises
2016-05-24 04:30:25 +00:00
Kevin Sawicki
4a41311409 Test that calling regular module succeeds 2016-05-23 15:14:55 -07:00
Kevin Sawicki
fe0ec67623 Add spec for electron module require 2016-05-23 15:14:55 -07:00
Kevin Sawicki
f3af1dbd54 Add failing spec for rejected remote promise 2016-05-23 15:06:46 -07:00
Cheng Zhao
fa0ce7ad5f Adjust to the new behaviors of beforeunload handler 2016-05-23 14:27:39 +09:00
Kevin Sawicki
b09c81202a Add test for webview zoomFactor inheritance 2016-05-19 14:46:52 -07:00
Cheng Zhao
242508e22f Merge pull request #5574 from electron/devtools-extension-test
Add test that loads a devtools extension
2016-05-18 01:46:44 +00:00
Kevin Sawicki
189380d4ea Add spec for devtools extension 2016-05-17 14:52:45 -07:00
Cheng Zhao
0140015500 spec: WebView is disabled when nodeIntegration is disabled 2016-05-17 17:04:13 +09:00
deepak1556
1ff33b7c81 protocol: fix registerStandardSchemes api 2016-05-08 01:36:34 +05:30
Kevin Sawicki
e4bd592e0e Add failing spec 2016-04-21 11:49:42 -07:00
deepak1556
2c0494dcef fix spec 2016-04-18 22:57:37 +05:30
deepak1556
2ddac9352f add spec 2016-04-18 21:53:44 +05:30
Cheng Zhao
bb70defcb8 spec: webview should work without script tag in page 2016-04-12 15:10:26 +09:00
Rob Brackett
c1b1348735 Add resourceType arg to webContents did-get-response-details event.
Fixes #5074 and follows @zcbenz's recommendation to expose ResourceTypeToString from atom_network_delegate publicly.
Also adds testing for other arguments to the `did-get-response-details` events, since there were no existing tests for them.
2016-04-08 11:19:36 -07:00
Rob Brackett
f12f87d6f0 Add isMainFrame as last argument to WebContents did-fail-load event.
Fixes #5013.
2016-04-04 19:26:06 -07:00
Kevin Sawicki
7734f6af62 Remove semicolons 2016-04-01 16:52:55 -07:00
Kevin Sawicki
909ed54bef Remove stray log 2016-04-01 16:52:28 -07:00
Kevin Sawicki
fd12e1f506 Add failing spec for webview nodeIntegration inheritance 2016-04-01 16:47:17 -07:00
Kevin Sawicki
9e66df23d0 Add clearer assertion of process being undefined 2016-04-01 16:40:33 -07:00
Kevin Sawicki
777704e659 Add failing spec for nodeIntegration inheritance 2016-04-01 16:39:06 -07:00
Zeke Sikelianos
7c58f7fb02 eradicate all per-file eslint globals 2016-03-30 17:00:34 -07:00
Zeke Sikelianos
9db733a4ff mostly more globals 2016-03-30 17:00:32 -07:00
Zeke Sikelianos
c4b6cf4a8e do more manual cleanup and specify globals 2016-03-30 17:00:32 -07:00
Zeke Sikelianos
f35f362272 autoformat more files 2016-03-30 17:00:31 -07:00
Kevin Sawicki
a9e22801e9 Add failing spec for reassigning remote function 2016-03-04 15:44:50 -08:00
Cheng Zhao
f610e332b3 spec: Tests for remote ES6 class 2016-02-22 12:35:51 +08:00
Cheng Zhao
61a9316f67 Merge pull request #4496 from cesine/update/deps
fix dependencies badge  which shows out of date
2016-02-16 22:18:51 +08:00
Cheng Zhao
7ca09de386 Merge remote-tracking branch 'origin/dont-write-empty-dev-tools-extensions-file' 2016-02-16 12:30:42 +08:00
cesine
2aff0c47d0 ⬆️ 👕 updated to eslint 2.1.0
Verified migration doc (nothing to be done)
http://eslint.org/docs/user-guide/migrating-to-2.0.0

And made sure the eslint tasks passed
2016-02-15 22:30:29 -05:00
Cheng Zhao
08e5c1f6fe Merge branch 'webcontent_invalid_loadurl_patch' of https://github.com/deepak1556/atom-shell into deepak1556-webcontent_invalid_loadurl_patch 2016-02-15 21:14:54 +08:00
Kevin Sawicki
5714ae0b73 Add failing spec for dev tools extensions file 2016-02-03 17:11:12 -08:00
Robo
f7556de9fb add spec for new permissions 2016-01-30 19:10:52 +05:30
Robo
f32bf08eb3 add spec 2016-01-29 15:23:28 +05:30
Cheng Zhao
60d44b3b04 spec: Remove annoying outputs from savePage test 2016-01-15 16:36:35 +08:00
Cheng Zhao
941232a76b Merge pull request #3975 from leethomas/add-webview-navigation-events
Add webview navigation events
2016-01-04 11:24:27 +08:00
leethomas
ce733e5927 add tests to insure window.location.hash changes & window.history.replaceState cause 'did-navigate-in-page' to fire 2016-01-01 18:51:47 -08:00
leethomas
26397d9155 add tests for will-navigate, did-navigate-to-different-page, did-navigate-in-page events in webview 2016-01-01 18:13:07 -08:00
leethomas
8857eb9cba add tests for webview devtools-* events 2016-01-01 04:49:29 -08:00
Robo
72374b6e31 remote: support arguments of type Date 2015-12-30 01:41:31 +05:30
Brian R. Bondy
29b00ae0d6 Add tests for did-change-theme-color event 2015-12-22 23:05:03 -05:00
Robo
d162180196 add api to webview 2015-12-21 17:13:23 +05:30
Cheng Zhao
c68e38f480 Merge pull request #3882 from deepak1556/chromium_spec_patch
spec: serviceWorker registration with file scheme
2015-12-21 18:39:18 +08:00
Robo
68733eb8df spec: serviceWorker registration with file scheme 2015-12-21 01:32:08 +05:30
Brian R. Bondy
fed0c43970 Add media play events to webview 2015-12-19 22:37:51 -05:00
Kevin Sawicki
aa9c7662a3 Inline JSON message response 2015-12-14 17:09:31 -08:00
Kevin Sawicki
b8de1bd9de Assert that source id matches opener 2015-12-14 17:02:36 -08:00
Kevin Sawicki
574eec3e74 Make window.opener a BrowserWindowProxy 2015-12-14 14:55:48 -08:00
Kevin Sawicki
2cb752e3de Add failing spec for event origin 2015-12-10 16:49:23 -08:00
Kevin Sawicki
f5774e3fb2 Exit from a setImmediate callback 2015-12-09 18:40:10 -08:00
Kevin Sawicki
516ff0644c Just include exit code in spec output 2015-12-09 18:24:24 -08:00
Kevin Sawicki
92433be888 Include exit code with quit event 2015-12-09 18:09:59 -08:00
Kevin Sawicki
aa82eddca8 Add spec for exit code on event 2015-12-09 14:40:53 -08:00
Jeff Wear
32e949efed Read window size properly in window.open test
`BrowserWindow#getSize` returns `[width, height]`, not `{width, height}`.
2015-12-02 11:50:44 -08:00
Cheng Zhao
6ef6a83042 spec: Test execFile and execFileSync 2015-11-27 21:38:43 +08:00
Cheng Zhao
fbb8e61958 Replace "Url" in API names with "URL" 2015-11-13 16:03:40 +08:00
Cheng Zhao
1d1f911b09 Use require('electron') in Electron's code 2015-11-12 20:29:30 +08:00
Cheng Zhao
6515a445a0 Use ipcRenderer in Electron's code 2015-11-10 15:29:43 +08:00
Haojian Wu
49d25d0069 Fix: savePage API saves external resources in a wrong directory. 2015-10-18 11:28:05 +08:00
Cheng Zhao
8e40947938 spec: Make window.open specs more reliable 2015-10-06 15:43:36 +08:00
Robo
5ca5c4fb92 browser: hide webcontents when window not shown 2015-09-24 10:30:18 +05:30
Cheng Zhao
4521db459b spec: window.open should inherit options of parent window 2015-09-22 22:36:46 +08:00
Cheng Zhao
f06f8ae73b spec: Add test for allowpopups attribute 2015-09-22 21:18:04 +08:00