diff options
| author | Yuchen Pei <hi@ypei.me> | 2022-04-07 12:10:05 +1000 | 
|---|---|---|
| committer | Yuchen Pei <hi@ypei.me> | 2022-04-07 12:13:57 +1000 | 
| commit | 52398eafaf99ebbba7ff5a28b832830be394bf1d (patch) | |
| tree | 30f4e99ab6a9d21add77c12e56b551e01a3a95ec | |
| parent | 821b67f392a698ec4d55a986b88c127e8d179fcd (diff) | |
fixing compliance script.
- weblabels should work now
| -rw-r--r-- | compliance.js | 55 | 
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()) +    );  })();  | 
