Ignore native module tests on Windows debug build
This resolves #2558. There are no more errors when running test.py on the debug build in Windows. When running the release build the tests will be executed as usual.
This commit is contained in:
parent
b7d80e792d
commit
5337d8c23f
4 changed files with 40 additions and 22 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -17,3 +17,4 @@ node_modules/
|
||||||
*.pyc
|
*.pyc
|
||||||
debug.log
|
debug.log
|
||||||
npm-debug.log
|
npm-debug.log
|
||||||
|
atom/common/chrome_version.h
|
||||||
|
|
|
@ -82,6 +82,15 @@ Test functionality using:
|
||||||
python script\test.py
|
python script\test.py
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Tests that include native modules (e.g. `runas`) can't be executed with the
|
||||||
|
debug build (see #2558 for details), but they will work with the release build.
|
||||||
|
|
||||||
|
To run the tests with the release build use:
|
||||||
|
|
||||||
|
```powershell
|
||||||
|
python script\test.py -R
|
||||||
|
```
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
### Command xxxx not found
|
### Command xxxx not found
|
||||||
|
|
|
@ -7,16 +7,20 @@ describe 'third-party module', ->
|
||||||
fixtures = path.join __dirname, 'fixtures'
|
fixtures = path.join __dirname, 'fixtures'
|
||||||
temp.track()
|
temp.track()
|
||||||
|
|
||||||
describe 'runas', ->
|
# If the test is executed with the debug build on Windows, we will skip it
|
||||||
it 'can be required in renderer', ->
|
# because native modules don't work with the debug build (see issue #2558).
|
||||||
require 'runas'
|
if process.platform isnt 'win32' or
|
||||||
|
process.execPath.toLowerCase().indexOf('\\out\\d\\') is -1
|
||||||
|
describe 'runas', ->
|
||||||
|
it 'can be required in renderer', ->
|
||||||
|
require 'runas'
|
||||||
|
|
||||||
it 'can be required in node binary', (done) ->
|
it 'can be required in node binary', (done) ->
|
||||||
runas = path.join fixtures, 'module', 'runas.js'
|
runas = path.join fixtures, 'module', 'runas.js'
|
||||||
child = require('child_process').fork runas
|
child = require('child_process').fork runas
|
||||||
child.on 'message', (msg) ->
|
child.on 'message', (msg) ->
|
||||||
assert.equal msg, 'ok'
|
assert.equal msg, 'ok'
|
||||||
done()
|
done()
|
||||||
|
|
||||||
describe 'q', ->
|
describe 'q', ->
|
||||||
Q = require 'q'
|
Q = require 'q'
|
||||||
|
|
|
@ -48,18 +48,22 @@ describe '<webview> tag', ->
|
||||||
webview.src = "file://#{fixtures}/pages/d.html"
|
webview.src = "file://#{fixtures}/pages/d.html"
|
||||||
document.body.appendChild webview
|
document.body.appendChild webview
|
||||||
|
|
||||||
it 'loads native modules when navigation happens', (done) ->
|
# If the test is executed with the debug build on Windows, we will skip it
|
||||||
listener = (e) ->
|
# because native modules don't work with the debug build (see issue #2558).
|
||||||
webview.removeEventListener 'did-finish-load', listener
|
if process.platform isnt 'win32' or
|
||||||
listener2 = (e) ->
|
process.execPath.toLowerCase().indexOf('\\out\\d\\') is -1
|
||||||
assert.equal e.message, 'function'
|
it 'loads native modules when navigation happens', (done) ->
|
||||||
done()
|
listener = (e) ->
|
||||||
webview.addEventListener 'console-message', listener2
|
webview.removeEventListener 'did-finish-load', listener
|
||||||
webview.reload()
|
listener2 = (e) ->
|
||||||
webview.addEventListener 'did-finish-load', listener
|
assert.equal e.message, 'function'
|
||||||
webview.setAttribute 'nodeintegration', 'on'
|
done()
|
||||||
webview.src = "file://#{fixtures}/pages/native-module.html"
|
webview.addEventListener 'console-message', listener2
|
||||||
document.body.appendChild webview
|
webview.reload()
|
||||||
|
webview.addEventListener 'did-finish-load', listener
|
||||||
|
webview.setAttribute 'nodeintegration', 'on'
|
||||||
|
webview.src = "file://#{fixtures}/pages/native-module.html"
|
||||||
|
document.body.appendChild webview
|
||||||
|
|
||||||
describe 'preload attribute', ->
|
describe 'preload attribute', ->
|
||||||
it 'loads the script before other scripts in window', (done) ->
|
it 'loads the script before other scripts in window', (done) ->
|
||||||
|
|
Loading…
Reference in a new issue