Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Delta Between Two Patch Sets: test_runner.js

Issue 29874649: Issue 6822 - Report browser test errors (Closed) Base URL: https://hg.adblockplus.org/adblockpluscore/
Left Patch Set: Properly ensure webdriver quit Created Sept. 19, 2018, 11:53 p.m.
Right Patch Set: throw instead of Promise.reject() Created Sept. 21, 2018, 3:39 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « test/runners/webdriver.js ('k') | no next file » | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
1 /* 1 /*
2 * This file is part of Adblock Plus <https://adblockplus.org/>, 2 * This file is part of Adblock Plus <https://adblockplus.org/>,
3 * Copyright (C) 2006-present eyeo GmbH 3 * Copyright (C) 2006-present eyeo GmbH
4 * 4 *
5 * Adblock Plus is free software: you can redistribute it and/or modify 5 * Adblock Plus is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 3 as 6 * it under the terms of the GNU General Public License version 3 as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
8 * 8 *
9 * Adblock Plus is distributed in the hope that it will be useful, 9 * Adblock Plus is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 use: ["script-loader"] 138 use: ["script-loader"]
139 }] 139 }]
140 }, 140 },
141 resolve: { 141 resolve: {
142 alias: { 142 alias: {
143 nodeunit$: nodeunitPath 143 nodeunit$: nodeunitPath
144 }, 144 },
145 modules: [path.resolve(__dirname, "lib")] 145 modules: [path.resolve(__dirname, "lib")]
146 } 146 }
147 }).then(bundle => 147 }).then(bundle =>
148 Promise.all(processes.map(currentProcess => 148 Promise.all(
149 processes.map(currentProcess =>
149 runnerDefinitions[currentProcess]( 150 runnerDefinitions[currentProcess](
150 bundle, bundleFilename, 151 bundle, bundleFilename,
151 browserFiles.map( 152 browserFiles.map(
152 file => path.relative(path.join(__dirname, "test", "browser"), 153 file => path.relative(path.join(__dirname, "test", "browser"),
153 file).replace(/\.js$/, "") 154 file).replace(/\.js$/, "")
154 ) 155 )
155 ) 156 )
156 // We need to convert rejected promise to a resolved one 157 // We need to convert rejected promise to a resolved one
157 // or the test will not let close the webdriver. 158 // or the test will not let close the webdriver.
158 .catch(e => e) 159 .catch(e => e)
159 )).then(results => 160 )).then(results =>
160 { 161 {
161 let errors = results.filter(e => typeof e != "undefined"); 162 let errors = results.filter(e => typeof e != "undefined");
162 if (errors.length) 163 if (errors.length)
163 return Promise.reject(`Unit test failed: ${errors.join(", ")}`); 164 throw `Browser unit test failed: ${errors.join(", ")}`;
164 }) 165 })
165 ); 166 );
166 } 167 }
167 168
168 if (process.argv.length > 2) 169 if (process.argv.length > 2)
169 addTestPaths(process.argv.slice(2), true); 170 addTestPaths(process.argv.slice(2), true);
170 else 171 else
171 { 172 {
172 addTestPaths( 173 addTestPaths(
173 [path.join(__dirname, "test"), path.join(__dirname, "test", "browser")], 174 [path.join(__dirname, "test"), path.join(__dirname, "test", "browser")],
174 true 175 true
175 ); 176 );
176 } 177 }
177 178
178 runBrowserTests(runnerProcesses).then(() => 179 runBrowserTests(runnerProcesses).then(() =>
179 { 180 {
180 if (unitFiles.length) 181 if (unitFiles.length)
181 nodeunit.reporters.default.run(unitFiles); 182 nodeunit.reporters.default.run(unitFiles);
182 }).catch(error => 183 }).catch(error =>
183 { 184 {
184 if (!error) 185 console.error(error);
185 console.error("Failed running browser tests");
186 else
187 console.error(error);
188 process.exit(1); 186 process.exit(1);
189 }); 187 });
LEFTRIGHT

Powered by Google App Engine
This is Rietveld