aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuchen Pei <hi@ypei.me>2022-04-07 12:10:05 +1000
committerYuchen Pei <hi@ypei.me>2022-04-07 12:13:57 +1000
commit52398eafaf99ebbba7ff5a28b832830be394bf1d (patch)
tree30f4e99ab6a9d21add77c12e56b551e01a3a95ec
parent821b67f392a698ec4d55a986b88c127e8d179fcd (diff)
fixing compliance script.
- weblabels should work now
-rw-r--r--compliance.js55
1 files changed, 31 insertions, 24 deletions
diff --git a/compliance.js b/compliance.js
index 40041db..74c5510 100644
--- a/compliance.js
+++ b/compliance.js
@@ -36,31 +36,38 @@ var fs = require('fs');
const firefox = require('selenium-webdriver/firefox');
new webdriver.Builder().forBrowser('firefox')
.setFirefoxOptions(new firefox.Options()
- // Uncomment this line to test using icecat
-// .setBinary("/usr/bin/icecat")
- .headless())
+ // Uncomment to test using icecat or abrowser
+ // .setBinary("/usr/bin/icecat")
+ // .setBinary("/usr/bin/abrowser")
+ .headless()
+ )
.build()
.then(driver =>
driver.installAddon("./librejs.xpi", /*isTemporary=*/true)
- .then(driver.get("about:debugging#/runtime/this-firefox"))
- .then(_ => driver.findElements(webdriver.By.css('.fieldpair dd')))
- .then(es => es[2].getText())
- .then(uuid =>
- driver.get(process.argv[2])
- // Wait for the webpage to load
- .then(_ => driver.sleep(5000))
- .then(_ => driver.takeScreenshot())
- .then(s => fs.writeFile(
- "/tmp/screen.png", Buffer.from(s, 'base64'), "binary",
- err => err ? console.log(err) : console.log("Screenshot saved to /tmp/screen.png")))
- .then(_ => driver.executeScript("window.open('');"))
- .then(_ => driver.getAllWindowHandles())
- .then(handles => driver.switchTo().window(handles[1]))
- .then(_ => driver.get('moz-extension://'
- + uuid
- + '/html/display_panel/content/display-panel.html#fromTab=1'))
- .then(_ => driver.findElement(webdriver.By.css('div#info')))
- .then(e => e.getText())
- .then(console.log))
- .then(_ => driver.quit()));
+ .then(driver.get("about:debugging#/runtime/this-firefox"))
+ .then(_ => driver.findElements(webdriver.By.css('.fieldpair dd')))
+ .then(es => es[2].getText())
+ .then(uuid =>
+ driver.get(process.argv[2])
+ // Refreshing the page, otherwise weblabels may not work.
+ .then(_ => driver.get(process.argv[2]))
+ // Wait, even if the webpage appears loaded, without waiting
+ // the script may get stuck.
+ .then(_ => driver.sleep(5000))
+ .then(_ => driver.takeScreenshot())
+ .then(s => fs.writeFile(
+ "/tmp/screen.png", Buffer.from(s, 'base64'), "binary",
+ err => err ? console.log(err) : console.log("Screenshot saved to /tmp/screen.png")))
+ .then(_ => driver.executeScript("window.open('');"))
+ .then(_ => driver.getAllWindowHandles())
+ .then(handles => driver.switchTo().window(handles[1]))
+ .then(_ => driver.get('moz-extension://'
+ + uuid
+ + '/html/display_panel/content/display-panel.html#fromTab=1'))
+ .then(_ => driver.findElement(webdriver.By.css('div#info')))
+ .then(e => e.getText())
+ .then(console.log)
+ )
+ .then(_ => driver.quit())
+ );
})();