소스 검색

added error handler

Gildas 7 년 전
부모
커밋
dca7c04893
1개의 변경된 파일9개의 추가작업 그리고 2개의 파일을 삭제
  1. 9 2
      cli/back-ends/webdriver.js

+ 9 - 2
cli/back-ends/webdriver.js

@@ -89,7 +89,12 @@ exports.getPageData = async options => {
 			driver.executeScript(scripts);
 		}));
 		await driver.switchTo().window(mainWindowHandle);
-		return await driver.executeAsyncScript(getPageDataScript(), options);
+		const result = await driver.executeAsyncScript(getPageDataScript(), options);
+		if (result.error) {
+			throw result.error;
+		} else {
+			return result.pageData;
+		}
 	} finally {
 		if (driver) {
 			driver.quit();
@@ -100,7 +105,9 @@ exports.getPageData = async options => {
 function getPageDataScript() {
 	return `
 	const [options, callback] = arguments;
-	getPageData().then(pageData => callback(pageData))
+	getPageData()
+		.then(pageData => callback({ pageData }))
+		.catch(error => callback({ error: error.toString() }));
 
 	async function getPageData() {
 		options.insertSingleFileComment = true;