isomorfeus-puppetmaster 0.5.1 → 0.5.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (316) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +12 -17
  3. data/lib/isomorfeus/puppetmaster/driver/puppeteer.rb +32 -20
  4. data/lib/isomorfeus/puppetmaster/driver/puppeteer_document.rb +30 -30
  5. data/lib/isomorfeus/puppetmaster/driver/puppeteer_node.rb +4 -4
  6. data/lib/isomorfeus/puppetmaster/node.rb +3 -3
  7. data/lib/isomorfeus/puppetmaster/server.rb +1 -1
  8. data/lib/isomorfeus/puppetmaster/version.rb +1 -1
  9. data/lib/isomorfeus/puppetmaster.rb +2 -2
  10. data/lib/isomorfeus-puppetmaster.rb +5 -2
  11. data/node_modules/.package-lock.json +56 -45
  12. data/node_modules/debug/package.json +1 -1
  13. data/node_modules/debug/src/common.js +14 -1
  14. data/node_modules/{mkdirp → mkdirp-classic}/LICENSE +2 -2
  15. data/node_modules/mkdirp-classic/README.md +18 -0
  16. data/node_modules/{mkdirp → mkdirp-classic}/index.js +2 -3
  17. data/node_modules/mkdirp-classic/package.json +18 -0
  18. data/node_modules/node-fetch/lib/index.es.js +25 -3
  19. data/node_modules/node-fetch/lib/index.js +25 -3
  20. data/node_modules/node-fetch/lib/index.mjs +25 -3
  21. data/node_modules/node-fetch/package.json +8 -6
  22. data/node_modules/progress/lib/node-progress.js +4 -3
  23. data/node_modules/progress/package.json +1 -1
  24. data/node_modules/puppeteer-core/CHANGELOG.md +64 -0
  25. data/node_modules/puppeteer-core/README.md +13 -15
  26. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts.map +1 -1
  27. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/AriaQueryHandler.js +5 -5
  28. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/AriaQueryHandler.js.map +1 -1
  29. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.d.ts +20 -2
  30. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.d.ts.map +1 -1
  31. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.js +20 -7
  32. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.js.map +1 -1
  33. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserConnector.js +2 -2
  34. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserConnector.js.map +1 -1
  35. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.d.ts +8 -2
  36. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.d.ts.map +1 -1
  37. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.js +26 -8
  38. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.js.map +1 -1
  39. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Coverage.d.ts +18 -2
  40. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Coverage.d.ts.map +1 -1
  41. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Coverage.js +16 -9
  42. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Coverage.js.map +1 -1
  43. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.d.ts +4 -1
  44. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.d.ts.map +1 -1
  45. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.js +26 -18
  46. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.js.map +1 -1
  47. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts.map +1 -1
  48. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DeviceDescriptors.js +120 -0
  49. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DeviceDescriptors.js.map +1 -1
  50. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Dialog.js +2 -2
  51. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Dialog.js.map +1 -1
  52. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.d.ts +10 -1
  53. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.d.ts.map +1 -1
  54. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.js +9 -1
  55. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.js.map +1 -1
  56. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EvalTypes.d.ts +1 -1
  57. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EvalTypes.d.ts.map +1 -1
  58. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EventEmitter.js +1 -1
  59. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EventEmitter.js.map +1 -1
  60. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ExecutionContext.js +8 -8
  61. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ExecutionContext.js.map +1 -1
  62. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FileChooser.js +2 -2
  63. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FileChooser.js.map +1 -1
  64. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.d.ts +21 -9
  65. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.d.ts.map +1 -1
  66. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.js +157 -74
  67. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.js.map +1 -1
  68. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.d.ts +5 -0
  69. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  70. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.js +32 -29
  71. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.js.map +1 -1
  72. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.d.ts.map +1 -1
  73. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.js +14 -4
  74. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.js.map +1 -1
  75. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.d.ts +2 -3
  76. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.d.ts.map +1 -1
  77. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.js +3 -4
  78. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.js.map +1 -1
  79. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.d.ts +27 -5
  80. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.d.ts.map +1 -1
  81. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.js +46 -21
  82. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.js.map +1 -1
  83. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js +1 -1
  84. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js.map +1 -1
  85. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.d.ts +1 -0
  86. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.d.ts.map +1 -1
  87. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.js +7 -5
  88. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.js.map +1 -1
  89. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PDFOptions.d.ts +5 -0
  90. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PDFOptions.d.ts.map +1 -1
  91. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PDFOptions.js.map +1 -1
  92. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.d.ts +51 -6
  93. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.d.ts.map +1 -1
  94. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.js +157 -50
  95. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.js.map +1 -1
  96. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Puppeteer.js +5 -5
  97. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Puppeteer.js.map +1 -1
  98. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.d.ts +3 -1
  99. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.d.ts.map +1 -1
  100. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.js +3 -2
  101. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.js.map +1 -1
  102. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.d.ts +21 -0
  103. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.d.ts.map +1 -0
  104. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.js +30 -0
  105. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.js.map +1 -0
  106. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Tracing.d.ts.map +1 -1
  107. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Tracing.js +9 -3
  108. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Tracing.js.map +1 -1
  109. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/assert.d.ts +1 -0
  110. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/assert.d.ts.map +1 -1
  111. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/assert.js +6 -1
  112. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/assert.js.map +1 -1
  113. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/helper.js +5 -5
  114. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/helper.js.map +1 -1
  115. data/node_modules/puppeteer-core/lib/cjs/puppeteer/global.d.ts +17 -0
  116. data/node_modules/puppeteer-core/lib/cjs/puppeteer/global.d.ts.map +1 -0
  117. data/node_modules/puppeteer-core/lib/cjs/puppeteer/global.js +3 -0
  118. data/node_modules/puppeteer-core/lib/cjs/puppeteer/global.js.map +1 -0
  119. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserFetcher.d.ts.map +1 -1
  120. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserFetcher.js +20 -21
  121. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserFetcher.js.map +1 -1
  122. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map +1 -1
  123. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.js +11 -5
  124. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.js.map +1 -1
  125. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/LaunchOptions.d.ts +6 -2
  126. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map +1 -1
  127. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.d.ts.map +1 -1
  128. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.js +30 -15
  129. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.js.map +1 -1
  130. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts.map +1 -1
  131. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/NodeWebSocketTransport.js +7 -1
  132. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/NodeWebSocketTransport.js.map +1 -1
  133. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Puppeteer.js +1 -1
  134. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Puppeteer.js.map +1 -1
  135. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/install.d.ts.map +1 -1
  136. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/install.js +17 -3
  137. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/install.js.map +1 -1
  138. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node-puppeteer-core.js +1 -1
  139. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node-puppeteer-core.js.map +1 -1
  140. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node.js +1 -1
  141. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node.js.map +1 -1
  142. data/node_modules/puppeteer-core/lib/cjs/puppeteer/web.js +1 -1
  143. data/node_modules/puppeteer-core/lib/cjs/puppeteer/web.js.map +1 -1
  144. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/AriaQueryHandler.d.ts.map +1 -1
  145. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/AriaQueryHandler.js +5 -5
  146. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/AriaQueryHandler.js.map +1 -1
  147. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.d.ts +20 -2
  148. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.d.ts.map +1 -1
  149. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.js +16 -3
  150. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.js.map +1 -1
  151. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.d.ts +8 -2
  152. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.d.ts.map +1 -1
  153. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.js +23 -5
  154. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.js.map +1 -1
  155. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Coverage.d.ts +18 -2
  156. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Coverage.d.ts.map +1 -1
  157. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Coverage.js +10 -3
  158. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Coverage.js.map +1 -1
  159. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.d.ts +4 -1
  160. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.d.ts.map +1 -1
  161. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.js +16 -8
  162. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.js.map +1 -1
  163. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DeviceDescriptors.d.ts.map +1 -1
  164. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DeviceDescriptors.js +120 -0
  165. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DeviceDescriptors.js.map +1 -1
  166. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.d.ts +10 -1
  167. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.d.ts.map +1 -1
  168. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.js +7 -0
  169. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.js.map +1 -1
  170. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EvalTypes.d.ts +1 -1
  171. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EvalTypes.d.ts.map +1 -1
  172. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.d.ts +21 -9
  173. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.d.ts.map +1 -1
  174. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.js +152 -69
  175. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.js.map +1 -1
  176. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.d.ts +5 -0
  177. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  178. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.js +22 -19
  179. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.js.map +1 -1
  180. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.d.ts.map +1 -1
  181. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.js +14 -4
  182. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.js.map +1 -1
  183. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.d.ts +2 -3
  184. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.d.ts.map +1 -1
  185. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.js +2 -3
  186. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.js.map +1 -1
  187. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.d.ts +27 -5
  188. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.d.ts.map +1 -1
  189. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.js +35 -10
  190. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.js.map +1 -1
  191. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.d.ts +1 -0
  192. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.d.ts.map +1 -1
  193. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.js +6 -4
  194. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.js.map +1 -1
  195. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PDFOptions.d.ts +5 -0
  196. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PDFOptions.d.ts.map +1 -1
  197. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PDFOptions.js.map +1 -1
  198. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.d.ts +51 -6
  199. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.d.ts.map +1 -1
  200. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.js +136 -29
  201. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.js.map +1 -1
  202. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.d.ts +3 -1
  203. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.d.ts.map +1 -1
  204. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.js +3 -2
  205. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.js.map +1 -1
  206. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.d.ts +21 -0
  207. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.d.ts.map +1 -0
  208. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.js +26 -0
  209. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.js.map +1 -0
  210. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Tracing.d.ts.map +1 -1
  211. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Tracing.js +8 -2
  212. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Tracing.js.map +1 -1
  213. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/assert.d.ts +1 -0
  214. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/assert.d.ts.map +1 -1
  215. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/assert.js +4 -0
  216. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/assert.js.map +1 -1
  217. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/helper.js +1 -1
  218. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/helper.js.map +1 -1
  219. data/node_modules/puppeteer-core/lib/esm/puppeteer/global.d.ts +17 -0
  220. data/node_modules/puppeteer-core/lib/esm/puppeteer/global.d.ts.map +1 -0
  221. data/node_modules/puppeteer-core/lib/esm/puppeteer/global.js +2 -0
  222. data/node_modules/puppeteer-core/lib/esm/puppeteer/global.js.map +1 -0
  223. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserFetcher.d.ts.map +1 -1
  224. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserFetcher.js +9 -10
  225. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserFetcher.js.map +1 -1
  226. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.d.ts.map +1 -1
  227. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.js +7 -1
  228. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.js.map +1 -1
  229. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/LaunchOptions.d.ts +6 -2
  230. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/LaunchOptions.d.ts.map +1 -1
  231. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.d.ts.map +1 -1
  232. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.js +27 -12
  233. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.js.map +1 -1
  234. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts.map +1 -1
  235. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/NodeWebSocketTransport.js +7 -1
  236. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/NodeWebSocketTransport.js.map +1 -1
  237. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/install.d.ts.map +1 -1
  238. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/install.js +17 -3
  239. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/install.js.map +1 -1
  240. data/node_modules/puppeteer-core/lib/types.d.ts +3898 -3710
  241. data/node_modules/puppeteer-core/package.json +35 -41
  242. data/node_modules/tar-fs/.travis.yml +2 -1
  243. data/node_modules/tar-fs/README.md +4 -2
  244. data/node_modules/tar-fs/index.js +11 -8
  245. data/node_modules/tar-fs/package.json +4 -4
  246. data/node_modules/tar-fs/test/index.js +1 -1
  247. data/node_modules/tr46/.npmignore +4 -0
  248. data/node_modules/tr46/index.js +193 -0
  249. data/node_modules/tr46/lib/.gitkeep +0 -0
  250. data/node_modules/tr46/lib/mappingTable.json +1 -0
  251. data/node_modules/tr46/package.json +31 -0
  252. data/node_modules/unbzip2-stream/README.md +1 -1
  253. data/node_modules/unbzip2-stream/dist/unbzip2-stream.min.js +1 -1
  254. data/node_modules/unbzip2-stream/index.js +3 -2
  255. data/node_modules/unbzip2-stream/lib/bzip2.js +4 -6
  256. data/node_modules/unbzip2-stream/package.json +1 -1
  257. data/node_modules/webidl-conversions/LICENSE.md +12 -0
  258. data/node_modules/webidl-conversions/README.md +53 -0
  259. data/node_modules/webidl-conversions/lib/index.js +189 -0
  260. data/node_modules/webidl-conversions/package.json +23 -0
  261. data/node_modules/whatwg-url/LICENSE.txt +21 -0
  262. data/node_modules/whatwg-url/README.md +67 -0
  263. data/node_modules/whatwg-url/lib/URL-impl.js +200 -0
  264. data/node_modules/whatwg-url/lib/URL.js +196 -0
  265. data/node_modules/whatwg-url/lib/public-api.js +11 -0
  266. data/node_modules/whatwg-url/lib/url-state-machine.js +1297 -0
  267. data/node_modules/whatwg-url/lib/utils.js +20 -0
  268. data/node_modules/whatwg-url/package.json +32 -0
  269. data/node_modules/ws/LICENSE +0 -2
  270. data/node_modules/ws/README.md +49 -52
  271. data/node_modules/ws/index.js +3 -0
  272. data/node_modules/ws/lib/buffer-util.js +3 -6
  273. data/node_modules/ws/lib/constants.js +3 -1
  274. data/node_modules/ws/lib/event-target.js +172 -90
  275. data/node_modules/ws/lib/extension.js +8 -28
  276. data/node_modules/ws/lib/permessage-deflate.js +10 -16
  277. data/node_modules/ws/lib/receiver.js +143 -38
  278. data/node_modules/ws/lib/sender.js +29 -12
  279. data/node_modules/ws/lib/stream.js +20 -5
  280. data/node_modules/ws/lib/subprotocol.js +62 -0
  281. data/node_modules/ws/lib/validation.js +28 -8
  282. data/node_modules/ws/lib/websocket-server.js +129 -62
  283. data/node_modules/ws/lib/websocket.js +311 -104
  284. data/node_modules/ws/package.json +10 -5
  285. data/node_modules/ws/wrapper.mjs +8 -0
  286. data/package.json +1 -1
  287. metadata +83 -61
  288. data/node_modules/.bin/mkdirp +0 -12
  289. data/node_modules/.bin/mkdirp.cmd +0 -17
  290. data/node_modules/.bin/mkdirp.ps1 +0 -28
  291. data/node_modules/minimist/.travis.yml +0 -8
  292. data/node_modules/minimist/LICENSE +0 -18
  293. data/node_modules/minimist/example/parse.js +0 -2
  294. data/node_modules/minimist/index.js +0 -245
  295. data/node_modules/minimist/package.json +0 -45
  296. data/node_modules/minimist/readme.markdown +0 -95
  297. data/node_modules/minimist/test/all_bool.js +0 -32
  298. data/node_modules/minimist/test/bool.js +0 -178
  299. data/node_modules/minimist/test/dash.js +0 -31
  300. data/node_modules/minimist/test/default_bool.js +0 -35
  301. data/node_modules/minimist/test/dotted.js +0 -22
  302. data/node_modules/minimist/test/kv_short.js +0 -16
  303. data/node_modules/minimist/test/long.js +0 -31
  304. data/node_modules/minimist/test/num.js +0 -36
  305. data/node_modules/minimist/test/parse.js +0 -197
  306. data/node_modules/minimist/test/parse_modified.js +0 -9
  307. data/node_modules/minimist/test/proto.js +0 -44
  308. data/node_modules/minimist/test/short.js +0 -67
  309. data/node_modules/minimist/test/stop_early.js +0 -15
  310. data/node_modules/minimist/test/unknown.js +0 -102
  311. data/node_modules/minimist/test/whitespace.js +0 -8
  312. data/node_modules/mkdirp/bin/cmd.js +0 -33
  313. data/node_modules/mkdirp/bin/usage.txt +0 -12
  314. data/node_modules/mkdirp/package.json +0 -34
  315. data/node_modules/mkdirp/readme.markdown +0 -100
  316. data/node_modules/node-fetch/CHANGELOG.md +0 -272
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 64b6ee2938a18c7a1c4ecfbfb021cdd9a64ea504cadd8408c474e4970725aad8
4
- data.tar.gz: 943d10b0067de804930c1a516c02d6066bd33dea9fd43c134d4870328ae760e1
3
+ metadata.gz: 3a4b1855e0c0b1039666aa3ae0c5b1e1a8b2bb0c8b424dc7bc81bcd446fa88e4
4
+ data.tar.gz: e932a68c21221b7b526496c3e16f7d1eec0f4342ad625228771de054e944d88e
5
5
  SHA512:
6
- metadata.gz: 3e22af9d2d68ca242eeb94129cb70c205e296d85fae0eea43edea8830d1950bcd834b11071ac92ef7f41655fe08f02dad00a8c768ddd71a5eaee98fe4299caeb
7
- data.tar.gz: 22e3a26aa8c6f14714e49e9949b0d853cee180bf7989242747a459d45301c6c6caf09209601e53a5e9f57037cec91db13c1a28016aab437694c07b6bf6ec1c55
6
+ metadata.gz: 725d868d6bffc3c3ee9e8e105c26804b96b34db21dab68373e72f5c2f22ca2ea59f7a3d013484fcaf7cc388bd4e5d67f9621c102ac2737e290365aca06e0d948
7
+ data.tar.gz: 89fdfe7e7605221e593056db787d0a2ae01d57c607ac0e4d1d3a3151334ba7bf8e6a2240f631a86bc6d321e8926ddefe1f8dee0bc2894ae9a46a1a15ba001983
data/README.md CHANGED
@@ -1,28 +1,23 @@
1
- # isomorfeus-puppetmaster
2
-
3
- A framework for acceptance tests or simply running tests in a headless browser.
4
- Comes with drivers for chrome headless.
1
+ <h1 align="center">
2
+ <img src="https://github.com/isomorfeus/isomorfeus-puppetmaster/blob/master/Logo.png?raw=true" align="center" width="234" height="453" />
3
+ <br/>
4
+ Isomorfeus Puppetmaster<br/>
5
+ </h1>
6
+ A framework for acceptance tests or simply running tests in a headless browser.
7
+ Comes with drivers for chromium headless.
5
8
  Allows for writing javascript browser tests in pure ruby.
6
9
 
7
10
  ### Community and Support
8
11
  At the [Isomorfeus Framework Project](http://isomorfeus.com)
9
12
 
10
- ## Running on:
11
- - [CircleCI](https://circleci.com): [![CircleCI](https://circleci.com/gh/isomorfeus/isomorfeus-puppetmaster/tree/master.svg?style=svg)](https://circleci.com/gh/isomorfeus/isomorfeus-puppetmaster/tree/master)
12
- - [SemaphoreCI 2.0](https://semaphoreci.com): (not yet available)
13
- - [TravisCI](https://travis-ci.org): [![Build Status](https://travis-ci.org/isomorfeus/isomorfeus-puppetmaster.svg?branch=master)](https://travis-ci.org/isomorfeus/isomorfeus-puppetmaster)
14
-
15
13
  ## Installation
16
14
 
17
15
  In Gemfile:
18
16
  `gem 'isomorfeus-puppetmaster'`, then `bundle install`
19
17
 
20
- Also requires the following npm modules with recommended versions:
21
-
22
- - [puppeteer 10.2.x](https://github.com/GoogleChrome/puppeteer#readme) - for the chrome driver
18
+ Comes included with:
23
19
 
24
- Simply install them in your projects root. Puppetmaster also depends on isomorfeus-speednode, which will be installed automatically.
25
- Speednode will pickup the node modules then from the projects root node_modules directory.
20
+ - [puppeteer-core](https://github.com/GoogleChrome/puppeteer#readme) - for the chromium driver
26
21
 
27
22
  ## Configuration
28
23
 
@@ -63,13 +58,13 @@ There are Browsers which may have windows or tabs, which translate to targets or
63
58
  In Puppetmaster, which is focusing on headless testing, the main "thing" is **just a document**. Its possible to open many documents at once, but what exactly a document is contained in,
64
59
  a window or tab or browser or target or whatever, is not of interest.
65
60
  A document consists of nodes. Simply working with just documents and nodes makes testing a lot simpler.
66
- ```
61
+ ```
67
62
  document
68
63
  |____head (is a node)
69
64
  | |
70
65
  | |___more nodes
71
66
  | |___...
72
- |
67
+ |
73
68
  |____body (is a node)
74
69
  |
75
70
  |___more nodes
@@ -132,7 +127,7 @@ TODO
132
127
  #### DOM changes by Javascript, Timing
133
128
 
134
129
  TODO
135
-
130
+
136
131
  ## Nodes
137
132
 
138
133
  ### Finding Nodes ...
@@ -252,12 +252,22 @@ module Isomorfeus
252
252
  def launch_line
253
253
  string_options = []
254
254
  options = @options.dup
255
- string_options << "ignoreHTTPSErrors: #{options.delete(:ignore_https_errors)}" if options.has_key?(:ignore_https_errors)
256
- string_options << "executablePath: '#{options.delete(:executable_path)}'" if options.has_key?(:executable_path)
255
+ string_options << "ignoreHTTPSErrors: #{options.delete(:ignore_https_errors)}" if options.key?(:ignore_https_errors)
256
+ if Gem::Platform.local.os == 'linux' && Gem::Platform.local.cpu.start_with?('arm')
257
+ chromium_path = if options.key?(:executable_path)
258
+ options.delete(:executable_path)
259
+ else
260
+ Isomorfeus::Speednode::NodeCommand.which(['chromium'])
261
+ end
262
+ raise "Chromium not found. Please install chromium manually." unless chromium_path
263
+ string_options << "executablePath: '#{chromium_path}'"
264
+ else
265
+ string_options << "executablePath: '#{options.delete(:executable_path)}'" if options.key?(:executable_path)
266
+ end
257
267
  options.each do |option, value|
258
268
  string_options << "#{option.to_s.camelize(:lower)}: #{value}"
259
269
  end
260
- string_options << "userDataDir: '#{Dir.mktmpdir}'" unless @options.has_key?(:user_data_dir)
270
+ string_options << "userDataDir: '#{Dir.mktmpdir}'" unless @options.key?(:user_data_dir)
261
271
  string_options << "defaultViewport: { width: #{@width}, height: #{@height} }"
262
272
  string_options << "pipe: true"
263
273
  # string_options << "args: ['--disable-popup-blocking']"
@@ -283,16 +293,16 @@ module Isomorfeus
283
293
  var LastErr = null;
284
294
  var LastExecutionFinished = false;
285
295
  var LastHandleId = 0;
286
-
296
+
287
297
  var AllPageHandles = {};
288
298
  var AllElementHandles = {};
289
-
299
+
290
300
  var CurrentBrowser = null;
291
301
  var ConsoleMessages = {};
292
-
302
+
293
303
  var ModalText = null;
294
304
  var ModalTextMatched = false;
295
-
305
+
296
306
  const EnsureBrowser = async function() {
297
307
  var revisions = await BrowserFetcher.localRevisions();
298
308
  if (!revisions.includes(default_revision)) {
@@ -306,48 +316,48 @@ module Isomorfeus
306
316
  if (LastExecutionFinished === true) {
307
317
  var err = LastErr;
308
318
  var res = LastResult;
309
-
319
+
310
320
  LastErr = null;
311
321
  LastRes = null;
312
322
  LastExecutionFinished = false;
313
-
323
+
314
324
  if (err) { return [null, {name: err.name, message: err.message, stack: err.stack}]; }
315
325
  else { return [res, null]; }
316
-
326
+
317
327
  } else {
318
328
  var new_err = new Error('Last command did not yet finish execution!');
319
329
  return [null, {name: new_err.name, message: new_err.message, stack: new_err.stack}];
320
330
  }
321
331
  };
322
-
332
+
323
333
  const DialogAcceptHandler = async (dialog) => {
324
334
  var msg = dialog.message()
325
335
  ModalTextMatched = (ModalText === msg);
326
336
  ModalText = msg;
327
337
  await dialog.accept();
328
338
  }
329
-
339
+
330
340
  const DialogDismissHandler = async (dialog) => {
331
341
  var msg = dialog.message()
332
342
  ModalTextMatched = (ModalText === msg);
333
343
  ModalText = msg;
334
344
  await dialog.dismiss();
335
345
  }
336
-
346
+
337
347
  const RegisterElementHandle = function(element_handle) {
338
348
  var entries = Object.entries(AllElementHandles);
339
- for(var i = 0; i < entries.length; i++) {
349
+ for(var i = 0; i < entries.length; i++) {
340
350
  if (entries[i][1] === element_handle) { return entries[i][0]; }
341
351
  }
342
352
  LastHandleId++;
343
353
  var handle_id = LastHandleId;
344
354
  AllElementHandles[handle_id] = element_handle;
345
- return handle_id;
355
+ return handle_id;
346
356
  };
347
-
357
+
348
358
  const RegisterPage = function(page) {
349
359
  var entries = Object.entries(AllPageHandles);
350
- for(var i = 0; i < entries.length; i++) {
360
+ for(var i = 0; i < entries.length; i++) {
351
361
  if (entries[i][1] === page) { return entries[i][0]; }
352
362
  }
353
363
  LastHandleId++;
@@ -360,12 +370,14 @@ module Isomorfeus
360
370
  AllPageHandles[handle_id].on('pageerror', (error) => {
361
371
  ConsoleMessages[handle_id].push({level: 'error', location: '', text: error.message});
362
372
  });
363
- return handle_id;
373
+ return handle_id;
364
374
  };
365
-
375
+
366
376
  (async () => {
367
377
  try {
368
- await EnsureBrowser();
378
+ if (process.arch !== 'arm') {
379
+ await EnsureBrowser();
380
+ }
369
381
  CurrentBrowser = #{launch_line}
370
382
  var page = (await CurrentBrowser.pages())[0];
371
383
  page.setDefaultTimeout(#{@puppeteer_timeout});
@@ -4,7 +4,7 @@ module Isomorfeus
4
4
  module PuppeteerDocument
5
5
  def document_accept_alert(document, **options, &block)
6
6
  # TODO maybe wrap in mutex
7
- text = options.has_key?(:text) ? "`#{options[:text]}`" : 'null'
7
+ text = options.key?(:text) ? "`#{options[:text]}`" : 'null'
8
8
  @context.exec <<~JAVASCRIPT
9
9
  ModalText = #{text};
10
10
  AllPageHandles[#{document.handle}].on('dialog', DialogAcceptHandler);
@@ -19,12 +19,12 @@ module Isomorfeus
19
19
  ModalText = null;
20
20
  AllPageHandles[#{document.handle}].removeListener('dialog', DialogAcceptHandler);
21
21
  JAVASCRIPT
22
- raise Isomorfeus::Puppetmaster::NoModalError if options.has_key?(:text) && !matched
22
+ raise Isomorfeus::Puppetmaster::NoModalError if options.key?(:text) && !matched
23
23
  end
24
24
 
25
25
  def document_accept_confirm(document, **options, &block)
26
26
  # TODO maybe wrap in mutex
27
- text = options.has_key?(:text) ? "`#{options[:text]}`" : 'null'
27
+ text = options.key?(:text) ? "`#{options[:text]}`" : 'null'
28
28
  @context.exec <<~JAVASCRIPT
29
29
  ModalText = #{text};
30
30
  AllPageHandles[#{document.handle}].on('dialog', DialogAcceptHandler);
@@ -39,12 +39,12 @@ module Isomorfeus
39
39
  ModalText = null;
40
40
  AllPageHandles[#{document.handle}].removeListener('dialog', DialogAcceptHandler);
41
41
  JAVASCRIPT
42
- raise Isomorfeus::Puppetmaster::NoModalError if options.has_key?(:text) && !matched
42
+ raise Isomorfeus::Puppetmaster::NoModalError if options.key?(:text) && !matched
43
43
  end
44
44
 
45
45
  def document_accept_leave_page(document, **options, &block)
46
46
  # TODO maybe wrap in mutex
47
- text = options.has_key?(:text) ? "`#{options[:text]}`" : 'null'
47
+ text = options.key?(:text) ? "`#{options[:text]}`" : 'null'
48
48
  @context.exec <<~JAVASCRIPT
49
49
  ModalText = #{text};
50
50
  AllPageHandles[#{document.handle}].on('dialog', DialogAcceptHandler);
@@ -59,12 +59,12 @@ module Isomorfeus
59
59
  ModalText = null;
60
60
  AllPageHandles[#{document.handle}].removeListener('dialog', DialogAcceptHandler);
61
61
  JAVASCRIPT
62
- raise Isomorfeus::Puppetmaster::NoModalError if options.has_key?(:text) && !matched
62
+ raise Isomorfeus::Puppetmaster::NoModalError if options.key?(:text) && !matched
63
63
  end
64
64
 
65
65
  def document_accept_prompt(document, **options, &block)
66
66
  # TODO maybe wrap in mutex
67
- text = options.has_key?(:text) ? "`#{options[:text]}`" : 'null'
67
+ text = options.key?(:text) ? "`#{options[:text]}`" : 'null'
68
68
  @context.exec <<~JAVASCRIPT
69
69
  ModalText = #{text};
70
70
  AllPageHandles[#{document.handle}].on('dialog', DialogAcceptHandler);
@@ -79,7 +79,7 @@ module Isomorfeus
79
79
  ModalText = null;
80
80
  AllPageHandles[#{document.handle}].removeListener('dialog', DialogAcceptHandler);
81
81
  JAVASCRIPT
82
- raise Isomorfeus::Puppetmaster::NoModalError if options.has_key?(:text) && !matched
82
+ raise Isomorfeus::Puppetmaster::NoModalError if options.key?(:text) && !matched
83
83
  end
84
84
 
85
85
  def document_all_text(document)
@@ -197,7 +197,7 @@ module Isomorfeus
197
197
 
198
198
  def document_dismiss_confirm(document, **options, &block)
199
199
  # TODO
200
- text = options.has_key?(:text) ? "`#{options[:text]}`" : 'null'
200
+ text = options.key?(:text) ? "`#{options[:text]}`" : 'null'
201
201
  @context.exec <<~JAVASCRIPT
202
202
  ModalText = #{text};
203
203
  AllPageHandles[#{document.handle}].on('dialog', DialogDismissHandler);
@@ -212,12 +212,12 @@ module Isomorfeus
212
212
  ModalText = null;
213
213
  AllPageHandles[#{document.handle}].removeListener('dialog', DialogDismissHandler);
214
214
  JAVASCRIPT
215
- raise Isomorfeus::Puppetmaster::ModalNotFound if options.has_key?(:text) && !matched
215
+ raise Isomorfeus::Puppetmaster::ModalNotFound if options.key?(:text) && !matched
216
216
  end
217
217
 
218
218
  def document_dismiss_leave_page(document, **options, &block)
219
219
  # TODO
220
- text = options.has_key?(:text) ? "`#{options[:text]}`" : 'null'
220
+ text = options.key?(:text) ? "`#{options[:text]}`" : 'null'
221
221
  @context.exec <<~JAVASCRIPT
222
222
  ModalText = #{text};
223
223
  AllPageHandles[#{document.handle}].on('dialog', DialogDismissHandler);
@@ -232,12 +232,12 @@ module Isomorfeus
232
232
  ModalText = null;
233
233
  AllPageHandles[#{document.handle}].removeListener('dialog', DialogDismissHandler);
234
234
  JAVASCRIPT
235
- raise Isomorfeus::Puppetmaster::ModalNotFound if options.has_key?(:text) && !matched
235
+ raise Isomorfeus::Puppetmaster::ModalNotFound if options.key?(:text) && !matched
236
236
  end
237
237
 
238
238
  def document_dismiss_prompt(document, **options, &block)
239
239
  # TODO
240
- text = options.has_key?(:text) ? "`#{options[:text]}`" : 'null'
240
+ text = options.key?(:text) ? "`#{options[:text]}`" : 'null'
241
241
  @context.exec <<~JAVASCRIPT
242
242
  ModalText = #{text};
243
243
  AllPageHandles[#{document.handle}].on('dialog', DialogDismissHandler);
@@ -252,7 +252,7 @@ module Isomorfeus
252
252
  ModalText = null;
253
253
  AllPageHandles[#{document.handle}].removeListener('dialog', DialogDismissHandler);
254
254
  JAVASCRIPT
255
- raise Isomorfeus::Puppetmaster::ModalNotFound if options.has_key?(:text) && !matched
255
+ raise Isomorfeus::Puppetmaster::ModalNotFound if options.key?(:text) && !matched
256
256
  end
257
257
 
258
258
  def document_dispatch_event(document, name, event_type = nil, **options)
@@ -649,12 +649,12 @@ module Isomorfeus
649
649
  # todo
650
650
  # https://pptr.dev/#?product=Puppeteer&version=v1.12.2&show=api-pagescreenshotoptions
651
651
  final_options = ["encoding: 'base64'"]
652
- if options.has_key?(:format)
652
+ if options.key?(:format)
653
653
  options[:format] = 'jpeg' if options[:format].to_s.downcase == 'jpg'
654
654
  final_options << "type: '#{options.delete(:format).to_s.downcase}'"
655
655
  end
656
- final_options << "quality: #{options.delete(:quality)}" if options.has_key?(:quality)
657
- final_options << "fullPage: #{options.delete(:full)}" if options.has_key?(:full)
656
+ final_options << "quality: #{options.delete(:quality)}" if options.key?(:quality)
657
+ final_options << "fullPage: #{options.delete(:full)}" if options.key?(:full)
658
658
  options.each do |k,v|
659
659
  final_options << "#{k.to_s.camelize(:lower)}: #{v}"
660
660
  end
@@ -715,12 +715,12 @@ module Isomorfeus
715
715
  # https://pptr.dev/#?product=Puppeteer&version=v1.12.2&show=api-pagepdfoptions
716
716
  absolute_path = File.absolute_path(path)
717
717
  final_options = ["path: '#{absolute_path}'"]
718
- final_options << "format: '#{options.delete(:format)}'" if options.has_key?(:format)
719
- final_options << "headerTemplate: `#{options.delete(:header_template)}`" if options.has_key?(:header_template)
720
- final_options << "footerTemplate: `#{options.delete(:footer_template)}`" if options.has_key?(:footer_template)
721
- final_options << "pageRanges: '#{options.delete(:page_ranges)}'" if options.has_key?(:page_ranges)
722
- final_options << "width: '#{options.delete(:width)}'" if options.has_key?(:width)
723
- final_options << "height: '#{options.delete(:height)}'" if options.has_key?(:height)
718
+ final_options << "format: '#{options.delete(:format)}'" if options.key?(:format)
719
+ final_options << "headerTemplate: `#{options.delete(:header_template)}`" if options.key?(:header_template)
720
+ final_options << "footerTemplate: `#{options.delete(:footer_template)}`" if options.key?(:footer_template)
721
+ final_options << "pageRanges: '#{options.delete(:page_ranges)}'" if options.key?(:page_ranges)
722
+ final_options << "width: '#{options.delete(:width)}'" if options.key?(:width)
723
+ final_options << "height: '#{options.delete(:height)}'" if options.key?(:height)
724
724
  options.each do |k,v|
725
725
  final_options << "#{k.to_s.camelize(:lower)}: #{v}"
726
726
  end
@@ -732,12 +732,12 @@ module Isomorfeus
732
732
  # https://pptr.dev/#?product=Puppeteer&version=v1.12.2&show=api-pagescreenshotoptions
733
733
  absolute_path = File.absolute_path(path)
734
734
  final_options = ["path: '#{absolute_path}'"]
735
- if options.has_key?(:format)
735
+ if options.key?(:format)
736
736
  options[:format] = 'jpeg' if options[:format].to_s.downcase == 'jpg'
737
737
  final_options << "type: '#{options.delete(:format).to_s.downcase}'"
738
738
  end
739
- final_options << "quality: #{options.delete(:quality)}" if options.has_key?(:quality)
740
- final_options << "fullPage: #{options.delete(:full)}" if options.has_key?(:full)
739
+ final_options << "quality: #{options.delete(:quality)}" if options.key?(:quality)
740
+ final_options << "fullPage: #{options.delete(:full)}" if options.key?(:full)
741
741
  options.each do |k,v|
742
742
  final_options << "#{k.to_s.camelize(:lower)}: #{v}"
743
743
  end
@@ -772,10 +772,10 @@ module Isomorfeus
772
772
  end
773
773
  options[:domain] ||= URI.parse(uri).host
774
774
  final_options = []
775
- final_options << "expires: #{options.delete(:expires).to_i}" if options.has_key?(:expires)
776
- final_options << "httpOnly: #{options.delete(:http_only)}" if options.has_key?(:http_only)
777
- final_options << "secure: #{options.delete(:secure)}" if options.has_key?(:secure)
778
- final_options << "sameSite: '#{options.delete(:same_site)}'" if options.has_key?(:same_site)
775
+ final_options << "expires: #{options.delete(:expires).to_i}" if options.key?(:expires)
776
+ final_options << "httpOnly: #{options.delete(:http_only)}" if options.key?(:http_only)
777
+ final_options << "secure: #{options.delete(:secure)}" if options.key?(:secure)
778
+ final_options << "sameSite: '#{options.delete(:same_site)}'" if options.key?(:same_site)
779
779
  options.each do |k,v|
780
780
  final_options << "#{k}: '#{v}'"
781
781
  end
@@ -437,11 +437,11 @@ module Isomorfeus
437
437
  def node_render_base64(node, **options)
438
438
  # https://pptr.dev/#?product=Puppeteer&version=v1.12.2&show=api-pagescreenshotoptions
439
439
  final_options = ["encoding: 'base64'"]
440
- if options.has_key?(:format)
440
+ if options.key?(:format)
441
441
  options[:format] = 'jpeg' if options[:format].to_s.downcase == 'jpg'
442
442
  final_options << "type: '#{options.delete(:format).to_s.downcase}'"
443
443
  end
444
- final_options << "quality: #{options.delete(:quality)}" if options.has_key?(:quality)
444
+ final_options << "quality: #{options.delete(:quality)}" if options.key?(:quality)
445
445
  box = await "LastResult = await AllElementHandles[#{node.handle}].boundingBox();"
446
446
  final_options << "clip: {x: #{box['x']}, y: #{box['y']}, width: #{box['width']}, height: #{box['height']}}"
447
447
  options.each { |k,v| final_options << "#{k.to_s.camelize(:lower)}: #{v}" }
@@ -493,11 +493,11 @@ module Isomorfeus
493
493
  # https://pptr.dev/#?product=Puppeteer&version=v1.12.2&show=api-pagescreenshotoptions
494
494
  absolute_path = File.absolute_path(path)
495
495
  final_options = ["path: '#{absolute_path}'"]
496
- if options.has_key?(:format)
496
+ if options.key?(:format)
497
497
  options[:format] = 'jpeg' if options[:format].to_s.downcase == 'jpg'
498
498
  final_options << "type: '#{options.delete(:format).to_s.downcase}'"
499
499
  end
500
- final_options << "quality: #{options.delete(:quality)}" if options.has_key?(:quality)
500
+ final_options << "quality: #{options.delete(:quality)}" if options.key?(:quality)
501
501
  box = await "LastResult = await AllElementHandles[#{node.handle}].boundingBox();"
502
502
  final_options << "clip: {x: #{box['x']}, y: #{box['y']}, width: #{box['width']}, height: #{box['height']}}"
503
503
  options.each { |k,v| final_options << "#{k.to_s.camelize(:lower)}: #{v}" }
@@ -189,20 +189,20 @@ module Isomorfeus
189
189
  def has_css?(selector, **options)
190
190
  res = find_all(selector)
191
191
  return false unless res
192
- return false if options.has_key?(:count) && options[:count] != res.size
192
+ return false if options.key?(:count) && options[:count] != res.size
193
193
  return true
194
194
  end
195
195
 
196
196
  def has_text?(text, **options)
197
197
  count = visible_text.scan(/#{text}/).size
198
- return false if options.has_key?(:count) && options[:count] != count
198
+ return false if options.key?(:count) && options[:count] != count
199
199
  count > 0
200
200
  end
201
201
 
202
202
  def has_xpath?(query, **options)
203
203
  res = find_all_xpath(query)
204
204
  return false unless res
205
- return false if options.has_key?(:count) && options[:count] != res.size
205
+ return false if options.key?(:count) && options[:count] != res.size
206
206
  return true
207
207
  end
208
208
 
@@ -74,7 +74,7 @@ module Isomorfeus
74
74
  end
75
75
  if response.code == '200'
76
76
  result_hash = Oj.load(response.body)
77
- if result_hash.has_key?('error')
77
+ if result_hash.key?('error')
78
78
  error = RuntimeError.new(result_hash['error'])
79
79
  error.set_backtrace(result_hash['backtrace'])
80
80
  raise error
@@ -1,3 +1,3 @@
1
1
  module Isomorfeus
2
- PUPPETMASTER_VERSION = '0.5.1'
2
+ PUPPETMASTER_VERSION = '0.5.5'
3
3
  end
@@ -19,7 +19,7 @@ module Isomorfeus
19
19
  end
20
20
 
21
21
  def driver=(drvr)
22
- raise "#{drvr}: no such driver registered! Available drivers: #{drivers.keys.join(', ')}." unless drivers.has_key?(drvr)
22
+ raise "#{drvr}: no such driver registered! Available drivers: #{drivers.keys.join(', ')}." unless drivers.key?(drvr)
23
23
  @driver = drvr
24
24
  end
25
25
 
@@ -52,7 +52,7 @@ module Isomorfeus
52
52
  end
53
53
 
54
54
  def server=(name)
55
- raise "#{name}: no such server registered! Available drivers: #{servers.keys.join(', ')}." unless servers.has_key?(name)
55
+ raise "#{name}: no such server registered! Available drivers: #{servers.keys.join(', ')}." unless servers.key?(name)
56
56
  name, options = *name if name.is_a? Array
57
57
  @server = if name.respond_to? :call
58
58
  name
@@ -3,6 +3,11 @@ require 'uri'
3
3
  require 'net/http'
4
4
  require 'rack'
5
5
  require 'opal'
6
+ require 'parser'
7
+
8
+ # isomorfeus needs kwargs
9
+ Parser::Builders::Default.emit_kwargs = true
10
+
6
11
  require 'unparser'
7
12
  require 'method_source'
8
13
  require 'securerandom'
@@ -13,8 +18,6 @@ unless ENV["EXECJS_RUNTIME"]
13
18
  ExecJS.runtime = ExecJS::Runtimes::Speednode
14
19
  end
15
20
 
16
- # require 'uglifier'
17
-
18
21
  require 'isomorfeus/puppetmaster'
19
22
  require 'isomorfeus/puppetmaster/self_forwardable'
20
23
  require 'isomorfeus/puppetmaster/errors'