isomorfeus-puppetmaster 0.5.3 → 0.5.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (802) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +12 -17
  3. data/lib/isomorfeus/puppetmaster/console_message.rb +18 -18
  4. data/lib/isomorfeus/puppetmaster/cookie.rb +46 -46
  5. data/lib/isomorfeus/puppetmaster/driver/puppeteer.rb +413 -403
  6. data/lib/isomorfeus/puppetmaster/driver/puppeteer_document.rb +953 -953
  7. data/lib/isomorfeus/puppetmaster/driver/puppeteer_node.rb +851 -851
  8. data/lib/isomorfeus/puppetmaster/errors.rb +90 -90
  9. data/lib/isomorfeus/puppetmaster/iframe.rb +16 -16
  10. data/lib/isomorfeus/puppetmaster/node/content_editable.rb +17 -17
  11. data/lib/isomorfeus/puppetmaster/node/input.rb +20 -20
  12. data/lib/isomorfeus/puppetmaster/node/select.rb +35 -35
  13. data/lib/isomorfeus/puppetmaster/node.rb +279 -279
  14. data/lib/isomorfeus/puppetmaster/request.rb +16 -16
  15. data/lib/isomorfeus/puppetmaster/response.rb +25 -25
  16. data/lib/isomorfeus/puppetmaster/self_forwardable.rb +38 -38
  17. data/lib/isomorfeus/puppetmaster/server/checker.rb +1 -3
  18. data/lib/isomorfeus/puppetmaster/server.rb +1 -1
  19. data/lib/isomorfeus/puppetmaster/version.rb +3 -3
  20. data/lib/isomorfeus/puppetmaster.rb +85 -85
  21. data/lib/isomorfeus-puppetmaster.rb +1 -0
  22. data/node_modules/.bin/extract-zip +12 -12
  23. data/node_modules/.bin/extract-zip.ps1 +28 -28
  24. data/node_modules/.bin/rimraf +12 -12
  25. data/node_modules/.bin/rimraf.ps1 +28 -28
  26. data/node_modules/.package-lock.json +530 -574
  27. data/node_modules/@types/node/LICENSE +21 -21
  28. data/node_modules/@types/node/assert/strict.d.ts +8 -8
  29. data/node_modules/@types/node/assert.d.ts +912 -912
  30. data/node_modules/@types/node/async_hooks.d.ts +497 -497
  31. data/node_modules/@types/node/buffer.d.ts +2142 -2142
  32. data/node_modules/@types/node/child_process.d.ts +1355 -1355
  33. data/node_modules/@types/node/cluster.d.ts +414 -414
  34. data/node_modules/@types/node/console.d.ts +407 -407
  35. data/node_modules/@types/node/constants.d.ts +18 -18
  36. data/node_modules/@types/node/crypto.d.ts +3224 -3224
  37. data/node_modules/@types/node/dgram.d.ts +545 -545
  38. data/node_modules/@types/node/diagnostics_channel.d.ts +128 -128
  39. data/node_modules/@types/node/dns/promises.d.ts +357 -357
  40. data/node_modules/@types/node/dns.d.ts +643 -643
  41. data/node_modules/@types/node/domain.d.ts +169 -169
  42. data/node_modules/@types/node/events.d.ts +623 -623
  43. data/node_modules/@types/node/fs/promises.d.ts +997 -997
  44. data/node_modules/@types/node/fs.d.ts +3723 -3723
  45. data/node_modules/@types/node/globals.d.ts +285 -285
  46. data/node_modules/@types/node/globals.global.d.ts +1 -1
  47. data/node_modules/@types/node/http.d.ts +1358 -1358
  48. data/node_modules/@types/node/http2.d.ts +2100 -2100
  49. data/node_modules/@types/node/https.d.ts +391 -391
  50. data/node_modules/@types/node/index.d.ts +131 -131
  51. data/node_modules/@types/node/inspector.d.ts +2738 -2738
  52. data/node_modules/@types/node/module.d.ts +114 -114
  53. data/node_modules/@types/node/net.d.ts +783 -783
  54. data/node_modules/@types/node/os.d.ts +455 -455
  55. data/node_modules/@types/node/package.json +229 -229
  56. data/node_modules/@types/node/path.d.ts +172 -172
  57. data/node_modules/@types/node/perf_hooks.d.ts +555 -555
  58. data/node_modules/@types/node/process.d.ts +1477 -1477
  59. data/node_modules/@types/node/punycode.d.ts +117 -117
  60. data/node_modules/@types/node/querystring.d.ts +131 -131
  61. data/node_modules/@types/node/readline.d.ts +542 -542
  62. data/node_modules/@types/node/repl.d.ts +424 -424
  63. data/node_modules/@types/node/stream/consumers.d.ts +24 -24
  64. data/node_modules/@types/node/stream/promises.d.ts +42 -42
  65. data/node_modules/@types/node/stream/web.d.ts +6 -6
  66. data/node_modules/@types/node/stream.d.ts +1181 -1181
  67. data/node_modules/@types/node/string_decoder.d.ts +67 -67
  68. data/node_modules/@types/node/timers/promises.d.ts +68 -68
  69. data/node_modules/@types/node/timers.d.ts +94 -94
  70. data/node_modules/@types/node/tls.d.ts +1019 -1019
  71. data/node_modules/@types/node/trace_events.d.ts +161 -161
  72. data/node_modules/@types/node/tty.d.ts +206 -206
  73. data/node_modules/@types/node/url.d.ts +798 -798
  74. data/node_modules/@types/node/util.d.ts +1556 -1556
  75. data/node_modules/@types/node/v8.d.ts +378 -378
  76. data/node_modules/@types/node/vm.d.ts +504 -504
  77. data/node_modules/@types/node/wasi.d.ts +153 -153
  78. data/node_modules/@types/node/worker_threads.d.ts +649 -649
  79. data/node_modules/@types/node/zlib.d.ts +517 -517
  80. data/node_modules/@types/yauzl/LICENSE +21 -21
  81. data/node_modules/@types/yauzl/index.d.ts +98 -98
  82. data/node_modules/@types/yauzl/package.json +26 -26
  83. data/node_modules/agent-base/README.md +145 -145
  84. data/node_modules/agent-base/dist/src/index.d.ts +78 -78
  85. data/node_modules/agent-base/dist/src/index.js +202 -202
  86. data/node_modules/agent-base/dist/src/promisify.d.ts +4 -4
  87. data/node_modules/agent-base/dist/src/promisify.js +17 -17
  88. data/node_modules/agent-base/package.json +64 -64
  89. data/node_modules/agent-base/src/index.ts +345 -345
  90. data/node_modules/agent-base/src/promisify.ts +33 -33
  91. data/node_modules/balanced-match/.github/FUNDING.yml +2 -2
  92. data/node_modules/balanced-match/LICENSE.md +21 -21
  93. data/node_modules/balanced-match/README.md +97 -97
  94. data/node_modules/balanced-match/index.js +62 -62
  95. data/node_modules/balanced-match/package.json +48 -48
  96. data/node_modules/base64-js/LICENSE +21 -21
  97. data/node_modules/base64-js/README.md +34 -34
  98. data/node_modules/base64-js/index.d.ts +3 -3
  99. data/node_modules/base64-js/index.js +150 -150
  100. data/node_modules/base64-js/package.json +47 -47
  101. data/node_modules/bl/.travis.yml +17 -17
  102. data/node_modules/bl/BufferList.js +396 -396
  103. data/node_modules/bl/LICENSE.md +13 -13
  104. data/node_modules/bl/README.md +247 -247
  105. data/node_modules/bl/bl.js +84 -84
  106. data/node_modules/bl/package.json +37 -37
  107. data/node_modules/bl/test/convert.js +21 -21
  108. data/node_modules/bl/test/indexOf.js +492 -492
  109. data/node_modules/bl/test/isBufferList.js +32 -32
  110. data/node_modules/bl/test/test.js +869 -869
  111. data/node_modules/brace-expansion/LICENSE +21 -21
  112. data/node_modules/brace-expansion/README.md +129 -129
  113. data/node_modules/brace-expansion/index.js +201 -201
  114. data/node_modules/brace-expansion/package.json +47 -47
  115. data/node_modules/buffer/AUTHORS.md +70 -70
  116. data/node_modules/buffer/LICENSE +21 -21
  117. data/node_modules/buffer/README.md +410 -410
  118. data/node_modules/buffer/index.d.ts +186 -186
  119. data/node_modules/buffer/index.js +1817 -1817
  120. data/node_modules/buffer/package.json +96 -96
  121. data/node_modules/buffer-crc32/LICENSE +19 -19
  122. data/node_modules/buffer-crc32/README.md +47 -47
  123. data/node_modules/buffer-crc32/index.js +111 -111
  124. data/node_modules/buffer-crc32/package.json +39 -39
  125. data/node_modules/chownr/LICENSE +15 -15
  126. data/node_modules/chownr/README.md +3 -3
  127. data/node_modules/chownr/chownr.js +167 -167
  128. data/node_modules/chownr/package.json +29 -29
  129. data/node_modules/concat-map/.travis.yml +4 -4
  130. data/node_modules/concat-map/LICENSE +18 -18
  131. data/node_modules/concat-map/README.markdown +62 -62
  132. data/node_modules/concat-map/example/map.js +6 -6
  133. data/node_modules/concat-map/index.js +13 -13
  134. data/node_modules/concat-map/package.json +43 -43
  135. data/node_modules/concat-map/test/map.js +39 -39
  136. data/node_modules/debug/LICENSE +19 -19
  137. data/node_modules/debug/README.md +455 -455
  138. data/node_modules/debug/package.json +59 -59
  139. data/node_modules/debug/src/browser.js +269 -269
  140. data/node_modules/debug/src/common.js +274 -261
  141. data/node_modules/debug/src/index.js +10 -10
  142. data/node_modules/debug/src/node.js +263 -263
  143. data/node_modules/devtools-protocol/LICENSE +27 -27
  144. data/node_modules/devtools-protocol/README.md +12 -12
  145. data/node_modules/devtools-protocol/json/browser_protocol.json +20985 -20640
  146. data/node_modules/devtools-protocol/json/js_protocol.json +3531 -3580
  147. data/node_modules/devtools-protocol/package.json +17 -18
  148. data/node_modules/devtools-protocol/pdl/browser_protocol.pdl +9849 -9637
  149. data/node_modules/devtools-protocol/pdl/js_protocol.pdl +1653 -1678
  150. data/node_modules/devtools-protocol/types/protocol-mapping.d.ts +4333 -4321
  151. data/node_modules/devtools-protocol/types/protocol-proxy-api.d.ts +3695 -3683
  152. data/node_modules/devtools-protocol/types/protocol.d.ts +15714 -15538
  153. data/node_modules/end-of-stream/LICENSE +20 -20
  154. data/node_modules/end-of-stream/README.md +54 -54
  155. data/node_modules/end-of-stream/index.js +94 -94
  156. data/node_modules/end-of-stream/package.json +37 -37
  157. data/node_modules/extract-zip/LICENSE +23 -23
  158. data/node_modules/extract-zip/cli.js +19 -19
  159. data/node_modules/extract-zip/index.d.ts +21 -21
  160. data/node_modules/extract-zip/index.js +173 -173
  161. data/node_modules/extract-zip/package.json +80 -80
  162. data/node_modules/extract-zip/readme.md +57 -57
  163. data/node_modules/fd-slicer/.npmignore +2 -2
  164. data/node_modules/fd-slicer/.travis.yml +7 -7
  165. data/node_modules/fd-slicer/CHANGELOG.md +49 -49
  166. data/node_modules/fd-slicer/LICENSE +21 -21
  167. data/node_modules/fd-slicer/README.md +199 -199
  168. data/node_modules/fd-slicer/index.js +296 -296
  169. data/node_modules/fd-slicer/package.json +36 -36
  170. data/node_modules/fd-slicer/test/test.js +350 -350
  171. data/node_modules/find-up/index.d.ts +137 -137
  172. data/node_modules/find-up/index.js +89 -89
  173. data/node_modules/find-up/license +9 -9
  174. data/node_modules/find-up/package.json +53 -53
  175. data/node_modules/find-up/readme.md +156 -156
  176. data/node_modules/fs-constants/LICENSE +21 -21
  177. data/node_modules/fs-constants/README.md +26 -26
  178. data/node_modules/fs-constants/browser.js +1 -1
  179. data/node_modules/fs-constants/index.js +1 -1
  180. data/node_modules/fs-constants/package.json +19 -19
  181. data/node_modules/fs.realpath/LICENSE +43 -43
  182. data/node_modules/fs.realpath/README.md +33 -33
  183. data/node_modules/fs.realpath/index.js +66 -66
  184. data/node_modules/fs.realpath/old.js +303 -303
  185. data/node_modules/fs.realpath/package.json +26 -26
  186. data/node_modules/get-stream/buffer-stream.js +52 -52
  187. data/node_modules/get-stream/index.d.ts +108 -108
  188. data/node_modules/get-stream/index.js +60 -60
  189. data/node_modules/get-stream/license +9 -9
  190. data/node_modules/get-stream/package.json +50 -50
  191. data/node_modules/get-stream/readme.md +124 -124
  192. data/node_modules/glob/LICENSE +21 -21
  193. data/node_modules/glob/README.md +375 -375
  194. data/node_modules/glob/changelog.md +67 -67
  195. data/node_modules/glob/common.js +234 -234
  196. data/node_modules/glob/glob.js +788 -788
  197. data/node_modules/glob/package.json +51 -51
  198. data/node_modules/glob/sync.js +484 -484
  199. data/node_modules/https-proxy-agent/README.md +137 -137
  200. data/node_modules/https-proxy-agent/dist/agent.d.ts +30 -30
  201. data/node_modules/https-proxy-agent/dist/agent.js +179 -179
  202. data/node_modules/https-proxy-agent/dist/index.d.ts +23 -23
  203. data/node_modules/https-proxy-agent/dist/index.js +13 -13
  204. data/node_modules/https-proxy-agent/dist/parse-proxy-response.d.ts +7 -7
  205. data/node_modules/https-proxy-agent/dist/parse-proxy-response.js +65 -65
  206. data/node_modules/https-proxy-agent/package.json +56 -56
  207. data/node_modules/ieee754/LICENSE +11 -11
  208. data/node_modules/ieee754/README.md +51 -51
  209. data/node_modules/ieee754/index.d.ts +9 -9
  210. data/node_modules/ieee754/index.js +85 -85
  211. data/node_modules/ieee754/package.json +52 -52
  212. data/node_modules/inflight/LICENSE +15 -15
  213. data/node_modules/inflight/README.md +37 -37
  214. data/node_modules/inflight/inflight.js +54 -54
  215. data/node_modules/inflight/package.json +29 -29
  216. data/node_modules/inherits/LICENSE +16 -16
  217. data/node_modules/inherits/README.md +42 -42
  218. data/node_modules/inherits/inherits.js +9 -9
  219. data/node_modules/inherits/inherits_browser.js +27 -27
  220. data/node_modules/inherits/package.json +29 -29
  221. data/node_modules/locate-path/index.d.ts +83 -83
  222. data/node_modules/locate-path/index.js +65 -65
  223. data/node_modules/locate-path/license +9 -9
  224. data/node_modules/locate-path/package.json +45 -45
  225. data/node_modules/locate-path/readme.md +122 -122
  226. data/node_modules/minimatch/LICENSE +15 -15
  227. data/node_modules/minimatch/README.md +209 -209
  228. data/node_modules/minimatch/minimatch.js +923 -923
  229. data/node_modules/minimatch/package.json +30 -30
  230. data/node_modules/{mkdirp → mkdirp-classic}/LICENSE +21 -21
  231. data/node_modules/mkdirp-classic/README.md +18 -0
  232. data/node_modules/{mkdirp → mkdirp-classic}/index.js +98 -99
  233. data/node_modules/mkdirp-classic/package.json +18 -0
  234. data/node_modules/ms/index.js +162 -162
  235. data/node_modules/ms/license.md +21 -21
  236. data/node_modules/ms/package.json +37 -37
  237. data/node_modules/ms/readme.md +60 -60
  238. data/node_modules/node-fetch/LICENSE.md +22 -22
  239. data/node_modules/node-fetch/README.md +590 -590
  240. data/node_modules/node-fetch/browser.js +24 -24
  241. data/node_modules/node-fetch/lib/index.es.js +1662 -1640
  242. data/node_modules/node-fetch/lib/index.js +1671 -1649
  243. data/node_modules/node-fetch/lib/index.mjs +1660 -1638
  244. data/node_modules/node-fetch/package.json +68 -66
  245. data/node_modules/once/LICENSE +15 -15
  246. data/node_modules/once/README.md +79 -79
  247. data/node_modules/once/once.js +42 -42
  248. data/node_modules/once/package.json +33 -33
  249. data/node_modules/p-limit/index.d.ts +38 -38
  250. data/node_modules/p-limit/index.js +57 -57
  251. data/node_modules/p-limit/license +9 -9
  252. data/node_modules/p-limit/package.json +52 -52
  253. data/node_modules/p-limit/readme.md +101 -101
  254. data/node_modules/p-locate/index.d.ts +64 -64
  255. data/node_modules/p-locate/index.js +52 -52
  256. data/node_modules/p-locate/license +9 -9
  257. data/node_modules/p-locate/package.json +53 -53
  258. data/node_modules/p-locate/readme.md +90 -90
  259. data/node_modules/p-try/index.d.ts +39 -39
  260. data/node_modules/p-try/index.js +9 -9
  261. data/node_modules/p-try/license +9 -9
  262. data/node_modules/p-try/package.json +42 -42
  263. data/node_modules/p-try/readme.md +58 -58
  264. data/node_modules/path-exists/index.d.ts +28 -28
  265. data/node_modules/path-exists/index.js +23 -23
  266. data/node_modules/path-exists/license +9 -9
  267. data/node_modules/path-exists/package.json +39 -39
  268. data/node_modules/path-exists/readme.md +52 -52
  269. data/node_modules/path-is-absolute/index.js +20 -20
  270. data/node_modules/path-is-absolute/license +21 -21
  271. data/node_modules/path-is-absolute/package.json +43 -43
  272. data/node_modules/path-is-absolute/readme.md +59 -59
  273. data/node_modules/pend/LICENSE +23 -23
  274. data/node_modules/pend/README.md +41 -41
  275. data/node_modules/pend/index.js +55 -55
  276. data/node_modules/pend/package.json +18 -18
  277. data/node_modules/pend/test.js +137 -137
  278. data/node_modules/pkg-dir/index.d.ts +44 -44
  279. data/node_modules/pkg-dir/index.js +17 -17
  280. data/node_modules/pkg-dir/license +9 -9
  281. data/node_modules/pkg-dir/package.json +56 -56
  282. data/node_modules/pkg-dir/readme.md +66 -66
  283. data/node_modules/progress/CHANGELOG.md +115 -115
  284. data/node_modules/progress/LICENSE +22 -22
  285. data/node_modules/progress/Makefile +8 -8
  286. data/node_modules/progress/Readme.md +146 -146
  287. data/node_modules/progress/index.js +1 -1
  288. data/node_modules/progress/lib/node-progress.js +236 -235
  289. data/node_modules/progress/package.json +26 -26
  290. data/node_modules/proxy-from-env/.eslintrc +29 -29
  291. data/node_modules/proxy-from-env/.travis.yml +10 -10
  292. data/node_modules/proxy-from-env/LICENSE +20 -20
  293. data/node_modules/proxy-from-env/README.md +131 -131
  294. data/node_modules/proxy-from-env/index.js +108 -108
  295. data/node_modules/proxy-from-env/package.json +34 -34
  296. data/node_modules/proxy-from-env/test.js +483 -483
  297. data/node_modules/pump/.travis.yml +5 -5
  298. data/node_modules/pump/LICENSE +20 -20
  299. data/node_modules/pump/README.md +65 -65
  300. data/node_modules/pump/index.js +82 -82
  301. data/node_modules/pump/package.json +24 -24
  302. data/node_modules/pump/test-browser.js +66 -66
  303. data/node_modules/pump/test-node.js +53 -53
  304. data/node_modules/puppeteer-core/CHANGELOG.md +319 -261
  305. data/node_modules/puppeteer-core/LICENSE +202 -202
  306. data/node_modules/puppeteer-core/README.md +481 -483
  307. data/node_modules/puppeteer-core/cjs-entry-core.js +29 -29
  308. data/node_modules/puppeteer-core/cjs-entry.js +29 -29
  309. data/node_modules/puppeteer-core/install.js +89 -89
  310. data/node_modules/puppeteer-core/lib/cjs/puppeteer/api-docs-entry.d.ts +110 -110
  311. data/node_modules/puppeteer-core/lib/cjs/puppeteer/api-docs-entry.js +80 -80
  312. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Accessibility.d.ts +175 -175
  313. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Accessibility.js +360 -360
  314. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts +20 -20
  315. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/AriaQueryHandler.js +84 -84
  316. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/AriaQueryHandler.js.map +1 -1
  317. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.d.ts +455 -453
  318. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.d.ts.map +1 -1
  319. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.js +540 -532
  320. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Browser.js.map +1 -1
  321. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserConnector.d.ts +53 -53
  322. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserConnector.js +97 -97
  323. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserConnector.js.map +1 -1
  324. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserWebSocketTransport.d.ts +25 -25
  325. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/BrowserWebSocketTransport.js +34 -34
  326. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.d.ts +135 -129
  327. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.d.ts.map +1 -1
  328. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.js +298 -280
  329. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Connection.js.map +1 -1
  330. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ConnectionTransport.d.ts +24 -24
  331. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ConnectionTransport.js +17 -17
  332. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ConsoleMessage.d.ts +72 -72
  333. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ConsoleMessage.js +64 -64
  334. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Coverage.d.ts +204 -204
  335. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Coverage.js +335 -335
  336. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Coverage.js.map +1 -1
  337. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.d.ts +175 -173
  338. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.d.ts.map +1 -1
  339. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.js +662 -658
  340. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DOMWorld.js.map +1 -1
  341. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Debug.d.ts +52 -52
  342. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Debug.js +81 -81
  343. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts +40 -40
  344. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/DeviceDescriptors.js +1070 -1070
  345. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Dialog.d.ts +74 -74
  346. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Dialog.js +97 -97
  347. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Dialog.js.map +1 -1
  348. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EmulationManager.d.ts +24 -24
  349. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EmulationManager.js +37 -37
  350. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.d.ts +50 -41
  351. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.d.ts.map +1 -1
  352. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.js +56 -48
  353. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Errors.js.map +1 -1
  354. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EvalTypes.d.ts +60 -60
  355. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EvalTypes.js +17 -17
  356. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EventEmitter.d.ts +92 -92
  357. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EventEmitter.js +116 -116
  358. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EventEmitter.js.map +1 -1
  359. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Events.d.ts +81 -81
  360. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Events.js +86 -86
  361. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ExecutionContext.d.ts +193 -193
  362. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ExecutionContext.js +321 -321
  363. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/ExecutionContext.js.map +1 -1
  364. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FileChooser.d.ts +58 -58
  365. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FileChooser.js +71 -71
  366. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FileChooser.js.map +1 -1
  367. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.d.ts +744 -732
  368. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.d.ts.map +1 -1
  369. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.js +1047 -964
  370. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/FrameManager.js.map +1 -1
  371. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.d.ts +350 -340
  372. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  373. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.js +549 -546
  374. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPRequest.js.map +1 -1
  375. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.d.ts +134 -125
  376. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.d.ts.map +1 -1
  377. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.js +184 -154
  378. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/HTTPResponse.js.map +1 -1
  379. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.d.ts +358 -359
  380. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.d.ts.map +1 -1
  381. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.js +543 -544
  382. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Input.js.map +1 -1
  383. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.d.ts +490 -490
  384. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.d.ts.map +1 -1
  385. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.js +827 -826
  386. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/JSHandle.js.map +1 -1
  387. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts +65 -65
  388. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.d.ts.map +1 -1
  389. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js +149 -148
  390. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/LifecycleWatcher.js.map +1 -1
  391. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkConditions.d.ts +26 -26
  392. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkConditions.js +33 -33
  393. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.d.ts +126 -97
  394. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.d.ts.map +1 -1
  395. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.js +467 -345
  396. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/NetworkManager.js.map +1 -1
  397. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PDFOptions.d.ts +161 -161
  398. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PDFOptions.js +34 -34
  399. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.d.ts +2055 -2026
  400. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.d.ts.map +1 -1
  401. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.js +2533 -2487
  402. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Page.js.map +1 -1
  403. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Product.d.ts +20 -20
  404. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Product.js +17 -17
  405. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Puppeteer.d.ts +159 -159
  406. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Puppeteer.js +161 -161
  407. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Puppeteer.js.map +1 -1
  408. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PuppeteerViewport.d.ts +51 -51
  409. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/PuppeteerViewport.js +2 -2
  410. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/QueryHandler.d.ts +64 -64
  411. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/QueryHandler.js +165 -165
  412. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/SecurityDetails.d.ts +60 -60
  413. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/SecurityDetails.js +76 -76
  414. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.d.ts +100 -98
  415. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.d.ts.map +1 -1
  416. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.js +145 -144
  417. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Target.js.map +1 -1
  418. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.d.ts +21 -0
  419. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.d.ts.map +1 -0
  420. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.js +30 -0
  421. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TaskQueue.js.map +1 -0
  422. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TimeoutSettings.d.ts +27 -27
  423. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/TimeoutSettings.js +47 -47
  424. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Tracing.d.ts +46 -46
  425. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Tracing.js +109 -109
  426. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/Tracing.js.map +1 -1
  427. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/USKeyboardLayout.d.ts +39 -39
  428. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/USKeyboardLayout.js +406 -406
  429. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/WebWorker.d.ts +98 -98
  430. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/WebWorker.js +112 -112
  431. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/assert.d.ts +22 -22
  432. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/assert.js +33 -33
  433. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/fetch.d.ts +16 -16
  434. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/fetch.js +43 -43
  435. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/helper.d.ts +84 -84
  436. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/helper.js +327 -327
  437. data/node_modules/puppeteer-core/lib/cjs/puppeteer/common/helper.js.map +1 -1
  438. data/node_modules/puppeteer-core/lib/cjs/puppeteer/environment.d.ts +16 -16
  439. data/node_modules/puppeteer-core/lib/cjs/puppeteer/environment.js +19 -19
  440. data/node_modules/puppeteer-core/lib/cjs/puppeteer/global.d.ts +16 -16
  441. data/node_modules/puppeteer-core/lib/cjs/puppeteer/global.js +2 -2
  442. data/node_modules/puppeteer-core/lib/cjs/puppeteer/initialize-node.d.ts +17 -17
  443. data/node_modules/puppeteer-core/lib/cjs/puppeteer/initialize-node.js +44 -44
  444. data/node_modules/puppeteer-core/lib/cjs/puppeteer/initialize-web.d.ts +17 -17
  445. data/node_modules/puppeteer-core/lib/cjs/puppeteer/initialize-web.js +26 -26
  446. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserFetcher.d.ts +133 -133
  447. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserFetcher.js +500 -500
  448. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserFetcher.js.map +1 -1
  449. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.d.ts +40 -39
  450. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map +1 -1
  451. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.js +256 -224
  452. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/BrowserRunner.js.map +1 -1
  453. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/LaunchOptions.d.ts +134 -130
  454. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map +1 -1
  455. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/LaunchOptions.js +17 -17
  456. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.d.ts +16 -16
  457. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.d.ts.map +1 -1
  458. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.js +655 -573
  459. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Launcher.js.map +1 -1
  460. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts +26 -26
  461. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/NodeWebSocketTransport.js +47 -47
  462. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/PipeTransport.d.ts +29 -29
  463. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/PipeTransport.js +64 -64
  464. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Puppeteer.d.ts +153 -153
  465. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Puppeteer.js +188 -188
  466. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/Puppeteer.js.map +1 -1
  467. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/install.d.ts +17 -17
  468. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/install.js +173 -173
  469. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node/install.js.map +1 -1
  470. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node-puppeteer-core.d.ts +17 -17
  471. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node-puppeteer-core.js +24 -24
  472. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node-puppeteer-core.js.map +1 -1
  473. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node.d.ts +17 -17
  474. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node.js +23 -23
  475. data/node_modules/puppeteer-core/lib/cjs/puppeteer/node.js.map +1 -1
  476. data/node_modules/puppeteer-core/lib/cjs/puppeteer/revisions.d.ts +21 -21
  477. data/node_modules/puppeteer-core/lib/cjs/puppeteer/revisions.js +22 -22
  478. data/node_modules/puppeteer-core/lib/cjs/puppeteer/web.d.ts +17 -17
  479. data/node_modules/puppeteer-core/lib/cjs/puppeteer/web.js +23 -23
  480. data/node_modules/puppeteer-core/lib/cjs/puppeteer/web.js.map +1 -1
  481. data/node_modules/puppeteer-core/lib/cjs/vendor/mitt/src/index.d.ts +27 -27
  482. data/node_modules/puppeteer-core/lib/cjs/vendor/mitt/src/index.js +56 -56
  483. data/node_modules/puppeteer-core/lib/esm/puppeteer/api-docs-entry.d.ts +110 -110
  484. data/node_modules/puppeteer-core/lib/esm/puppeteer/api-docs-entry.js +80 -80
  485. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Accessibility.d.ts +175 -175
  486. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Accessibility.js +356 -356
  487. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/AriaQueryHandler.d.ts +20 -20
  488. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/AriaQueryHandler.js +81 -81
  489. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/AriaQueryHandler.js.map +1 -1
  490. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.d.ts +455 -453
  491. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.d.ts.map +1 -1
  492. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.js +535 -527
  493. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Browser.js.map +1 -1
  494. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/BrowserConnector.d.ts +53 -53
  495. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/BrowserConnector.js +74 -74
  496. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/BrowserWebSocketTransport.d.ts +25 -25
  497. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/BrowserWebSocketTransport.js +30 -30
  498. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.d.ts +135 -129
  499. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.d.ts.map +1 -1
  500. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.js +293 -275
  501. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Connection.js.map +1 -1
  502. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ConnectionTransport.d.ts +24 -24
  503. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ConnectionTransport.js +16 -16
  504. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ConsoleMessage.d.ts +72 -72
  505. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ConsoleMessage.js +60 -60
  506. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Coverage.d.ts +204 -204
  507. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Coverage.js +329 -329
  508. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.d.ts +175 -173
  509. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.d.ts.map +1 -1
  510. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.js +657 -653
  511. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DOMWorld.js.map +1 -1
  512. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Debug.d.ts +52 -52
  513. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Debug.js +77 -77
  514. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DeviceDescriptors.d.ts +40 -40
  515. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/DeviceDescriptors.js +1067 -1067
  516. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Dialog.d.ts +74 -74
  517. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Dialog.js +93 -93
  518. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EmulationManager.d.ts +24 -24
  519. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EmulationManager.js +33 -33
  520. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.d.ts +50 -41
  521. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.d.ts.map +1 -1
  522. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.js +50 -43
  523. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Errors.js.map +1 -1
  524. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EvalTypes.d.ts +60 -60
  525. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EvalTypes.js +16 -16
  526. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EventEmitter.d.ts +92 -92
  527. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/EventEmitter.js +109 -109
  528. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Events.d.ts +81 -81
  529. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Events.js +83 -83
  530. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ExecutionContext.d.ts +193 -193
  531. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/ExecutionContext.js +317 -317
  532. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FileChooser.d.ts +58 -58
  533. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FileChooser.js +67 -67
  534. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.d.ts +744 -732
  535. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.d.ts.map +1 -1
  536. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.js +1042 -959
  537. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/FrameManager.js.map +1 -1
  538. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.d.ts +350 -340
  539. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  540. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.js +545 -542
  541. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPRequest.js.map +1 -1
  542. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.d.ts +134 -125
  543. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.d.ts.map +1 -1
  544. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.js +180 -150
  545. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/HTTPResponse.js.map +1 -1
  546. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.d.ts +358 -359
  547. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.d.ts.map +1 -1
  548. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.js +537 -538
  549. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Input.js.map +1 -1
  550. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.d.ts +490 -490
  551. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.d.ts.map +1 -1
  552. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.js +802 -801
  553. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/JSHandle.js.map +1 -1
  554. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/LifecycleWatcher.d.ts +65 -65
  555. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/LifecycleWatcher.d.ts.map +1 -1
  556. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/LifecycleWatcher.js +145 -144
  557. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/LifecycleWatcher.js.map +1 -1
  558. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkConditions.d.ts +26 -26
  559. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkConditions.js +30 -30
  560. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.d.ts +126 -97
  561. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.d.ts.map +1 -1
  562. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.js +463 -341
  563. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/NetworkManager.js.map +1 -1
  564. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PDFOptions.d.ts +161 -161
  565. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PDFOptions.js +31 -31
  566. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.d.ts +2055 -2026
  567. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.d.ts.map +1 -1
  568. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.js +2529 -2483
  569. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Page.js.map +1 -1
  570. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Product.d.ts +20 -20
  571. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Product.js +16 -16
  572. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Puppeteer.d.ts +159 -159
  573. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Puppeteer.js +157 -157
  574. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PuppeteerViewport.d.ts +51 -51
  575. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/PuppeteerViewport.js +1 -1
  576. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/QueryHandler.d.ts +64 -64
  577. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/QueryHandler.js +157 -157
  578. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/SecurityDetails.d.ts +60 -60
  579. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/SecurityDetails.js +72 -72
  580. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.d.ts +100 -98
  581. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.d.ts.map +1 -1
  582. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.js +141 -140
  583. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Target.js.map +1 -1
  584. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.d.ts +21 -0
  585. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.d.ts.map +1 -0
  586. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.js +26 -0
  587. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TaskQueue.js.map +1 -0
  588. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TimeoutSettings.d.ts +27 -27
  589. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/TimeoutSettings.js +43 -43
  590. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Tracing.d.ts +46 -46
  591. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/Tracing.js +105 -105
  592. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/USKeyboardLayout.d.ts +39 -39
  593. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/USKeyboardLayout.js +403 -403
  594. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/WebWorker.d.ts +98 -98
  595. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/WebWorker.js +108 -108
  596. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/assert.d.ts +22 -22
  597. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/assert.js +28 -28
  598. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/fetch.d.ts +16 -16
  599. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/fetch.js +20 -20
  600. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/helper.d.ts +84 -84
  601. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/helper.js +305 -305
  602. data/node_modules/puppeteer-core/lib/esm/puppeteer/common/helper.js.map +1 -1
  603. data/node_modules/puppeteer-core/lib/esm/puppeteer/environment.d.ts +16 -16
  604. data/node_modules/puppeteer-core/lib/esm/puppeteer/environment.js +16 -16
  605. data/node_modules/puppeteer-core/lib/esm/puppeteer/global.d.ts +16 -16
  606. data/node_modules/puppeteer-core/lib/esm/puppeteer/global.js +1 -1
  607. data/node_modules/puppeteer-core/lib/esm/puppeteer/initialize-node.d.ts +17 -17
  608. data/node_modules/puppeteer-core/lib/esm/puppeteer/initialize-node.js +37 -37
  609. data/node_modules/puppeteer-core/lib/esm/puppeteer/initialize-web.d.ts +17 -17
  610. data/node_modules/puppeteer-core/lib/esm/puppeteer/initialize-web.js +22 -22
  611. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserFetcher.d.ts +133 -133
  612. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserFetcher.js +474 -474
  613. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserFetcher.js.map +1 -1
  614. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.d.ts +40 -39
  615. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.d.ts.map +1 -1
  616. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.js +230 -198
  617. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/BrowserRunner.js.map +1 -1
  618. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/LaunchOptions.d.ts +134 -130
  619. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/LaunchOptions.d.ts.map +1 -1
  620. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/LaunchOptions.js +16 -16
  621. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.d.ts +16 -16
  622. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.d.ts.map +1 -1
  623. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.js +633 -551
  624. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Launcher.js.map +1 -1
  625. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts +26 -26
  626. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/NodeWebSocketTransport.js +40 -40
  627. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/PipeTransport.d.ts +29 -29
  628. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/PipeTransport.js +60 -60
  629. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Puppeteer.d.ts +153 -153
  630. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/Puppeteer.js +181 -181
  631. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/install.d.ts +17 -17
  632. data/node_modules/puppeteer-core/lib/esm/puppeteer/node/install.js +165 -165
  633. data/node_modules/puppeteer-core/lib/esm/puppeteer/node-puppeteer-core.d.ts +17 -17
  634. data/node_modules/puppeteer-core/lib/esm/puppeteer/node-puppeteer-core.js +22 -22
  635. data/node_modules/puppeteer-core/lib/esm/puppeteer/node.d.ts +17 -17
  636. data/node_modules/puppeteer-core/lib/esm/puppeteer/node.js +21 -21
  637. data/node_modules/puppeteer-core/lib/esm/puppeteer/revisions.d.ts +21 -21
  638. data/node_modules/puppeteer-core/lib/esm/puppeteer/revisions.js +19 -19
  639. data/node_modules/puppeteer-core/lib/esm/puppeteer/web.d.ts +17 -17
  640. data/node_modules/puppeteer-core/lib/esm/puppeteer/web.js +21 -21
  641. data/node_modules/puppeteer-core/lib/esm/vendor/mitt/src/index.d.ts +27 -27
  642. data/node_modules/puppeteer-core/lib/esm/vendor/mitt/src/index.js +53 -53
  643. data/node_modules/puppeteer-core/lib/types.d.ts +3899 -3766
  644. data/node_modules/puppeteer-core/package.json +115 -122
  645. data/node_modules/puppeteer-core/typescript-if-required.js +61 -61
  646. data/node_modules/readable-stream/CONTRIBUTING.md +38 -38
  647. data/node_modules/readable-stream/GOVERNANCE.md +136 -136
  648. data/node_modules/readable-stream/LICENSE +47 -47
  649. data/node_modules/readable-stream/README.md +106 -106
  650. data/node_modules/readable-stream/errors-browser.js +127 -127
  651. data/node_modules/readable-stream/errors.js +116 -116
  652. data/node_modules/readable-stream/experimentalWarning.js +17 -17
  653. data/node_modules/readable-stream/lib/_stream_duplex.js +138 -138
  654. data/node_modules/readable-stream/lib/_stream_passthrough.js +38 -38
  655. data/node_modules/readable-stream/lib/_stream_readable.js +1123 -1123
  656. data/node_modules/readable-stream/lib/_stream_transform.js +200 -200
  657. data/node_modules/readable-stream/lib/_stream_writable.js +696 -696
  658. data/node_modules/readable-stream/lib/internal/streams/async_iterator.js +206 -206
  659. data/node_modules/readable-stream/lib/internal/streams/buffer_list.js +209 -209
  660. data/node_modules/readable-stream/lib/internal/streams/destroy.js +104 -104
  661. data/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +103 -103
  662. data/node_modules/readable-stream/lib/internal/streams/from-browser.js +3 -3
  663. data/node_modules/readable-stream/lib/internal/streams/from.js +63 -63
  664. data/node_modules/readable-stream/lib/internal/streams/pipeline.js +96 -96
  665. data/node_modules/readable-stream/lib/internal/streams/state.js +26 -26
  666. data/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -1
  667. data/node_modules/readable-stream/lib/internal/streams/stream.js +1 -1
  668. data/node_modules/readable-stream/package.json +68 -68
  669. data/node_modules/readable-stream/readable-browser.js +9 -9
  670. data/node_modules/readable-stream/readable.js +16 -16
  671. data/node_modules/rimraf/CHANGELOG.md +65 -65
  672. data/node_modules/rimraf/LICENSE +15 -15
  673. data/node_modules/rimraf/README.md +101 -101
  674. data/node_modules/rimraf/bin.js +68 -68
  675. data/node_modules/rimraf/package.json +32 -32
  676. data/node_modules/rimraf/rimraf.js +360 -360
  677. data/node_modules/safe-buffer/LICENSE +21 -21
  678. data/node_modules/safe-buffer/README.md +584 -584
  679. data/node_modules/safe-buffer/index.d.ts +186 -186
  680. data/node_modules/safe-buffer/index.js +65 -65
  681. data/node_modules/safe-buffer/package.json +51 -51
  682. data/node_modules/string_decoder/LICENSE +48 -48
  683. data/node_modules/string_decoder/README.md +47 -47
  684. data/node_modules/string_decoder/lib/string_decoder.js +295 -295
  685. data/node_modules/string_decoder/package.json +34 -34
  686. data/node_modules/tar-fs/.travis.yml +6 -5
  687. data/node_modules/tar-fs/LICENSE +20 -20
  688. data/node_modules/tar-fs/README.md +165 -163
  689. data/node_modules/tar-fs/index.js +351 -348
  690. data/node_modules/tar-fs/package.json +41 -41
  691. data/node_modules/tar-fs/test/fixtures/a/hello.txt +1 -1
  692. data/node_modules/tar-fs/test/fixtures/b/a/test.txt +1 -1
  693. data/node_modules/tar-fs/test/index.js +346 -346
  694. data/node_modules/tar-stream/LICENSE +20 -20
  695. data/node_modules/tar-stream/README.md +168 -168
  696. data/node_modules/tar-stream/extract.js +257 -257
  697. data/node_modules/tar-stream/headers.js +295 -295
  698. data/node_modules/tar-stream/index.js +2 -2
  699. data/node_modules/tar-stream/pack.js +255 -255
  700. data/node_modules/tar-stream/package.json +58 -58
  701. data/node_modules/tar-stream/sandbox.js +11 -11
  702. data/node_modules/through/.travis.yml +5 -5
  703. data/node_modules/through/LICENSE.APACHE2 +15 -15
  704. data/node_modules/through/LICENSE.MIT +24 -24
  705. data/node_modules/through/index.js +108 -108
  706. data/node_modules/through/package.json +36 -36
  707. data/node_modules/through/readme.markdown +64 -64
  708. data/node_modules/through/test/async.js +28 -28
  709. data/node_modules/through/test/auto-destroy.js +30 -30
  710. data/node_modules/through/test/buffering.js +71 -71
  711. data/node_modules/through/test/end.js +45 -45
  712. data/node_modules/through/test/index.js +133 -133
  713. data/node_modules/tr46/.npmignore +4 -0
  714. data/node_modules/tr46/index.js +193 -0
  715. data/node_modules/tr46/lib/.gitkeep +0 -0
  716. data/node_modules/tr46/lib/mappingTable.json +1 -0
  717. data/node_modules/tr46/package.json +31 -0
  718. data/node_modules/unbzip2-stream/LICENSE +24 -24
  719. data/node_modules/unbzip2-stream/README.md +59 -59
  720. data/node_modules/unbzip2-stream/dist/unbzip2-stream.min.js +1 -1
  721. data/node_modules/unbzip2-stream/index.js +93 -92
  722. data/node_modules/unbzip2-stream/lib/bit_iterator.js +39 -39
  723. data/node_modules/unbzip2-stream/lib/bzip2.js +365 -367
  724. data/node_modules/unbzip2-stream/package.json +51 -51
  725. data/node_modules/util-deprecate/History.md +16 -16
  726. data/node_modules/util-deprecate/LICENSE +24 -24
  727. data/node_modules/util-deprecate/README.md +53 -53
  728. data/node_modules/util-deprecate/browser.js +67 -67
  729. data/node_modules/util-deprecate/node.js +6 -6
  730. data/node_modules/util-deprecate/package.json +27 -27
  731. data/node_modules/webidl-conversions/LICENSE.md +12 -0
  732. data/node_modules/webidl-conversions/README.md +53 -0
  733. data/node_modules/webidl-conversions/lib/index.js +189 -0
  734. data/node_modules/webidl-conversions/package.json +23 -0
  735. data/node_modules/whatwg-url/LICENSE.txt +21 -0
  736. data/node_modules/whatwg-url/README.md +67 -0
  737. data/node_modules/whatwg-url/lib/URL-impl.js +200 -0
  738. data/node_modules/whatwg-url/lib/URL.js +196 -0
  739. data/node_modules/whatwg-url/lib/public-api.js +11 -0
  740. data/node_modules/whatwg-url/lib/url-state-machine.js +1297 -0
  741. data/node_modules/whatwg-url/lib/utils.js +20 -0
  742. data/node_modules/whatwg-url/package.json +32 -0
  743. data/node_modules/wrappy/LICENSE +15 -15
  744. data/node_modules/wrappy/README.md +36 -36
  745. data/node_modules/wrappy/package.json +29 -29
  746. data/node_modules/wrappy/wrappy.js +33 -33
  747. data/node_modules/ws/LICENSE +19 -21
  748. data/node_modules/ws/README.md +493 -496
  749. data/node_modules/ws/browser.js +8 -8
  750. data/node_modules/ws/index.js +13 -10
  751. data/node_modules/ws/lib/buffer-util.js +126 -129
  752. data/node_modules/ws/lib/constants.js +12 -10
  753. data/node_modules/ws/lib/event-target.js +266 -184
  754. data/node_modules/ws/lib/extension.js +203 -223
  755. data/node_modules/ws/lib/limiter.js +55 -55
  756. data/node_modules/ws/lib/permessage-deflate.js +511 -517
  757. data/node_modules/ws/lib/receiver.js +612 -507
  758. data/node_modules/ws/lib/sender.js +422 -405
  759. data/node_modules/ws/lib/stream.js +180 -165
  760. data/node_modules/ws/lib/subprotocol.js +62 -0
  761. data/node_modules/ws/lib/validation.js +124 -104
  762. data/node_modules/ws/lib/websocket-server.js +485 -418
  763. data/node_modules/ws/lib/websocket.js +1149 -942
  764. data/node_modules/ws/package.json +61 -56
  765. data/node_modules/ws/wrapper.mjs +8 -0
  766. data/node_modules/yauzl/LICENSE +21 -21
  767. data/node_modules/yauzl/README.md +658 -658
  768. data/node_modules/yauzl/index.js +796 -796
  769. data/node_modules/yauzl/package.json +40 -40
  770. data/package.json +1 -1
  771. metadata +59 -61
  772. data/node_modules/.bin/mkdirp +0 -12
  773. data/node_modules/.bin/mkdirp.cmd +0 -17
  774. data/node_modules/.bin/mkdirp.ps1 +0 -28
  775. data/node_modules/devtools-protocol/changelog.md +0 -10491
  776. data/node_modules/devtools-protocol/externs/protocol_externs.js +0 -9734
  777. data/node_modules/minimist/.travis.yml +0 -8
  778. data/node_modules/minimist/LICENSE +0 -18
  779. data/node_modules/minimist/example/parse.js +0 -2
  780. data/node_modules/minimist/index.js +0 -245
  781. data/node_modules/minimist/package.json +0 -45
  782. data/node_modules/minimist/readme.markdown +0 -95
  783. data/node_modules/minimist/test/all_bool.js +0 -32
  784. data/node_modules/minimist/test/bool.js +0 -178
  785. data/node_modules/minimist/test/dash.js +0 -31
  786. data/node_modules/minimist/test/default_bool.js +0 -35
  787. data/node_modules/minimist/test/dotted.js +0 -22
  788. data/node_modules/minimist/test/kv_short.js +0 -16
  789. data/node_modules/minimist/test/long.js +0 -31
  790. data/node_modules/minimist/test/num.js +0 -36
  791. data/node_modules/minimist/test/parse.js +0 -197
  792. data/node_modules/minimist/test/parse_modified.js +0 -9
  793. data/node_modules/minimist/test/proto.js +0 -44
  794. data/node_modules/minimist/test/short.js +0 -67
  795. data/node_modules/minimist/test/stop_early.js +0 -15
  796. data/node_modules/minimist/test/unknown.js +0 -102
  797. data/node_modules/minimist/test/whitespace.js +0 -8
  798. data/node_modules/mkdirp/bin/cmd.js +0 -33
  799. data/node_modules/mkdirp/bin/usage.txt +0 -12
  800. data/node_modules/mkdirp/package.json +0 -34
  801. data/node_modules/mkdirp/readme.markdown +0 -100
  802. data/node_modules/node-fetch/CHANGELOG.md +0 -272
@@ -1,492 +1,492 @@
1
- 'use strict'
2
-
3
- const tape = require('tape')
4
- const BufferList = require('../')
5
- const { Buffer } = require('buffer')
6
-
7
- tape('indexOf single byte needle', (t) => {
8
- const bl = new BufferList(['abcdefg', 'abcdefg', '12345'])
9
-
10
- t.equal(bl.indexOf('e'), 4)
11
- t.equal(bl.indexOf('e', 5), 11)
12
- t.equal(bl.indexOf('e', 12), -1)
13
- t.equal(bl.indexOf('5'), 18)
14
-
15
- t.end()
16
- })
17
-
18
- tape('indexOf multiple byte needle', (t) => {
19
- const bl = new BufferList(['abcdefg', 'abcdefg'])
20
-
21
- t.equal(bl.indexOf('ef'), 4)
22
- t.equal(bl.indexOf('ef', 5), 11)
23
-
24
- t.end()
25
- })
26
-
27
- tape('indexOf multiple byte needles across buffer boundaries', (t) => {
28
- const bl = new BufferList(['abcdefg', 'abcdefg'])
29
-
30
- t.equal(bl.indexOf('fgabc'), 5)
31
-
32
- t.end()
33
- })
34
-
35
- tape('indexOf takes a Uint8Array search', (t) => {
36
- const bl = new BufferList(['abcdefg', 'abcdefg'])
37
- const search = new Uint8Array([102, 103, 97, 98, 99]) // fgabc
38
-
39
- t.equal(bl.indexOf(search), 5)
40
-
41
- t.end()
42
- })
43
-
44
- tape('indexOf takes a buffer list search', (t) => {
45
- const bl = new BufferList(['abcdefg', 'abcdefg'])
46
- const search = new BufferList('fgabc')
47
-
48
- t.equal(bl.indexOf(search), 5)
49
-
50
- t.end()
51
- })
52
-
53
- tape('indexOf a zero byte needle', (t) => {
54
- const b = new BufferList('abcdef')
55
- const bufEmpty = Buffer.from('')
56
-
57
- t.equal(b.indexOf(''), 0)
58
- t.equal(b.indexOf('', 1), 1)
59
- t.equal(b.indexOf('', b.length + 1), b.length)
60
- t.equal(b.indexOf('', Infinity), b.length)
61
- t.equal(b.indexOf(bufEmpty), 0)
62
- t.equal(b.indexOf(bufEmpty, 1), 1)
63
- t.equal(b.indexOf(bufEmpty, b.length + 1), b.length)
64
- t.equal(b.indexOf(bufEmpty, Infinity), b.length)
65
-
66
- t.end()
67
- })
68
-
69
- tape('indexOf buffers smaller and larger than the needle', (t) => {
70
- const bl = new BufferList(['abcdefg', 'a', 'bcdefg', 'a', 'bcfgab'])
71
-
72
- t.equal(bl.indexOf('fgabc'), 5)
73
- t.equal(bl.indexOf('fgabc', 6), 12)
74
- t.equal(bl.indexOf('fgabc', 13), -1)
75
-
76
- t.end()
77
- })
78
-
79
- // only present in node 6+
80
- ;(process.version.substr(1).split('.')[0] >= 6) && tape('indexOf latin1 and binary encoding', (t) => {
81
- const b = new BufferList('abcdef')
82
-
83
- // test latin1 encoding
84
- t.equal(
85
- new BufferList(Buffer.from(b.toString('latin1'), 'latin1'))
86
- .indexOf('d', 0, 'latin1'),
87
- 3
88
- )
89
- t.equal(
90
- new BufferList(Buffer.from(b.toString('latin1'), 'latin1'))
91
- .indexOf(Buffer.from('d', 'latin1'), 0, 'latin1'),
92
- 3
93
- )
94
- t.equal(
95
- new BufferList(Buffer.from('aa\u00e8aa', 'latin1'))
96
- .indexOf('\u00e8', 'latin1'),
97
- 2
98
- )
99
- t.equal(
100
- new BufferList(Buffer.from('\u00e8', 'latin1'))
101
- .indexOf('\u00e8', 'latin1'),
102
- 0
103
- )
104
- t.equal(
105
- new BufferList(Buffer.from('\u00e8', 'latin1'))
106
- .indexOf(Buffer.from('\u00e8', 'latin1'), 'latin1'),
107
- 0
108
- )
109
-
110
- // test binary encoding
111
- t.equal(
112
- new BufferList(Buffer.from(b.toString('binary'), 'binary'))
113
- .indexOf('d', 0, 'binary'),
114
- 3
115
- )
116
- t.equal(
117
- new BufferList(Buffer.from(b.toString('binary'), 'binary'))
118
- .indexOf(Buffer.from('d', 'binary'), 0, 'binary'),
119
- 3
120
- )
121
- t.equal(
122
- new BufferList(Buffer.from('aa\u00e8aa', 'binary'))
123
- .indexOf('\u00e8', 'binary'),
124
- 2
125
- )
126
- t.equal(
127
- new BufferList(Buffer.from('\u00e8', 'binary'))
128
- .indexOf('\u00e8', 'binary'),
129
- 0
130
- )
131
- t.equal(
132
- new BufferList(Buffer.from('\u00e8', 'binary'))
133
- .indexOf(Buffer.from('\u00e8', 'binary'), 'binary'),
134
- 0
135
- )
136
-
137
- t.end()
138
- })
139
-
140
- tape('indexOf the entire nodejs10 buffer test suite', (t) => {
141
- const b = new BufferList('abcdef')
142
- const bufA = Buffer.from('a')
143
- const bufBc = Buffer.from('bc')
144
- const bufF = Buffer.from('f')
145
- const bufZ = Buffer.from('z')
146
-
147
- const stringComparison = 'abcdef'
148
-
149
- t.equal(b.indexOf('a'), 0)
150
- t.equal(b.indexOf('a', 1), -1)
151
- t.equal(b.indexOf('a', -1), -1)
152
- t.equal(b.indexOf('a', -4), -1)
153
- t.equal(b.indexOf('a', -b.length), 0)
154
- t.equal(b.indexOf('a', NaN), 0)
155
- t.equal(b.indexOf('a', -Infinity), 0)
156
- t.equal(b.indexOf('a', Infinity), -1)
157
- t.equal(b.indexOf('bc'), 1)
158
- t.equal(b.indexOf('bc', 2), -1)
159
- t.equal(b.indexOf('bc', -1), -1)
160
- t.equal(b.indexOf('bc', -3), -1)
161
- t.equal(b.indexOf('bc', -5), 1)
162
- t.equal(b.indexOf('bc', NaN), 1)
163
- t.equal(b.indexOf('bc', -Infinity), 1)
164
- t.equal(b.indexOf('bc', Infinity), -1)
165
- t.equal(b.indexOf('f'), b.length - 1)
166
- t.equal(b.indexOf('z'), -1)
167
-
168
- // empty search tests
169
- t.equal(b.indexOf(bufA), 0)
170
- t.equal(b.indexOf(bufA, 1), -1)
171
- t.equal(b.indexOf(bufA, -1), -1)
172
- t.equal(b.indexOf(bufA, -4), -1)
173
- t.equal(b.indexOf(bufA, -b.length), 0)
174
- t.equal(b.indexOf(bufA, NaN), 0)
175
- t.equal(b.indexOf(bufA, -Infinity), 0)
176
- t.equal(b.indexOf(bufA, Infinity), -1)
177
- t.equal(b.indexOf(bufBc), 1)
178
- t.equal(b.indexOf(bufBc, 2), -1)
179
- t.equal(b.indexOf(bufBc, -1), -1)
180
- t.equal(b.indexOf(bufBc, -3), -1)
181
- t.equal(b.indexOf(bufBc, -5), 1)
182
- t.equal(b.indexOf(bufBc, NaN), 1)
183
- t.equal(b.indexOf(bufBc, -Infinity), 1)
184
- t.equal(b.indexOf(bufBc, Infinity), -1)
185
- t.equal(b.indexOf(bufF), b.length - 1)
186
- t.equal(b.indexOf(bufZ), -1)
187
- t.equal(b.indexOf(0x61), 0)
188
- t.equal(b.indexOf(0x61, 1), -1)
189
- t.equal(b.indexOf(0x61, -1), -1)
190
- t.equal(b.indexOf(0x61, -4), -1)
191
- t.equal(b.indexOf(0x61, -b.length), 0)
192
- t.equal(b.indexOf(0x61, NaN), 0)
193
- t.equal(b.indexOf(0x61, -Infinity), 0)
194
- t.equal(b.indexOf(0x61, Infinity), -1)
195
- t.equal(b.indexOf(0x0), -1)
196
-
197
- // test offsets
198
- t.equal(b.indexOf('d', 2), 3)
199
- t.equal(b.indexOf('f', 5), 5)
200
- t.equal(b.indexOf('f', -1), 5)
201
- t.equal(b.indexOf('f', 6), -1)
202
-
203
- t.equal(b.indexOf(Buffer.from('d'), 2), 3)
204
- t.equal(b.indexOf(Buffer.from('f'), 5), 5)
205
- t.equal(b.indexOf(Buffer.from('f'), -1), 5)
206
- t.equal(b.indexOf(Buffer.from('f'), 6), -1)
207
-
208
- t.equal(Buffer.from('ff').indexOf(Buffer.from('f'), 1, 'ucs2'), -1)
209
-
210
- // test invalid and uppercase encoding
211
- t.equal(b.indexOf('b', 'utf8'), 1)
212
- t.equal(b.indexOf('b', 'UTF8'), 1)
213
- t.equal(b.indexOf('62', 'HEX'), 1)
214
- t.throws(() => b.indexOf('bad', 'enc'), TypeError)
215
-
216
- // test hex encoding
217
- t.equal(
218
- Buffer.from(b.toString('hex'), 'hex')
219
- .indexOf('64', 0, 'hex'),
220
- 3
221
- )
222
- t.equal(
223
- Buffer.from(b.toString('hex'), 'hex')
224
- .indexOf(Buffer.from('64', 'hex'), 0, 'hex'),
225
- 3
226
- )
227
-
228
- // test base64 encoding
229
- t.equal(
230
- Buffer.from(b.toString('base64'), 'base64')
231
- .indexOf('ZA==', 0, 'base64'),
232
- 3
233
- )
234
- t.equal(
235
- Buffer.from(b.toString('base64'), 'base64')
236
- .indexOf(Buffer.from('ZA==', 'base64'), 0, 'base64'),
237
- 3
238
- )
239
-
240
- // test ascii encoding
241
- t.equal(
242
- Buffer.from(b.toString('ascii'), 'ascii')
243
- .indexOf('d', 0, 'ascii'),
244
- 3
245
- )
246
- t.equal(
247
- Buffer.from(b.toString('ascii'), 'ascii')
248
- .indexOf(Buffer.from('d', 'ascii'), 0, 'ascii'),
249
- 3
250
- )
251
-
252
- // test optional offset with passed encoding
253
- t.equal(Buffer.from('aaaa0').indexOf('30', 'hex'), 4)
254
- t.equal(Buffer.from('aaaa00a').indexOf('3030', 'hex'), 4)
255
-
256
- {
257
- // test usc2 encoding
258
- const twoByteString = Buffer.from('\u039a\u0391\u03a3\u03a3\u0395', 'ucs2')
259
-
260
- t.equal(8, twoByteString.indexOf('\u0395', 4, 'ucs2'))
261
- t.equal(6, twoByteString.indexOf('\u03a3', -4, 'ucs2'))
262
- t.equal(4, twoByteString.indexOf('\u03a3', -6, 'ucs2'))
263
- t.equal(4, twoByteString.indexOf(
264
- Buffer.from('\u03a3', 'ucs2'), -6, 'ucs2'))
265
- t.equal(-1, twoByteString.indexOf('\u03a3', -2, 'ucs2'))
266
- }
267
-
268
- const mixedByteStringUcs2 =
269
- Buffer.from('\u039a\u0391abc\u03a3\u03a3\u0395', 'ucs2')
270
-
271
- t.equal(6, mixedByteStringUcs2.indexOf('bc', 0, 'ucs2'))
272
- t.equal(10, mixedByteStringUcs2.indexOf('\u03a3', 0, 'ucs2'))
273
- t.equal(-1, mixedByteStringUcs2.indexOf('\u0396', 0, 'ucs2'))
274
-
275
- t.equal(
276
- 6, mixedByteStringUcs2.indexOf(Buffer.from('bc', 'ucs2'), 0, 'ucs2'))
277
- t.equal(
278
- 10, mixedByteStringUcs2.indexOf(Buffer.from('\u03a3', 'ucs2'), 0, 'ucs2'))
279
- t.equal(
280
- -1, mixedByteStringUcs2.indexOf(Buffer.from('\u0396', 'ucs2'), 0, 'ucs2'))
281
-
282
- {
283
- const twoByteString = Buffer.from('\u039a\u0391\u03a3\u03a3\u0395', 'ucs2')
284
-
285
- // Test single char pattern
286
- t.equal(0, twoByteString.indexOf('\u039a', 0, 'ucs2'))
287
- let index = twoByteString.indexOf('\u0391', 0, 'ucs2')
288
- t.equal(2, index, `Alpha - at index ${index}`)
289
- index = twoByteString.indexOf('\u03a3', 0, 'ucs2')
290
- t.equal(4, index, `First Sigma - at index ${index}`)
291
- index = twoByteString.indexOf('\u03a3', 6, 'ucs2')
292
- t.equal(6, index, `Second Sigma - at index ${index}`)
293
- index = twoByteString.indexOf('\u0395', 0, 'ucs2')
294
- t.equal(8, index, `Epsilon - at index ${index}`)
295
- index = twoByteString.indexOf('\u0392', 0, 'ucs2')
296
- t.equal(-1, index, `Not beta - at index ${index}`)
297
-
298
- // Test multi-char pattern
299
- index = twoByteString.indexOf('\u039a\u0391', 0, 'ucs2')
300
- t.equal(0, index, `Lambda Alpha - at index ${index}`)
301
- index = twoByteString.indexOf('\u0391\u03a3', 0, 'ucs2')
302
- t.equal(2, index, `Alpha Sigma - at index ${index}`)
303
- index = twoByteString.indexOf('\u03a3\u03a3', 0, 'ucs2')
304
- t.equal(4, index, `Sigma Sigma - at index ${index}`)
305
- index = twoByteString.indexOf('\u03a3\u0395', 0, 'ucs2')
306
- t.equal(6, index, `Sigma Epsilon - at index ${index}`)
307
- }
308
-
309
- const mixedByteStringUtf8 = Buffer.from('\u039a\u0391abc\u03a3\u03a3\u0395')
310
-
311
- t.equal(5, mixedByteStringUtf8.indexOf('bc'))
312
- t.equal(5, mixedByteStringUtf8.indexOf('bc', 5))
313
- t.equal(5, mixedByteStringUtf8.indexOf('bc', -8))
314
- t.equal(7, mixedByteStringUtf8.indexOf('\u03a3'))
315
- t.equal(-1, mixedByteStringUtf8.indexOf('\u0396'))
316
-
317
- // Test complex string indexOf algorithms. Only trigger for long strings.
318
- // Long string that isn't a simple repeat of a shorter string.
319
- let longString = 'A'
320
- for (let i = 66; i < 76; i++) { // from 'B' to 'K'
321
- longString = longString + String.fromCharCode(i) + longString
322
- }
323
-
324
- const longBufferString = Buffer.from(longString)
325
-
326
- // pattern of 15 chars, repeated every 16 chars in long
327
- let pattern = 'ABACABADABACABA'
328
- for (let i = 0; i < longBufferString.length - pattern.length; i += 7) {
329
- const index = longBufferString.indexOf(pattern, i)
330
- t.equal((i + 15) & ~0xf, index,
331
- `Long ABACABA...-string at index ${i}`)
332
- }
333
-
334
- let index = longBufferString.indexOf('AJABACA')
335
- t.equal(510, index, `Long AJABACA, First J - at index ${index}`)
336
- index = longBufferString.indexOf('AJABACA', 511)
337
- t.equal(1534, index, `Long AJABACA, Second J - at index ${index}`)
338
-
339
- pattern = 'JABACABADABACABA'
340
- index = longBufferString.indexOf(pattern)
341
- t.equal(511, index, `Long JABACABA..., First J - at index ${index}`)
342
- index = longBufferString.indexOf(pattern, 512)
343
- t.equal(
344
- 1535, index, `Long JABACABA..., Second J - at index ${index}`)
345
-
346
- // Search for a non-ASCII string in a pure ASCII string.
347
- const asciiString = Buffer.from(
348
- 'somethingnotatallsinisterwhichalsoworks')
349
- t.equal(-1, asciiString.indexOf('\x2061'))
350
- t.equal(3, asciiString.indexOf('eth', 0))
351
-
352
- // Search in string containing many non-ASCII chars.
353
- const allCodePoints = []
354
- for (let i = 0; i < 65536; i++) {
355
- allCodePoints[i] = i
356
- }
357
-
358
- const allCharsString = String.fromCharCode.apply(String, allCodePoints)
359
- const allCharsBufferUtf8 = Buffer.from(allCharsString)
360
- const allCharsBufferUcs2 = Buffer.from(allCharsString, 'ucs2')
361
-
362
- // Search for string long enough to trigger complex search with ASCII pattern
363
- // and UC16 subject.
364
- t.equal(-1, allCharsBufferUtf8.indexOf('notfound'))
365
- t.equal(-1, allCharsBufferUcs2.indexOf('notfound'))
366
-
367
- // Needle is longer than haystack, but only because it's encoded as UTF-16
368
- t.equal(Buffer.from('aaaa').indexOf('a'.repeat(4), 'ucs2'), -1)
369
-
370
- t.equal(Buffer.from('aaaa').indexOf('a'.repeat(4), 'utf8'), 0)
371
- t.equal(Buffer.from('aaaa').indexOf('你好', 'ucs2'), -1)
372
-
373
- // Haystack has odd length, but the needle is UCS2.
374
- t.equal(Buffer.from('aaaaa').indexOf('b', 'ucs2'), -1)
375
-
376
- {
377
- // Find substrings in Utf8.
378
- const lengths = [1, 3, 15] // Single char, simple and complex.
379
- const indices = [0x5, 0x60, 0x400, 0x680, 0x7ee, 0xFF02, 0x16610, 0x2f77b]
380
- for (let lengthIndex = 0; lengthIndex < lengths.length; lengthIndex++) {
381
- for (let i = 0; i < indices.length; i++) {
382
- const index = indices[i]
383
- let length = lengths[lengthIndex]
384
-
385
- if (index + length > 0x7F) {
386
- length = 2 * length
387
- }
388
-
389
- if (index + length > 0x7FF) {
390
- length = 3 * length
391
- }
392
-
393
- if (index + length > 0xFFFF) {
394
- length = 4 * length
395
- }
396
-
397
- const patternBufferUtf8 = allCharsBufferUtf8.slice(index, index + length)
398
- t.equal(index, allCharsBufferUtf8.indexOf(patternBufferUtf8))
399
-
400
- const patternStringUtf8 = patternBufferUtf8.toString()
401
- t.equal(index, allCharsBufferUtf8.indexOf(patternStringUtf8))
402
- }
403
- }
404
- }
405
-
406
- {
407
- // Find substrings in Usc2.
408
- const lengths = [2, 4, 16] // Single char, simple and complex.
409
- const indices = [0x5, 0x65, 0x105, 0x205, 0x285, 0x2005, 0x2085, 0xfff0]
410
-
411
- for (let lengthIndex = 0; lengthIndex < lengths.length; lengthIndex++) {
412
- for (let i = 0; i < indices.length; i++) {
413
- const index = indices[i] * 2
414
- const length = lengths[lengthIndex]
415
-
416
- const patternBufferUcs2 =
417
- allCharsBufferUcs2.slice(index, index + length)
418
- t.equal(
419
- index, allCharsBufferUcs2.indexOf(patternBufferUcs2, 0, 'ucs2'))
420
-
421
- const patternStringUcs2 = patternBufferUcs2.toString('ucs2')
422
- t.equal(
423
- index, allCharsBufferUcs2.indexOf(patternStringUcs2, 0, 'ucs2'))
424
- }
425
- }
426
- }
427
-
428
- [
429
- () => {},
430
- {},
431
- []
432
- ].forEach((val) => {
433
- t.throws(() => b.indexOf(val), TypeError, `"${JSON.stringify(val)}" should throw`)
434
- })
435
-
436
- // Test weird offset arguments.
437
- // The following offsets coerce to NaN or 0, searching the whole Buffer
438
- t.equal(b.indexOf('b', undefined), 1)
439
- t.equal(b.indexOf('b', {}), 1)
440
- t.equal(b.indexOf('b', 0), 1)
441
- t.equal(b.indexOf('b', null), 1)
442
- t.equal(b.indexOf('b', []), 1)
443
-
444
- // The following offset coerces to 2, in other words +[2] === 2
445
- t.equal(b.indexOf('b', [2]), -1)
446
-
447
- // Behavior should match String.indexOf()
448
- t.equal(
449
- b.indexOf('b', undefined),
450
- stringComparison.indexOf('b', undefined))
451
- t.equal(
452
- b.indexOf('b', {}),
453
- stringComparison.indexOf('b', {}))
454
- t.equal(
455
- b.indexOf('b', 0),
456
- stringComparison.indexOf('b', 0))
457
- t.equal(
458
- b.indexOf('b', null),
459
- stringComparison.indexOf('b', null))
460
- t.equal(
461
- b.indexOf('b', []),
462
- stringComparison.indexOf('b', []))
463
- t.equal(
464
- b.indexOf('b', [2]),
465
- stringComparison.indexOf('b', [2]))
466
-
467
- // test truncation of Number arguments to uint8
468
- {
469
- const buf = Buffer.from('this is a test')
470
-
471
- t.equal(buf.indexOf(0x6973), 3)
472
- t.equal(buf.indexOf(0x697320), 4)
473
- t.equal(buf.indexOf(0x69732069), 2)
474
- t.equal(buf.indexOf(0x697374657374), 0)
475
- t.equal(buf.indexOf(0x69737374), 0)
476
- t.equal(buf.indexOf(0x69737465), 11)
477
- t.equal(buf.indexOf(0x69737465), 11)
478
- t.equal(buf.indexOf(-140), 0)
479
- t.equal(buf.indexOf(-152), 1)
480
- t.equal(buf.indexOf(0xff), -1)
481
- t.equal(buf.indexOf(0xffff), -1)
482
- }
483
-
484
- // Test that Uint8Array arguments are okay.
485
- {
486
- const needle = new Uint8Array([0x66, 0x6f, 0x6f])
487
- const haystack = new BufferList(Buffer.from('a foo b foo'))
488
- t.equal(haystack.indexOf(needle), 2)
489
- }
490
-
491
- t.end()
492
- })
1
+ 'use strict'
2
+
3
+ const tape = require('tape')
4
+ const BufferList = require('../')
5
+ const { Buffer } = require('buffer')
6
+
7
+ tape('indexOf single byte needle', (t) => {
8
+ const bl = new BufferList(['abcdefg', 'abcdefg', '12345'])
9
+
10
+ t.equal(bl.indexOf('e'), 4)
11
+ t.equal(bl.indexOf('e', 5), 11)
12
+ t.equal(bl.indexOf('e', 12), -1)
13
+ t.equal(bl.indexOf('5'), 18)
14
+
15
+ t.end()
16
+ })
17
+
18
+ tape('indexOf multiple byte needle', (t) => {
19
+ const bl = new BufferList(['abcdefg', 'abcdefg'])
20
+
21
+ t.equal(bl.indexOf('ef'), 4)
22
+ t.equal(bl.indexOf('ef', 5), 11)
23
+
24
+ t.end()
25
+ })
26
+
27
+ tape('indexOf multiple byte needles across buffer boundaries', (t) => {
28
+ const bl = new BufferList(['abcdefg', 'abcdefg'])
29
+
30
+ t.equal(bl.indexOf('fgabc'), 5)
31
+
32
+ t.end()
33
+ })
34
+
35
+ tape('indexOf takes a Uint8Array search', (t) => {
36
+ const bl = new BufferList(['abcdefg', 'abcdefg'])
37
+ const search = new Uint8Array([102, 103, 97, 98, 99]) // fgabc
38
+
39
+ t.equal(bl.indexOf(search), 5)
40
+
41
+ t.end()
42
+ })
43
+
44
+ tape('indexOf takes a buffer list search', (t) => {
45
+ const bl = new BufferList(['abcdefg', 'abcdefg'])
46
+ const search = new BufferList('fgabc')
47
+
48
+ t.equal(bl.indexOf(search), 5)
49
+
50
+ t.end()
51
+ })
52
+
53
+ tape('indexOf a zero byte needle', (t) => {
54
+ const b = new BufferList('abcdef')
55
+ const bufEmpty = Buffer.from('')
56
+
57
+ t.equal(b.indexOf(''), 0)
58
+ t.equal(b.indexOf('', 1), 1)
59
+ t.equal(b.indexOf('', b.length + 1), b.length)
60
+ t.equal(b.indexOf('', Infinity), b.length)
61
+ t.equal(b.indexOf(bufEmpty), 0)
62
+ t.equal(b.indexOf(bufEmpty, 1), 1)
63
+ t.equal(b.indexOf(bufEmpty, b.length + 1), b.length)
64
+ t.equal(b.indexOf(bufEmpty, Infinity), b.length)
65
+
66
+ t.end()
67
+ })
68
+
69
+ tape('indexOf buffers smaller and larger than the needle', (t) => {
70
+ const bl = new BufferList(['abcdefg', 'a', 'bcdefg', 'a', 'bcfgab'])
71
+
72
+ t.equal(bl.indexOf('fgabc'), 5)
73
+ t.equal(bl.indexOf('fgabc', 6), 12)
74
+ t.equal(bl.indexOf('fgabc', 13), -1)
75
+
76
+ t.end()
77
+ })
78
+
79
+ // only present in node 6+
80
+ ;(process.version.substr(1).split('.')[0] >= 6) && tape('indexOf latin1 and binary encoding', (t) => {
81
+ const b = new BufferList('abcdef')
82
+
83
+ // test latin1 encoding
84
+ t.equal(
85
+ new BufferList(Buffer.from(b.toString('latin1'), 'latin1'))
86
+ .indexOf('d', 0, 'latin1'),
87
+ 3
88
+ )
89
+ t.equal(
90
+ new BufferList(Buffer.from(b.toString('latin1'), 'latin1'))
91
+ .indexOf(Buffer.from('d', 'latin1'), 0, 'latin1'),
92
+ 3
93
+ )
94
+ t.equal(
95
+ new BufferList(Buffer.from('aa\u00e8aa', 'latin1'))
96
+ .indexOf('\u00e8', 'latin1'),
97
+ 2
98
+ )
99
+ t.equal(
100
+ new BufferList(Buffer.from('\u00e8', 'latin1'))
101
+ .indexOf('\u00e8', 'latin1'),
102
+ 0
103
+ )
104
+ t.equal(
105
+ new BufferList(Buffer.from('\u00e8', 'latin1'))
106
+ .indexOf(Buffer.from('\u00e8', 'latin1'), 'latin1'),
107
+ 0
108
+ )
109
+
110
+ // test binary encoding
111
+ t.equal(
112
+ new BufferList(Buffer.from(b.toString('binary'), 'binary'))
113
+ .indexOf('d', 0, 'binary'),
114
+ 3
115
+ )
116
+ t.equal(
117
+ new BufferList(Buffer.from(b.toString('binary'), 'binary'))
118
+ .indexOf(Buffer.from('d', 'binary'), 0, 'binary'),
119
+ 3
120
+ )
121
+ t.equal(
122
+ new BufferList(Buffer.from('aa\u00e8aa', 'binary'))
123
+ .indexOf('\u00e8', 'binary'),
124
+ 2
125
+ )
126
+ t.equal(
127
+ new BufferList(Buffer.from('\u00e8', 'binary'))
128
+ .indexOf('\u00e8', 'binary'),
129
+ 0
130
+ )
131
+ t.equal(
132
+ new BufferList(Buffer.from('\u00e8', 'binary'))
133
+ .indexOf(Buffer.from('\u00e8', 'binary'), 'binary'),
134
+ 0
135
+ )
136
+
137
+ t.end()
138
+ })
139
+
140
+ tape('indexOf the entire nodejs10 buffer test suite', (t) => {
141
+ const b = new BufferList('abcdef')
142
+ const bufA = Buffer.from('a')
143
+ const bufBc = Buffer.from('bc')
144
+ const bufF = Buffer.from('f')
145
+ const bufZ = Buffer.from('z')
146
+
147
+ const stringComparison = 'abcdef'
148
+
149
+ t.equal(b.indexOf('a'), 0)
150
+ t.equal(b.indexOf('a', 1), -1)
151
+ t.equal(b.indexOf('a', -1), -1)
152
+ t.equal(b.indexOf('a', -4), -1)
153
+ t.equal(b.indexOf('a', -b.length), 0)
154
+ t.equal(b.indexOf('a', NaN), 0)
155
+ t.equal(b.indexOf('a', -Infinity), 0)
156
+ t.equal(b.indexOf('a', Infinity), -1)
157
+ t.equal(b.indexOf('bc'), 1)
158
+ t.equal(b.indexOf('bc', 2), -1)
159
+ t.equal(b.indexOf('bc', -1), -1)
160
+ t.equal(b.indexOf('bc', -3), -1)
161
+ t.equal(b.indexOf('bc', -5), 1)
162
+ t.equal(b.indexOf('bc', NaN), 1)
163
+ t.equal(b.indexOf('bc', -Infinity), 1)
164
+ t.equal(b.indexOf('bc', Infinity), -1)
165
+ t.equal(b.indexOf('f'), b.length - 1)
166
+ t.equal(b.indexOf('z'), -1)
167
+
168
+ // empty search tests
169
+ t.equal(b.indexOf(bufA), 0)
170
+ t.equal(b.indexOf(bufA, 1), -1)
171
+ t.equal(b.indexOf(bufA, -1), -1)
172
+ t.equal(b.indexOf(bufA, -4), -1)
173
+ t.equal(b.indexOf(bufA, -b.length), 0)
174
+ t.equal(b.indexOf(bufA, NaN), 0)
175
+ t.equal(b.indexOf(bufA, -Infinity), 0)
176
+ t.equal(b.indexOf(bufA, Infinity), -1)
177
+ t.equal(b.indexOf(bufBc), 1)
178
+ t.equal(b.indexOf(bufBc, 2), -1)
179
+ t.equal(b.indexOf(bufBc, -1), -1)
180
+ t.equal(b.indexOf(bufBc, -3), -1)
181
+ t.equal(b.indexOf(bufBc, -5), 1)
182
+ t.equal(b.indexOf(bufBc, NaN), 1)
183
+ t.equal(b.indexOf(bufBc, -Infinity), 1)
184
+ t.equal(b.indexOf(bufBc, Infinity), -1)
185
+ t.equal(b.indexOf(bufF), b.length - 1)
186
+ t.equal(b.indexOf(bufZ), -1)
187
+ t.equal(b.indexOf(0x61), 0)
188
+ t.equal(b.indexOf(0x61, 1), -1)
189
+ t.equal(b.indexOf(0x61, -1), -1)
190
+ t.equal(b.indexOf(0x61, -4), -1)
191
+ t.equal(b.indexOf(0x61, -b.length), 0)
192
+ t.equal(b.indexOf(0x61, NaN), 0)
193
+ t.equal(b.indexOf(0x61, -Infinity), 0)
194
+ t.equal(b.indexOf(0x61, Infinity), -1)
195
+ t.equal(b.indexOf(0x0), -1)
196
+
197
+ // test offsets
198
+ t.equal(b.indexOf('d', 2), 3)
199
+ t.equal(b.indexOf('f', 5), 5)
200
+ t.equal(b.indexOf('f', -1), 5)
201
+ t.equal(b.indexOf('f', 6), -1)
202
+
203
+ t.equal(b.indexOf(Buffer.from('d'), 2), 3)
204
+ t.equal(b.indexOf(Buffer.from('f'), 5), 5)
205
+ t.equal(b.indexOf(Buffer.from('f'), -1), 5)
206
+ t.equal(b.indexOf(Buffer.from('f'), 6), -1)
207
+
208
+ t.equal(Buffer.from('ff').indexOf(Buffer.from('f'), 1, 'ucs2'), -1)
209
+
210
+ // test invalid and uppercase encoding
211
+ t.equal(b.indexOf('b', 'utf8'), 1)
212
+ t.equal(b.indexOf('b', 'UTF8'), 1)
213
+ t.equal(b.indexOf('62', 'HEX'), 1)
214
+ t.throws(() => b.indexOf('bad', 'enc'), TypeError)
215
+
216
+ // test hex encoding
217
+ t.equal(
218
+ Buffer.from(b.toString('hex'), 'hex')
219
+ .indexOf('64', 0, 'hex'),
220
+ 3
221
+ )
222
+ t.equal(
223
+ Buffer.from(b.toString('hex'), 'hex')
224
+ .indexOf(Buffer.from('64', 'hex'), 0, 'hex'),
225
+ 3
226
+ )
227
+
228
+ // test base64 encoding
229
+ t.equal(
230
+ Buffer.from(b.toString('base64'), 'base64')
231
+ .indexOf('ZA==', 0, 'base64'),
232
+ 3
233
+ )
234
+ t.equal(
235
+ Buffer.from(b.toString('base64'), 'base64')
236
+ .indexOf(Buffer.from('ZA==', 'base64'), 0, 'base64'),
237
+ 3
238
+ )
239
+
240
+ // test ascii encoding
241
+ t.equal(
242
+ Buffer.from(b.toString('ascii'), 'ascii')
243
+ .indexOf('d', 0, 'ascii'),
244
+ 3
245
+ )
246
+ t.equal(
247
+ Buffer.from(b.toString('ascii'), 'ascii')
248
+ .indexOf(Buffer.from('d', 'ascii'), 0, 'ascii'),
249
+ 3
250
+ )
251
+
252
+ // test optional offset with passed encoding
253
+ t.equal(Buffer.from('aaaa0').indexOf('30', 'hex'), 4)
254
+ t.equal(Buffer.from('aaaa00a').indexOf('3030', 'hex'), 4)
255
+
256
+ {
257
+ // test usc2 encoding
258
+ const twoByteString = Buffer.from('\u039a\u0391\u03a3\u03a3\u0395', 'ucs2')
259
+
260
+ t.equal(8, twoByteString.indexOf('\u0395', 4, 'ucs2'))
261
+ t.equal(6, twoByteString.indexOf('\u03a3', -4, 'ucs2'))
262
+ t.equal(4, twoByteString.indexOf('\u03a3', -6, 'ucs2'))
263
+ t.equal(4, twoByteString.indexOf(
264
+ Buffer.from('\u03a3', 'ucs2'), -6, 'ucs2'))
265
+ t.equal(-1, twoByteString.indexOf('\u03a3', -2, 'ucs2'))
266
+ }
267
+
268
+ const mixedByteStringUcs2 =
269
+ Buffer.from('\u039a\u0391abc\u03a3\u03a3\u0395', 'ucs2')
270
+
271
+ t.equal(6, mixedByteStringUcs2.indexOf('bc', 0, 'ucs2'))
272
+ t.equal(10, mixedByteStringUcs2.indexOf('\u03a3', 0, 'ucs2'))
273
+ t.equal(-1, mixedByteStringUcs2.indexOf('\u0396', 0, 'ucs2'))
274
+
275
+ t.equal(
276
+ 6, mixedByteStringUcs2.indexOf(Buffer.from('bc', 'ucs2'), 0, 'ucs2'))
277
+ t.equal(
278
+ 10, mixedByteStringUcs2.indexOf(Buffer.from('\u03a3', 'ucs2'), 0, 'ucs2'))
279
+ t.equal(
280
+ -1, mixedByteStringUcs2.indexOf(Buffer.from('\u0396', 'ucs2'), 0, 'ucs2'))
281
+
282
+ {
283
+ const twoByteString = Buffer.from('\u039a\u0391\u03a3\u03a3\u0395', 'ucs2')
284
+
285
+ // Test single char pattern
286
+ t.equal(0, twoByteString.indexOf('\u039a', 0, 'ucs2'))
287
+ let index = twoByteString.indexOf('\u0391', 0, 'ucs2')
288
+ t.equal(2, index, `Alpha - at index ${index}`)
289
+ index = twoByteString.indexOf('\u03a3', 0, 'ucs2')
290
+ t.equal(4, index, `First Sigma - at index ${index}`)
291
+ index = twoByteString.indexOf('\u03a3', 6, 'ucs2')
292
+ t.equal(6, index, `Second Sigma - at index ${index}`)
293
+ index = twoByteString.indexOf('\u0395', 0, 'ucs2')
294
+ t.equal(8, index, `Epsilon - at index ${index}`)
295
+ index = twoByteString.indexOf('\u0392', 0, 'ucs2')
296
+ t.equal(-1, index, `Not beta - at index ${index}`)
297
+
298
+ // Test multi-char pattern
299
+ index = twoByteString.indexOf('\u039a\u0391', 0, 'ucs2')
300
+ t.equal(0, index, `Lambda Alpha - at index ${index}`)
301
+ index = twoByteString.indexOf('\u0391\u03a3', 0, 'ucs2')
302
+ t.equal(2, index, `Alpha Sigma - at index ${index}`)
303
+ index = twoByteString.indexOf('\u03a3\u03a3', 0, 'ucs2')
304
+ t.equal(4, index, `Sigma Sigma - at index ${index}`)
305
+ index = twoByteString.indexOf('\u03a3\u0395', 0, 'ucs2')
306
+ t.equal(6, index, `Sigma Epsilon - at index ${index}`)
307
+ }
308
+
309
+ const mixedByteStringUtf8 = Buffer.from('\u039a\u0391abc\u03a3\u03a3\u0395')
310
+
311
+ t.equal(5, mixedByteStringUtf8.indexOf('bc'))
312
+ t.equal(5, mixedByteStringUtf8.indexOf('bc', 5))
313
+ t.equal(5, mixedByteStringUtf8.indexOf('bc', -8))
314
+ t.equal(7, mixedByteStringUtf8.indexOf('\u03a3'))
315
+ t.equal(-1, mixedByteStringUtf8.indexOf('\u0396'))
316
+
317
+ // Test complex string indexOf algorithms. Only trigger for long strings.
318
+ // Long string that isn't a simple repeat of a shorter string.
319
+ let longString = 'A'
320
+ for (let i = 66; i < 76; i++) { // from 'B' to 'K'
321
+ longString = longString + String.fromCharCode(i) + longString
322
+ }
323
+
324
+ const longBufferString = Buffer.from(longString)
325
+
326
+ // pattern of 15 chars, repeated every 16 chars in long
327
+ let pattern = 'ABACABADABACABA'
328
+ for (let i = 0; i < longBufferString.length - pattern.length; i += 7) {
329
+ const index = longBufferString.indexOf(pattern, i)
330
+ t.equal((i + 15) & ~0xf, index,
331
+ `Long ABACABA...-string at index ${i}`)
332
+ }
333
+
334
+ let index = longBufferString.indexOf('AJABACA')
335
+ t.equal(510, index, `Long AJABACA, First J - at index ${index}`)
336
+ index = longBufferString.indexOf('AJABACA', 511)
337
+ t.equal(1534, index, `Long AJABACA, Second J - at index ${index}`)
338
+
339
+ pattern = 'JABACABADABACABA'
340
+ index = longBufferString.indexOf(pattern)
341
+ t.equal(511, index, `Long JABACABA..., First J - at index ${index}`)
342
+ index = longBufferString.indexOf(pattern, 512)
343
+ t.equal(
344
+ 1535, index, `Long JABACABA..., Second J - at index ${index}`)
345
+
346
+ // Search for a non-ASCII string in a pure ASCII string.
347
+ const asciiString = Buffer.from(
348
+ 'somethingnotatallsinisterwhichalsoworks')
349
+ t.equal(-1, asciiString.indexOf('\x2061'))
350
+ t.equal(3, asciiString.indexOf('eth', 0))
351
+
352
+ // Search in string containing many non-ASCII chars.
353
+ const allCodePoints = []
354
+ for (let i = 0; i < 65536; i++) {
355
+ allCodePoints[i] = i
356
+ }
357
+
358
+ const allCharsString = String.fromCharCode.apply(String, allCodePoints)
359
+ const allCharsBufferUtf8 = Buffer.from(allCharsString)
360
+ const allCharsBufferUcs2 = Buffer.from(allCharsString, 'ucs2')
361
+
362
+ // Search for string long enough to trigger complex search with ASCII pattern
363
+ // and UC16 subject.
364
+ t.equal(-1, allCharsBufferUtf8.indexOf('notfound'))
365
+ t.equal(-1, allCharsBufferUcs2.indexOf('notfound'))
366
+
367
+ // Needle is longer than haystack, but only because it's encoded as UTF-16
368
+ t.equal(Buffer.from('aaaa').indexOf('a'.repeat(4), 'ucs2'), -1)
369
+
370
+ t.equal(Buffer.from('aaaa').indexOf('a'.repeat(4), 'utf8'), 0)
371
+ t.equal(Buffer.from('aaaa').indexOf('你好', 'ucs2'), -1)
372
+
373
+ // Haystack has odd length, but the needle is UCS2.
374
+ t.equal(Buffer.from('aaaaa').indexOf('b', 'ucs2'), -1)
375
+
376
+ {
377
+ // Find substrings in Utf8.
378
+ const lengths = [1, 3, 15] // Single char, simple and complex.
379
+ const indices = [0x5, 0x60, 0x400, 0x680, 0x7ee, 0xFF02, 0x16610, 0x2f77b]
380
+ for (let lengthIndex = 0; lengthIndex < lengths.length; lengthIndex++) {
381
+ for (let i = 0; i < indices.length; i++) {
382
+ const index = indices[i]
383
+ let length = lengths[lengthIndex]
384
+
385
+ if (index + length > 0x7F) {
386
+ length = 2 * length
387
+ }
388
+
389
+ if (index + length > 0x7FF) {
390
+ length = 3 * length
391
+ }
392
+
393
+ if (index + length > 0xFFFF) {
394
+ length = 4 * length
395
+ }
396
+
397
+ const patternBufferUtf8 = allCharsBufferUtf8.slice(index, index + length)
398
+ t.equal(index, allCharsBufferUtf8.indexOf(patternBufferUtf8))
399
+
400
+ const patternStringUtf8 = patternBufferUtf8.toString()
401
+ t.equal(index, allCharsBufferUtf8.indexOf(patternStringUtf8))
402
+ }
403
+ }
404
+ }
405
+
406
+ {
407
+ // Find substrings in Usc2.
408
+ const lengths = [2, 4, 16] // Single char, simple and complex.
409
+ const indices = [0x5, 0x65, 0x105, 0x205, 0x285, 0x2005, 0x2085, 0xfff0]
410
+
411
+ for (let lengthIndex = 0; lengthIndex < lengths.length; lengthIndex++) {
412
+ for (let i = 0; i < indices.length; i++) {
413
+ const index = indices[i] * 2
414
+ const length = lengths[lengthIndex]
415
+
416
+ const patternBufferUcs2 =
417
+ allCharsBufferUcs2.slice(index, index + length)
418
+ t.equal(
419
+ index, allCharsBufferUcs2.indexOf(patternBufferUcs2, 0, 'ucs2'))
420
+
421
+ const patternStringUcs2 = patternBufferUcs2.toString('ucs2')
422
+ t.equal(
423
+ index, allCharsBufferUcs2.indexOf(patternStringUcs2, 0, 'ucs2'))
424
+ }
425
+ }
426
+ }
427
+
428
+ [
429
+ () => {},
430
+ {},
431
+ []
432
+ ].forEach((val) => {
433
+ t.throws(() => b.indexOf(val), TypeError, `"${JSON.stringify(val)}" should throw`)
434
+ })
435
+
436
+ // Test weird offset arguments.
437
+ // The following offsets coerce to NaN or 0, searching the whole Buffer
438
+ t.equal(b.indexOf('b', undefined), 1)
439
+ t.equal(b.indexOf('b', {}), 1)
440
+ t.equal(b.indexOf('b', 0), 1)
441
+ t.equal(b.indexOf('b', null), 1)
442
+ t.equal(b.indexOf('b', []), 1)
443
+
444
+ // The following offset coerces to 2, in other words +[2] === 2
445
+ t.equal(b.indexOf('b', [2]), -1)
446
+
447
+ // Behavior should match String.indexOf()
448
+ t.equal(
449
+ b.indexOf('b', undefined),
450
+ stringComparison.indexOf('b', undefined))
451
+ t.equal(
452
+ b.indexOf('b', {}),
453
+ stringComparison.indexOf('b', {}))
454
+ t.equal(
455
+ b.indexOf('b', 0),
456
+ stringComparison.indexOf('b', 0))
457
+ t.equal(
458
+ b.indexOf('b', null),
459
+ stringComparison.indexOf('b', null))
460
+ t.equal(
461
+ b.indexOf('b', []),
462
+ stringComparison.indexOf('b', []))
463
+ t.equal(
464
+ b.indexOf('b', [2]),
465
+ stringComparison.indexOf('b', [2]))
466
+
467
+ // test truncation of Number arguments to uint8
468
+ {
469
+ const buf = Buffer.from('this is a test')
470
+
471
+ t.equal(buf.indexOf(0x6973), 3)
472
+ t.equal(buf.indexOf(0x697320), 4)
473
+ t.equal(buf.indexOf(0x69732069), 2)
474
+ t.equal(buf.indexOf(0x697374657374), 0)
475
+ t.equal(buf.indexOf(0x69737374), 0)
476
+ t.equal(buf.indexOf(0x69737465), 11)
477
+ t.equal(buf.indexOf(0x69737465), 11)
478
+ t.equal(buf.indexOf(-140), 0)
479
+ t.equal(buf.indexOf(-152), 1)
480
+ t.equal(buf.indexOf(0xff), -1)
481
+ t.equal(buf.indexOf(0xffff), -1)
482
+ }
483
+
484
+ // Test that Uint8Array arguments are okay.
485
+ {
486
+ const needle = new Uint8Array([0x66, 0x6f, 0x6f])
487
+ const haystack = new BufferList(Buffer.from('a foo b foo'))
488
+ t.equal(haystack.indexOf(needle), 2)
489
+ }
490
+
491
+ t.end()
492
+ })