@@ -13,7 +13,8 @@ var Flags = {
13
13
DEBUG_DEVTOOLS : '--debug-devtools' ,
14
14
DEBUG_DEVTOOLS_SHORTHAND : '-d' ,
15
15
FETCH_CONTENT_SHELL : '--fetch-content-shell' ,
16
- COMPAT_PROTOCOL : '--compat-protocol' ,
16
+ COMPAT_PROTOCOL : '--compat-protocol' , // backwards compatibility testing
17
+ CHROMIUM_PATH : '--chromium-path' // useful for bisecting
17
18
} ;
18
19
19
20
var COMPAT_URL_MAPPING = {
@@ -23,17 +24,18 @@ var COMPAT_URL_MAPPING = {
23
24
var IS_DEBUG_ENABLED =
24
25
utils . includes ( process . argv , Flags . DEBUG_DEVTOOLS ) || utils . includes ( process . argv , Flags . DEBUG_DEVTOOLS_SHORTHAND ) ;
25
26
var COMPAT_PROTOCOL = utils . parseArgs ( process . argv ) [ Flags . COMPAT_PROTOCOL ] ;
27
+ var CUSTOM_CHROMIUM_PATH = utils . parseArgs ( process . argv ) [ Flags . CHROMIUM_PATH ] ;
26
28
var IS_FETCH_CONTENT_SHELL = utils . includes ( process . argv , Flags . FETCH_CONTENT_SHELL ) ;
27
29
28
30
var CONTENT_SHELL_ZIP = 'content-shell.zip' ;
29
31
var MAX_CONTENT_SHELLS = 10 ;
30
32
var PLATFORM = getPlatform ( ) ;
31
33
var PYTHON = process . platform === 'win32' ? 'python.bat' : 'python' ;
32
34
33
- var CHROMIUM_SRC_PATH = path . resolve ( __dirname , '..' , '..' , '..' , '..' , '..' ) ;
35
+ var CHROMIUM_SRC_PATH = CUSTOM_CHROMIUM_PATH || path . resolve ( __dirname , '..' , '..' , '..' , '..' , '..' ) ;
34
36
var RELEASE_PATH = path . resolve ( CHROMIUM_SRC_PATH , 'out' , 'Release' ) ;
35
37
var BLINK_TEST_PATH = path . resolve ( CHROMIUM_SRC_PATH , 'blink' , 'tools' , 'run_layout_tests.py' ) ;
36
- var DEVTOOLS_PATH = path . resolve ( __dirname , '.. ' ) ;
38
+ var DEVTOOLS_PATH = path . resolve ( CHROMIUM_SRC_PATH , 'third_party' , 'WebKit' , 'Source' , 'devtools ') ;
37
39
var CACHE_PATH = path . resolve ( DEVTOOLS_PATH , '.test_cache' ) ;
38
40
var SOURCE_PATH = path . resolve ( DEVTOOLS_PATH , 'front_end' ) ;
39
41
@@ -67,6 +69,7 @@ main();
67
69
68
70
function runCompatibilityTests ( ) {
69
71
const folder = `compat-protocol-${ COMPAT_PROTOCOL } ` ;
72
+ utils . removeRecursive ( path . resolve ( RELEASE_PATH , 'resources' , 'inspector' ) ) ;
70
73
compileFrontend ( ) ;
71
74
var outPath = path . resolve ( CACHE_PATH , folder , 'out' ) ;
72
75
var contentShellDirPath = path . resolve ( outPath , 'Release' ) ;
@@ -87,7 +90,7 @@ function runCompatibilityTests() {
87
90
function compileFrontend ( ) {
88
91
console . log ( 'Compiling devtools frontend' ) ;
89
92
try {
90
- shell ( `ninja -C ${ RELEASE_PATH } devtools_frontend_resources` ) ;
93
+ shell ( `ninja -C ${ RELEASE_PATH } devtools_frontend_resources` , { cwd : CHROMIUM_SRC_PATH } ) ;
91
94
} catch ( err ) {
92
95
console . log ( err . stdout . toString ( ) ) ;
93
96
console . log ( 'ERROR: Cannot compile frontend\n' + err ) ;
@@ -271,9 +274,12 @@ function runTests(buildDirectoryPath, useDebugDevtools) {
271
274
console . log ( 'TIP: You can debug a test using: npm run debug-test inspector/test-name.html' ) ;
272
275
273
276
if ( COMPAT_PROTOCOL ) {
274
- let platform = `protocol-${ COMPAT_PROTOCOL } ` ;
275
- let compatBaselinePath = path . resolve ( DEVTOOLS_PATH , 'tests' , 'baseline' , platform ) ;
277
+ const platform = `protocol-${ COMPAT_PROTOCOL } ` ;
278
+ const testsPath = path . resolve ( DEVTOOLS_PATH , 'tests' ) ;
279
+ const compatBaselinePath = path . resolve ( testsPath , 'baseline' , platform ) ;
276
280
testArgs . push ( `--additional-platform-directory=${ compatBaselinePath } ` ) ;
281
+ const expectationsPath = path . resolve ( testsPath , 'TestExpectations' ) ;
282
+ testArgs . push ( `--additional-expectations=${ expectationsPath } ` ) ;
277
283
}
278
284
if ( IS_DEBUG_ENABLED ) {
279
285
testArgs . push ( '--additional-driver-flag=--remote-debugging-port=9222' ) ;
0 commit comments