Browse Source

Update puppeteer

simov 7 years ago
parent
commit
45db1aca15
5 changed files with 86 additions and 26 deletions
  1. 1 1
      package.json
  2. 45 14
      test/advanced-csp.js
  3. 4 1
      test/advanced-origins.js
  4. 12 2
      test/index.js
  5. 24 8
      test/popup-options.js

+ 1 - 1
package.json

@@ -36,7 +36,7 @@
     "csso": "^3.4.0",
     "mocha": "^4.1.0",
     "node-sass": "^4.7.2",
-    "puppeteer": "^0.13.0",
+    "puppeteer": "^1.2.0",
     "rollup": "^0.53.4",
     "rollup-plugin-commonjs": "^8.2.6",
     "rollup-plugin-node-resolve": "^3.0.0",

+ 45 - 14
test/advanced-csp.js

@@ -10,7 +10,10 @@ module.exports = ({browser, extensions, popup, advanced, content}) => {
     await advanced.select('.m-select', 'http')
     await advanced.type('[type=text]', 'localhost:3000')
     await advanced.click('button')
-    await advanced.waitFor(() => document.querySelectorAll('.m-list li').length === 2)
+
+    // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+    // await advanced.waitFor(() => document.querySelectorAll('.m-list li').length === 2)
+    await advanced.waitFor(200)
 
     // disable csp
     if (await advanced.evaluate(() => state.csp)) {
@@ -37,8 +40,11 @@ module.exports = ({browser, extensions, popup, advanced, content}) => {
         await advanced.click('.m-switch:nth-of-type(2)')
       }
       await advanced.reload()
-      await advanced.waitFor('#options')
-      await advanced.waitFor(100)
+
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await advanced.waitFor('#options')
+      // await advanced.waitFor(100)
+      await advanced.waitFor(200)
 
       t.strictEqual(
         await advanced.evaluate(() =>
@@ -54,8 +60,10 @@ module.exports = ({browser, extensions, popup, advanced, content}) => {
         await advanced.click('.m-switch:nth-of-type(2)')
       }
       await advanced.reload()
-      await advanced.waitFor('#options')
-      await advanced.waitFor(100)
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await advanced.waitFor('#options')
+      // await advanced.waitFor(100)
+      await advanced.waitFor(200)
 
       t.strictEqual(
         await advanced.evaluate(() =>
@@ -79,7 +87,9 @@ module.exports = ({browser, extensions, popup, advanced, content}) => {
       // go to page serving content with strict csp
       await content.goto('http://localhost:3000/csp-wrong-path')
       await content.bringToFront()
-      await content.waitFor('pre')
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await content.waitFor('pre')
+      await advanced.waitFor(200)
 
       t.strictEqual(
         await content.evaluate(() => {
@@ -130,7 +140,10 @@ module.exports = ({browser, extensions, popup, advanced, content}) => {
       // go to page serving content with strict csp
       await content.goto('http://localhost:3000/csp-match-path')
       await content.bringToFront()
-      await content.waitFor('#_html')
+
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await content.waitFor('#_html')
+      await advanced.waitFor(200)
 
       t.strictEqual(
         await content.evaluate(() => {
@@ -156,25 +169,43 @@ module.exports = ({browser, extensions, popup, advanced, content}) => {
       }
 
       await extensions.bringToFront()
+
       // enable developer mode
-      await extensions.click('#dev-toggle label')
+      await extensions.evaluate(() => {
+        Array.from(
+          document.querySelector('extensions-manager').shadowRoot
+            .querySelector('extensions-item-list').shadowRoot
+            .querySelectorAll('extensions-item'))[0].shadowRoot
+            .querySelector('#enable-toggle').click()
+      })
       // disable the extension
-      await extensions.click('.enable-checkbox label')
-      // enable the extension
-      await extensions.click('.enable-checkbox label')
+      await extensions.evaluate(() => {
+        Array.from(
+          document.querySelector('extensions-manager').shadowRoot
+            .querySelector('extensions-item-list').shadowRoot
+            .querySelectorAll('extensions-item'))[0].shadowRoot
+            .querySelector('#enable-toggle').click()
+      })
       // check
       t.equal(
         await extensions.evaluate(() =>
-          document.querySelector('.active-views a').innerText
+          Array.from(
+            document.querySelector('extensions-manager').shadowRoot
+              .querySelector('extensions-item-list').shadowRoot
+              .querySelectorAll('extensions-item'))[0].shadowRoot
+              .querySelector('#inspect-views a').innerText
         ),
         'background page (Inactive)',
-        'background page should be disabled'
+        'background page should be inactive'
       )
 
       // go to page serving content with strict csp
       await content.goto('http://localhost:3000/csp-match-path')
       await content.bringToFront()
-      await content.waitFor('#_html')
+
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await content.waitFor('#_html')
+      await content.waitFor(200)
 
       t.strictEqual(
         await content.evaluate(() =>

+ 4 - 1
test/advanced-origins.js

@@ -10,7 +10,10 @@ module.exports = ({browser, advanced, content}) => {
     await advanced.select('.m-select', 'http')
     await advanced.type('[type=text]', 'localhost:3000')
     await advanced.click('button')
-    await advanced.waitFor(() => document.querySelectorAll('.m-list li').length === 2)
+
+    // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+    // await advanced.waitFor(() => document.querySelectorAll('.m-list li').length === 2)
+    await advanced.waitFor(200)
   })
 
   describe('add origin', () => {

+ 12 - 2
test/index.js

@@ -29,9 +29,19 @@ describe('markdown-viewer', () => {
 
     var extensions = await browser.newPage()
     await extensions.goto('chrome://extensions')
-    await extensions.waitForSelector('.extension-id')
+    // enable developer mode
+    await extensions.evaluate(() => {
+      document.querySelector('extensions-manager').shadowRoot
+        .querySelector('extensions-toolbar').shadowRoot
+        .querySelector('cr-toggle').click()
+    })
+    // get extension id
     var id = await extensions.evaluate(() =>
-      document.querySelector('.extension-id').innerText.trim()
+      Array.from(
+        document.querySelector('extensions-manager').shadowRoot
+          .querySelector('extensions-item-list').shadowRoot
+          .querySelectorAll('extensions-item')
+      )[0].id
     )
 
     var popup = await browser.newPage()

+ 24 - 8
test/popup-options.js

@@ -10,7 +10,8 @@ module.exports = ({browser, popup, advanced, content}) => {
     await advanced.select('.m-select', 'http')
     await advanced.type('[type=text]', 'localhost:3000')
     await advanced.click('button')
-    await advanced.waitFor(() => document.querySelectorAll('.m-list li').length === 2)
+    // await advanced.waitFor(() => document.querySelectorAll('.m-list li').length === 2)
+    await advanced.waitFor(200)
 
     // enable header detection
     if (!await advanced.evaluate(() => state.header)) {
@@ -143,7 +144,10 @@ module.exports = ({browser, popup, advanced, content}) => {
       // reload popup
       await popup.bringToFront()
       await popup.reload()
-      await popup.waitFor('#popup')
+
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await popup.waitFor('#popup')
+      await popup.waitFor(200)
 
       t.equal(
         await popup.evaluate(() =>
@@ -211,7 +215,10 @@ module.exports = ({browser, popup, advanced, content}) => {
       // reload popup
       await popup.bringToFront()
       await popup.reload()
-      await popup.waitFor('#popup')
+
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await popup.waitFor('#popup')
+      await popup.waitFor(200)
 
       t.equal(
         await popup.evaluate(() =>
@@ -301,7 +308,10 @@ module.exports = ({browser, popup, advanced, content}) => {
       // redraw popup
       await popup.bringToFront()
       await popup.reload()
-      await popup.waitFor('#popup')
+
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await popup.waitFor('#popup')
+      await popup.waitFor(200)
 
       // disable gfm
       await content.bringToFront()
@@ -309,7 +319,9 @@ module.exports = ({browser, popup, advanced, content}) => {
       await popup.click('.m-panel:nth-of-type(2) .m-switch:nth-of-type(4)')
       // content auto reloads
       await content.waitFor(100)
-      await content.waitFor('#_html')
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await content.waitFor('#_html')
+      await content.waitFor(200)
 
       t.equal(
         await content.evaluate(() =>
@@ -324,7 +336,11 @@ module.exports = ({browser, popup, advanced, content}) => {
       // reload popup
       await popup.bringToFront()
       await popup.reload()
-      await popup.waitFor('#popup')
+
+      // TODO: wait for https://github.com/GoogleChrome/puppeteer/pull/2289
+      // await popup.waitFor('#popup')
+      await popup.waitFor(200)
+
       await popup.waitFor(100)
 
       t.equal(
@@ -482,7 +498,7 @@ module.exports = ({browser, popup, advanced, content}) => {
 
       t.strictEqual(
         await content.evaluate(() =>
-          document.querySelector('body').scrollTop + 2
+          document.querySelector('body').scrollTop + 1
         ),
         await content.evaluate(() =>
           document.querySelector('h2').offsetTop
@@ -498,7 +514,7 @@ module.exports = ({browser, popup, advanced, content}) => {
 
       t.strictEqual(
         await content.evaluate(() =>
-          document.querySelector('body').scrollTop + 2
+          document.querySelector('body').scrollTop + 1
         ),
         await content.evaluate(() =>
           document.querySelector('h2').offsetTop + 200