@basemaps/lambda-tiler 6.18.0 → 6.21.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (656) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/LICENSE +2 -2
  3. package/build/__test__/tile.set.cache.test.js +4 -10
  4. package/build/__test__/tile.style.json.test.d.ts +2 -0
  5. package/build/__test__/tile.style.json.test.d.ts.map +1 -0
  6. package/build/__test__/tile.style.json.test.js +33 -0
  7. package/build/__test__/xyz.test.js +27 -26
  8. package/build/cli/dump.js +2 -2
  9. package/build/cli/validate.js +2 -1
  10. package/build/index.d.ts.map +1 -1
  11. package/build/index.js +18 -1
  12. package/build/routes/__test__/attribution.test.js +3 -13
  13. package/build/routes/attribution.d.ts.map +1 -1
  14. package/build/routes/attribution.js +7 -20
  15. package/build/routes/esri/rest.d.ts +10 -0
  16. package/build/routes/esri/rest.d.ts.map +1 -0
  17. package/build/routes/esri/rest.js +87 -0
  18. package/build/routes/imagery.d.ts +10 -0
  19. package/build/routes/imagery.d.ts.map +1 -0
  20. package/build/routes/imagery.js +50 -0
  21. package/build/routes/response.d.ts +4 -0
  22. package/build/routes/response.d.ts.map +1 -0
  23. package/build/routes/response.js +3 -0
  24. package/build/routes/tile.d.ts +0 -20
  25. package/build/routes/tile.d.ts.map +1 -1
  26. package/build/routes/tile.js +11 -164
  27. package/build/routes/tile.json.d.ts +10 -0
  28. package/build/routes/tile.json.d.ts.map +1 -0
  29. package/build/routes/tile.json.js +31 -0
  30. package/build/routes/tile.style.json.d.ts +10 -0
  31. package/build/routes/tile.style.json.d.ts.map +1 -0
  32. package/build/routes/tile.style.json.js +74 -0
  33. package/build/routes/tile.wmts.d.ts +9 -0
  34. package/build/routes/tile.wmts.d.ts.map +1 -0
  35. package/build/routes/tile.wmts.js +57 -0
  36. package/build/routes/tile.xyz.d.ts +13 -0
  37. package/build/routes/tile.xyz.d.ts.map +1 -0
  38. package/build/routes/tile.xyz.js +28 -0
  39. package/build/source.tracer.d.ts +17 -0
  40. package/build/source.tracer.d.ts.map +1 -0
  41. package/build/source.tracer.js +22 -0
  42. package/build/tile.set.cache.js +3 -3
  43. package/build/tile.set.d.ts +0 -16
  44. package/build/tile.set.d.ts.map +1 -1
  45. package/build/tile.set.js +1 -20
  46. package/build/tile.set.raster.d.ts +9 -4
  47. package/build/tile.set.raster.d.ts.map +1 -1
  48. package/build/tile.set.raster.js +17 -6
  49. package/build/tile.set.vector.d.ts +10 -4
  50. package/build/tile.set.vector.d.ts.map +1 -1
  51. package/build/tile.set.vector.js +18 -8
  52. package/bundle.sh +2 -2
  53. package/package.json +14 -14
  54. package/scripts/create.deployment.package.mjs +34 -0
  55. package/src/__test__/tile.set.cache.test.ts +4 -12
  56. package/src/__test__/tile.style.json.test.ts +40 -0
  57. package/src/__test__/xyz.test.ts +35 -33
  58. package/src/cli/dump.ts +2 -2
  59. package/src/cli/validate.ts +2 -1
  60. package/src/index.ts +21 -1
  61. package/src/routes/__test__/attribution.test.ts +3 -13
  62. package/src/routes/attribution.ts +6 -17
  63. package/src/routes/esri/rest.ts +90 -0
  64. package/src/routes/imagery.ts +52 -0
  65. package/src/routes/response.ts +4 -0
  66. package/src/routes/tile.json.ts +44 -0
  67. package/src/routes/tile.style.json.ts +77 -0
  68. package/src/routes/tile.ts +11 -186
  69. package/src/routes/tile.wmts.ts +59 -0
  70. package/src/routes/tile.xyz.ts +30 -0
  71. package/src/source.tracer.ts +34 -0
  72. package/src/tile.set.cache.ts +3 -3
  73. package/src/tile.set.raster.ts +32 -7
  74. package/src/tile.set.ts +0 -40
  75. package/src/tile.set.vector.ts +26 -7
  76. package/tsconfig.tsbuildinfo +1 -1
  77. package/dist/index.js +0 -29695
  78. package/dist/node_modules/ansi-regex/index.js +0 -4
  79. package/dist/node_modules/ansi-regex/license +0 -21
  80. package/dist/node_modules/ansi-regex/package.json +0 -108
  81. package/dist/node_modules/ansi-regex/readme.md +0 -39
  82. package/dist/node_modules/aproba/LICENSE +0 -14
  83. package/dist/node_modules/aproba/README.md +0 -94
  84. package/dist/node_modules/aproba/index.js +0 -105
  85. package/dist/node_modules/aproba/package.json +0 -62
  86. package/dist/node_modules/are-we-there-yet/CHANGES.md +0 -37
  87. package/dist/node_modules/are-we-there-yet/LICENSE +0 -5
  88. package/dist/node_modules/are-we-there-yet/README.md +0 -195
  89. package/dist/node_modules/are-we-there-yet/index.js +0 -4
  90. package/dist/node_modules/are-we-there-yet/package.json +0 -63
  91. package/dist/node_modules/are-we-there-yet/tracker-base.js +0 -11
  92. package/dist/node_modules/are-we-there-yet/tracker-group.js +0 -107
  93. package/dist/node_modules/are-we-there-yet/tracker-stream.js +0 -36
  94. package/dist/node_modules/are-we-there-yet/tracker.js +0 -30
  95. package/dist/node_modules/base64-js/LICENSE +0 -21
  96. package/dist/node_modules/base64-js/README.md +0 -34
  97. package/dist/node_modules/base64-js/base64js.min.js +0 -1
  98. package/dist/node_modules/base64-js/index.d.ts +0 -3
  99. package/dist/node_modules/base64-js/index.js +0 -150
  100. package/dist/node_modules/base64-js/package.json +0 -75
  101. package/dist/node_modules/bl/.travis.yml +0 -17
  102. package/dist/node_modules/bl/BufferList.js +0 -396
  103. package/dist/node_modules/bl/LICENSE.md +0 -13
  104. package/dist/node_modules/bl/README.md +0 -247
  105. package/dist/node_modules/bl/bl.js +0 -84
  106. package/dist/node_modules/bl/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  107. package/dist/node_modules/bl/node_modules/readable-stream/GOVERNANCE.md +0 -136
  108. package/dist/node_modules/bl/node_modules/readable-stream/LICENSE +0 -47
  109. package/dist/node_modules/bl/node_modules/readable-stream/README.md +0 -106
  110. package/dist/node_modules/bl/node_modules/readable-stream/errors-browser.js +0 -127
  111. package/dist/node_modules/bl/node_modules/readable-stream/errors.js +0 -116
  112. package/dist/node_modules/bl/node_modules/readable-stream/experimentalWarning.js +0 -17
  113. package/dist/node_modules/bl/node_modules/readable-stream/lib/_stream_duplex.js +0 -139
  114. package/dist/node_modules/bl/node_modules/readable-stream/lib/_stream_passthrough.js +0 -39
  115. package/dist/node_modules/bl/node_modules/readable-stream/lib/_stream_readable.js +0 -1124
  116. package/dist/node_modules/bl/node_modules/readable-stream/lib/_stream_transform.js +0 -201
  117. package/dist/node_modules/bl/node_modules/readable-stream/lib/_stream_writable.js +0 -697
  118. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/async_iterator.js +0 -207
  119. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/buffer_list.js +0 -210
  120. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -105
  121. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +0 -104
  122. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/from-browser.js +0 -3
  123. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/from.js +0 -64
  124. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/pipeline.js +0 -97
  125. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/state.js +0 -27
  126. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  127. package/dist/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  128. package/dist/node_modules/bl/node_modules/readable-stream/package.json +0 -97
  129. package/dist/node_modules/bl/node_modules/readable-stream/readable-browser.js +0 -9
  130. package/dist/node_modules/bl/node_modules/readable-stream/readable.js +0 -16
  131. package/dist/node_modules/bl/package.json +0 -69
  132. package/dist/node_modules/bl/test/convert.js +0 -21
  133. package/dist/node_modules/bl/test/indexOf.js +0 -492
  134. package/dist/node_modules/bl/test/isBufferList.js +0 -32
  135. package/dist/node_modules/bl/test/test.js +0 -869
  136. package/dist/node_modules/buffer/AUTHORS.md +0 -70
  137. package/dist/node_modules/buffer/LICENSE +0 -21
  138. package/dist/node_modules/buffer/README.md +0 -410
  139. package/dist/node_modules/buffer/index.d.ts +0 -186
  140. package/dist/node_modules/buffer/index.js +0 -1817
  141. package/dist/node_modules/buffer/package.json +0 -127
  142. package/dist/node_modules/chownr/LICENSE +0 -15
  143. package/dist/node_modules/chownr/README.md +0 -3
  144. package/dist/node_modules/chownr/chownr.js +0 -167
  145. package/dist/node_modules/chownr/package.json +0 -62
  146. package/dist/node_modules/code-point-at/index.js +0 -32
  147. package/dist/node_modules/code-point-at/license +0 -21
  148. package/dist/node_modules/code-point-at/package.json +0 -70
  149. package/dist/node_modules/code-point-at/readme.md +0 -32
  150. package/dist/node_modules/color/LICENSE +0 -21
  151. package/dist/node_modules/color/README.md +0 -123
  152. package/dist/node_modules/color/index.js +0 -482
  153. package/dist/node_modules/color/package.json +0 -72
  154. package/dist/node_modules/color-convert/CHANGELOG.md +0 -54
  155. package/dist/node_modules/color-convert/LICENSE +0 -21
  156. package/dist/node_modules/color-convert/README.md +0 -68
  157. package/dist/node_modules/color-convert/conversions.js +0 -868
  158. package/dist/node_modules/color-convert/index.js +0 -78
  159. package/dist/node_modules/color-convert/package.json +0 -81
  160. package/dist/node_modules/color-convert/route.js +0 -97
  161. package/dist/node_modules/color-name/.eslintrc.json +0 -43
  162. package/dist/node_modules/color-name/LICENSE +0 -8
  163. package/dist/node_modules/color-name/README.md +0 -11
  164. package/dist/node_modules/color-name/index.js +0 -152
  165. package/dist/node_modules/color-name/package.json +0 -54
  166. package/dist/node_modules/color-name/test.js +0 -7
  167. package/dist/node_modules/color-string/LICENSE +0 -21
  168. package/dist/node_modules/color-string/README.md +0 -62
  169. package/dist/node_modules/color-string/index.js +0 -242
  170. package/dist/node_modules/color-string/package.json +0 -81
  171. package/dist/node_modules/console-control-strings/LICENSE +0 -13
  172. package/dist/node_modules/console-control-strings/README.md +0 -145
  173. package/dist/node_modules/console-control-strings/README.md~ +0 -140
  174. package/dist/node_modules/console-control-strings/index.js +0 -125
  175. package/dist/node_modules/console-control-strings/package.json +0 -61
  176. package/dist/node_modules/core-util-is/LICENSE +0 -19
  177. package/dist/node_modules/core-util-is/README.md +0 -3
  178. package/dist/node_modules/core-util-is/lib/util.js +0 -107
  179. package/dist/node_modules/core-util-is/package.json +0 -68
  180. package/dist/node_modules/decompress-response/index.d.ts +0 -29
  181. package/dist/node_modules/decompress-response/index.js +0 -40
  182. package/dist/node_modules/decompress-response/license +0 -9
  183. package/dist/node_modules/decompress-response/package.json +0 -82
  184. package/dist/node_modules/decompress-response/readme.md +0 -52
  185. package/dist/node_modules/deep-extend/CHANGELOG.md +0 -46
  186. package/dist/node_modules/deep-extend/LICENSE +0 -20
  187. package/dist/node_modules/deep-extend/README.md +0 -91
  188. package/dist/node_modules/deep-extend/index.js +0 -1
  189. package/dist/node_modules/deep-extend/lib/deep-extend.js +0 -150
  190. package/dist/node_modules/deep-extend/package.json +0 -92
  191. package/dist/node_modules/delegates/History.md +0 -22
  192. package/dist/node_modules/delegates/License +0 -20
  193. package/dist/node_modules/delegates/Makefile +0 -8
  194. package/dist/node_modules/delegates/Readme.md +0 -94
  195. package/dist/node_modules/delegates/index.js +0 -121
  196. package/dist/node_modules/delegates/package.json +0 -48
  197. package/dist/node_modules/delegates/test/index.js +0 -94
  198. package/dist/node_modules/detect-libc/LICENSE +0 -201
  199. package/dist/node_modules/detect-libc/README.md +0 -78
  200. package/dist/node_modules/detect-libc/bin/detect-libc.js +0 -18
  201. package/dist/node_modules/detect-libc/lib/detect-libc.js +0 -92
  202. package/dist/node_modules/detect-libc/package.json +0 -71
  203. package/dist/node_modules/end-of-stream/LICENSE +0 -21
  204. package/dist/node_modules/end-of-stream/README.md +0 -54
  205. package/dist/node_modules/end-of-stream/index.js +0 -94
  206. package/dist/node_modules/end-of-stream/package.json +0 -66
  207. package/dist/node_modules/expand-template/.travis.yml +0 -6
  208. package/dist/node_modules/expand-template/LICENSE +0 -21
  209. package/dist/node_modules/expand-template/README.md +0 -43
  210. package/dist/node_modules/expand-template/index.js +0 -26
  211. package/dist/node_modules/expand-template/package.json +0 -60
  212. package/dist/node_modules/expand-template/test.js +0 -67
  213. package/dist/node_modules/fs-constants/LICENSE +0 -21
  214. package/dist/node_modules/fs-constants/README.md +0 -26
  215. package/dist/node_modules/fs-constants/browser.js +0 -1
  216. package/dist/node_modules/fs-constants/index.js +0 -1
  217. package/dist/node_modules/fs-constants/package.json +0 -47
  218. package/dist/node_modules/gauge/CHANGELOG.md +0 -160
  219. package/dist/node_modules/gauge/LICENSE +0 -13
  220. package/dist/node_modules/gauge/README.md +0 -399
  221. package/dist/node_modules/gauge/base-theme.js +0 -14
  222. package/dist/node_modules/gauge/error.js +0 -24
  223. package/dist/node_modules/gauge/has-color.js +0 -12
  224. package/dist/node_modules/gauge/index.js +0 -233
  225. package/dist/node_modules/gauge/package.json +0 -91
  226. package/dist/node_modules/gauge/plumbing.js +0 -48
  227. package/dist/node_modules/gauge/process.js +0 -3
  228. package/dist/node_modules/gauge/progress-bar.js +0 -35
  229. package/dist/node_modules/gauge/render-template.js +0 -181
  230. package/dist/node_modules/gauge/set-immediate.js +0 -7
  231. package/dist/node_modules/gauge/set-interval.js +0 -3
  232. package/dist/node_modules/gauge/spin.js +0 -5
  233. package/dist/node_modules/gauge/template-item.js +0 -73
  234. package/dist/node_modules/gauge/theme-set.js +0 -115
  235. package/dist/node_modules/gauge/themes.js +0 -54
  236. package/dist/node_modules/gauge/wide-truncate.js +0 -25
  237. package/dist/node_modules/github-from-package/.travis.yml +0 -4
  238. package/dist/node_modules/github-from-package/LICENSE +0 -18
  239. package/dist/node_modules/github-from-package/example/package.json +0 -8
  240. package/dist/node_modules/github-from-package/example/url.js +0 -3
  241. package/dist/node_modules/github-from-package/index.js +0 -17
  242. package/dist/node_modules/github-from-package/package.json +0 -58
  243. package/dist/node_modules/github-from-package/readme.markdown +0 -53
  244. package/dist/node_modules/github-from-package/test/a.json +0 -8
  245. package/dist/node_modules/github-from-package/test/b.json +0 -5
  246. package/dist/node_modules/github-from-package/test/c.json +0 -5
  247. package/dist/node_modules/github-from-package/test/d.json +0 -7
  248. package/dist/node_modules/github-from-package/test/e.json +0 -5
  249. package/dist/node_modules/github-from-package/test/url.js +0 -19
  250. package/dist/node_modules/has-unicode/LICENSE +0 -14
  251. package/dist/node_modules/has-unicode/README.md +0 -43
  252. package/dist/node_modules/has-unicode/index.js +0 -16
  253. package/dist/node_modules/has-unicode/package.json +0 -58
  254. package/dist/node_modules/ieee754/LICENSE +0 -11
  255. package/dist/node_modules/ieee754/README.md +0 -51
  256. package/dist/node_modules/ieee754/index.d.ts +0 -10
  257. package/dist/node_modules/ieee754/index.js +0 -85
  258. package/dist/node_modules/ieee754/package.json +0 -84
  259. package/dist/node_modules/inherits/LICENSE +0 -16
  260. package/dist/node_modules/inherits/README.md +0 -42
  261. package/dist/node_modules/inherits/inherits.js +0 -9
  262. package/dist/node_modules/inherits/inherits_browser.js +0 -27
  263. package/dist/node_modules/inherits/package.json +0 -65
  264. package/dist/node_modules/ini/LICENSE +0 -15
  265. package/dist/node_modules/ini/README.md +0 -102
  266. package/dist/node_modules/ini/ini.js +0 -206
  267. package/dist/node_modules/ini/package.json +0 -66
  268. package/dist/node_modules/is-arrayish/LICENSE +0 -21
  269. package/dist/node_modules/is-arrayish/README.md +0 -16
  270. package/dist/node_modules/is-arrayish/index.js +0 -9
  271. package/dist/node_modules/is-arrayish/package.json +0 -77
  272. package/dist/node_modules/is-arrayish/yarn-error.log +0 -1443
  273. package/dist/node_modules/is-fullwidth-code-point/index.js +0 -46
  274. package/dist/node_modules/is-fullwidth-code-point/license +0 -21
  275. package/dist/node_modules/is-fullwidth-code-point/package.json +0 -77
  276. package/dist/node_modules/is-fullwidth-code-point/readme.md +0 -39
  277. package/dist/node_modules/isarray/.travis.yml +0 -4
  278. package/dist/node_modules/isarray/Makefile +0 -6
  279. package/dist/node_modules/isarray/README.md +0 -60
  280. package/dist/node_modules/isarray/component.json +0 -19
  281. package/dist/node_modules/isarray/index.js +0 -5
  282. package/dist/node_modules/isarray/package.json +0 -73
  283. package/dist/node_modules/isarray/test.js +0 -20
  284. package/dist/node_modules/lru-cache/LICENSE +0 -15
  285. package/dist/node_modules/lru-cache/README.md +0 -166
  286. package/dist/node_modules/lru-cache/index.js +0 -334
  287. package/dist/node_modules/lru-cache/package.json +0 -69
  288. package/dist/node_modules/mimic-response/index.d.ts +0 -17
  289. package/dist/node_modules/mimic-response/index.js +0 -38
  290. package/dist/node_modules/mimic-response/license +0 -9
  291. package/dist/node_modules/mimic-response/package.json +0 -74
  292. package/dist/node_modules/mimic-response/readme.md +0 -57
  293. package/dist/node_modules/minimist/.travis.yml +0 -8
  294. package/dist/node_modules/minimist/LICENSE +0 -18
  295. package/dist/node_modules/minimist/example/parse.js +0 -2
  296. package/dist/node_modules/minimist/index.js +0 -245
  297. package/dist/node_modules/minimist/package.json +0 -74
  298. package/dist/node_modules/minimist/readme.markdown +0 -95
  299. package/dist/node_modules/minimist/test/all_bool.js +0 -32
  300. package/dist/node_modules/minimist/test/bool.js +0 -178
  301. package/dist/node_modules/minimist/test/dash.js +0 -31
  302. package/dist/node_modules/minimist/test/default_bool.js +0 -35
  303. package/dist/node_modules/minimist/test/dotted.js +0 -22
  304. package/dist/node_modules/minimist/test/kv_short.js +0 -16
  305. package/dist/node_modules/minimist/test/long.js +0 -31
  306. package/dist/node_modules/minimist/test/num.js +0 -36
  307. package/dist/node_modules/minimist/test/parse.js +0 -197
  308. package/dist/node_modules/minimist/test/parse_modified.js +0 -9
  309. package/dist/node_modules/minimist/test/proto.js +0 -44
  310. package/dist/node_modules/minimist/test/short.js +0 -67
  311. package/dist/node_modules/minimist/test/stop_early.js +0 -15
  312. package/dist/node_modules/minimist/test/unknown.js +0 -102
  313. package/dist/node_modules/minimist/test/whitespace.js +0 -8
  314. package/dist/node_modules/mkdirp-classic/LICENSE +0 -21
  315. package/dist/node_modules/mkdirp-classic/README.md +0 -18
  316. package/dist/node_modules/mkdirp-classic/index.js +0 -98
  317. package/dist/node_modules/mkdirp-classic/package.json +0 -47
  318. package/dist/node_modules/napi-build-utils/LICENSE +0 -21
  319. package/dist/node_modules/napi-build-utils/README.md +0 -48
  320. package/dist/node_modules/napi-build-utils/index.js +0 -213
  321. package/dist/node_modules/napi-build-utils/index.md +0 -81
  322. package/dist/node_modules/napi-build-utils/package.json +0 -68
  323. package/dist/node_modules/node-abi/.github/workflows/update-abi.yml +0 -41
  324. package/dist/node_modules/node-abi/.travis.yml +0 -17
  325. package/dist/node_modules/node-abi/CODE_OF_CONDUCT.md +0 -73
  326. package/dist/node_modules/node-abi/CONTRIBUTING.md +0 -53
  327. package/dist/node_modules/node-abi/LICENSE +0 -21
  328. package/dist/node_modules/node-abi/README.md +0 -50
  329. package/dist/node_modules/node-abi/abi_registry.json +0 -144
  330. package/dist/node_modules/node-abi/index.js +0 -176
  331. package/dist/node_modules/node-abi/node_modules/semver/CHANGELOG.md +0 -39
  332. package/dist/node_modules/node-abi/node_modules/semver/LICENSE +0 -15
  333. package/dist/node_modules/node-abi/node_modules/semver/README.md +0 -412
  334. package/dist/node_modules/node-abi/node_modules/semver/bin/semver +0 -160
  335. package/dist/node_modules/node-abi/node_modules/semver/package.json +0 -60
  336. package/dist/node_modules/node-abi/node_modules/semver/range.bnf +0 -16
  337. package/dist/node_modules/node-abi/node_modules/semver/semver.js +0 -1483
  338. package/dist/node_modules/node-abi/package.json +0 -65
  339. package/dist/node_modules/node-abi/scripts/update-abi-registry.js +0 -119
  340. package/dist/node_modules/node-abi/test/index.js +0 -174
  341. package/dist/node_modules/node-addon-api/CHANGELOG.md +0 -722
  342. package/dist/node_modules/node-addon-api/LICENSE.md +0 -13
  343. package/dist/node_modules/node-addon-api/README.md +0 -293
  344. package/dist/node_modules/node-addon-api/common.gypi +0 -21
  345. package/dist/node_modules/node-addon-api/except.gypi +0 -16
  346. package/dist/node_modules/node-addon-api/index.js +0 -11
  347. package/dist/node_modules/node-addon-api/napi-inl.deprecated.h +0 -192
  348. package/dist/node_modules/node-addon-api/napi-inl.h +0 -5671
  349. package/dist/node_modules/node-addon-api/napi.h +0 -2727
  350. package/dist/node_modules/node-addon-api/node_api.gyp +0 -9
  351. package/dist/node_modules/node-addon-api/noexcept.gypi +0 -16
  352. package/dist/node_modules/node-addon-api/nothing.c +0 -0
  353. package/dist/node_modules/node-addon-api/package-support.json +0 -21
  354. package/dist/node_modules/node-addon-api/package.json +0 -393
  355. package/dist/node_modules/node-addon-api/tools/README.md +0 -73
  356. package/dist/node_modules/node-addon-api/tools/check-napi.js +0 -100
  357. package/dist/node_modules/node-addon-api/tools/clang-format.js +0 -67
  358. package/dist/node_modules/node-addon-api/tools/conversion.js +0 -309
  359. package/dist/node_modules/npmlog/CHANGELOG.md +0 -49
  360. package/dist/node_modules/npmlog/LICENSE +0 -15
  361. package/dist/node_modules/npmlog/README.md +0 -216
  362. package/dist/node_modules/npmlog/log.js +0 -309
  363. package/dist/node_modules/npmlog/package.json +0 -61
  364. package/dist/node_modules/number-is-nan/index.js +0 -4
  365. package/dist/node_modules/number-is-nan/license +0 -21
  366. package/dist/node_modules/number-is-nan/package.json +0 -67
  367. package/dist/node_modules/number-is-nan/readme.md +0 -28
  368. package/dist/node_modules/object-assign/index.js +0 -90
  369. package/dist/node_modules/object-assign/license +0 -21
  370. package/dist/node_modules/object-assign/package.json +0 -74
  371. package/dist/node_modules/object-assign/readme.md +0 -61
  372. package/dist/node_modules/once/LICENSE +0 -15
  373. package/dist/node_modules/once/README.md +0 -79
  374. package/dist/node_modules/once/once.js +0 -42
  375. package/dist/node_modules/once/package.json +0 -68
  376. package/dist/node_modules/prebuild-install/CHANGELOG.md +0 -81
  377. package/dist/node_modules/prebuild-install/CONTRIBUTING.md +0 -6
  378. package/dist/node_modules/prebuild-install/LICENSE +0 -21
  379. package/dist/node_modules/prebuild-install/README.md +0 -139
  380. package/dist/node_modules/prebuild-install/asset.js +0 -44
  381. package/dist/node_modules/prebuild-install/bin.js +0 -78
  382. package/dist/node_modules/prebuild-install/download.js +0 -142
  383. package/dist/node_modules/prebuild-install/error.js +0 -14
  384. package/dist/node_modules/prebuild-install/help.txt +0 -16
  385. package/dist/node_modules/prebuild-install/index.js +0 -1
  386. package/dist/node_modules/prebuild-install/log.js +0 -25
  387. package/dist/node_modules/prebuild-install/package.json +0 -127
  388. package/dist/node_modules/prebuild-install/proxy.js +0 -35
  389. package/dist/node_modules/prebuild-install/rc.js +0 -60
  390. package/dist/node_modules/prebuild-install/util.js +0 -143
  391. package/dist/node_modules/process-nextick-args/index.js +0 -45
  392. package/dist/node_modules/process-nextick-args/license.md +0 -19
  393. package/dist/node_modules/process-nextick-args/package.json +0 -50
  394. package/dist/node_modules/process-nextick-args/readme.md +0 -18
  395. package/dist/node_modules/pump/.travis.yml +0 -5
  396. package/dist/node_modules/pump/LICENSE +0 -21
  397. package/dist/node_modules/pump/README.md +0 -65
  398. package/dist/node_modules/pump/index.js +0 -82
  399. package/dist/node_modules/pump/package.json +0 -60
  400. package/dist/node_modules/pump/test-browser.js +0 -66
  401. package/dist/node_modules/pump/test-node.js +0 -53
  402. package/dist/node_modules/rc/LICENSE.APACHE2 +0 -15
  403. package/dist/node_modules/rc/LICENSE.BSD +0 -26
  404. package/dist/node_modules/rc/LICENSE.MIT +0 -24
  405. package/dist/node_modules/rc/README.md +0 -227
  406. package/dist/node_modules/rc/browser.js +0 -7
  407. package/dist/node_modules/rc/cli.js +0 -4
  408. package/dist/node_modules/rc/index.js +0 -53
  409. package/dist/node_modules/rc/lib/utils.js +0 -104
  410. package/dist/node_modules/rc/package.json +0 -64
  411. package/dist/node_modules/rc/test/ini.js +0 -16
  412. package/dist/node_modules/rc/test/nested-env-vars.js +0 -50
  413. package/dist/node_modules/rc/test/test.js +0 -59
  414. package/dist/node_modules/readable-stream/.travis.yml +0 -34
  415. package/dist/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  416. package/dist/node_modules/readable-stream/GOVERNANCE.md +0 -136
  417. package/dist/node_modules/readable-stream/LICENSE +0 -47
  418. package/dist/node_modules/readable-stream/README.md +0 -58
  419. package/dist/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
  420. package/dist/node_modules/readable-stream/duplex-browser.js +0 -1
  421. package/dist/node_modules/readable-stream/duplex.js +0 -1
  422. package/dist/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
  423. package/dist/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
  424. package/dist/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
  425. package/dist/node_modules/readable-stream/lib/_stream_transform.js +0 -214
  426. package/dist/node_modules/readable-stream/lib/_stream_writable.js +0 -687
  427. package/dist/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -79
  428. package/dist/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -74
  429. package/dist/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  430. package/dist/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  431. package/dist/node_modules/readable-stream/package.json +0 -81
  432. package/dist/node_modules/readable-stream/passthrough.js +0 -1
  433. package/dist/node_modules/readable-stream/readable-browser.js +0 -7
  434. package/dist/node_modules/readable-stream/readable.js +0 -19
  435. package/dist/node_modules/readable-stream/transform.js +0 -1
  436. package/dist/node_modules/readable-stream/writable-browser.js +0 -1
  437. package/dist/node_modules/readable-stream/writable.js +0 -8
  438. package/dist/node_modules/safe-buffer/LICENSE +0 -21
  439. package/dist/node_modules/safe-buffer/README.md +0 -584
  440. package/dist/node_modules/safe-buffer/index.d.ts +0 -187
  441. package/dist/node_modules/safe-buffer/index.js +0 -62
  442. package/dist/node_modules/safe-buffer/package.json +0 -64
  443. package/dist/node_modules/semver/CHANGELOG.md +0 -111
  444. package/dist/node_modules/semver/LICENSE +0 -15
  445. package/dist/node_modules/semver/README.md +0 -566
  446. package/dist/node_modules/semver/bin/semver.js +0 -173
  447. package/dist/node_modules/semver/classes/comparator.js +0 -135
  448. package/dist/node_modules/semver/classes/index.js +0 -5
  449. package/dist/node_modules/semver/classes/range.js +0 -510
  450. package/dist/node_modules/semver/classes/semver.js +0 -287
  451. package/dist/node_modules/semver/functions/clean.js +0 -6
  452. package/dist/node_modules/semver/functions/cmp.js +0 -48
  453. package/dist/node_modules/semver/functions/coerce.js +0 -51
  454. package/dist/node_modules/semver/functions/compare-build.js +0 -7
  455. package/dist/node_modules/semver/functions/compare-loose.js +0 -3
  456. package/dist/node_modules/semver/functions/compare.js +0 -5
  457. package/dist/node_modules/semver/functions/diff.js +0 -23
  458. package/dist/node_modules/semver/functions/eq.js +0 -3
  459. package/dist/node_modules/semver/functions/gt.js +0 -3
  460. package/dist/node_modules/semver/functions/gte.js +0 -3
  461. package/dist/node_modules/semver/functions/inc.js +0 -15
  462. package/dist/node_modules/semver/functions/lt.js +0 -3
  463. package/dist/node_modules/semver/functions/lte.js +0 -3
  464. package/dist/node_modules/semver/functions/major.js +0 -3
  465. package/dist/node_modules/semver/functions/minor.js +0 -3
  466. package/dist/node_modules/semver/functions/neq.js +0 -3
  467. package/dist/node_modules/semver/functions/parse.js +0 -33
  468. package/dist/node_modules/semver/functions/patch.js +0 -3
  469. package/dist/node_modules/semver/functions/prerelease.js +0 -6
  470. package/dist/node_modules/semver/functions/rcompare.js +0 -3
  471. package/dist/node_modules/semver/functions/rsort.js +0 -3
  472. package/dist/node_modules/semver/functions/satisfies.js +0 -10
  473. package/dist/node_modules/semver/functions/sort.js +0 -3
  474. package/dist/node_modules/semver/functions/valid.js +0 -6
  475. package/dist/node_modules/semver/index.js +0 -48
  476. package/dist/node_modules/semver/internal/constants.js +0 -17
  477. package/dist/node_modules/semver/internal/debug.js +0 -9
  478. package/dist/node_modules/semver/internal/identifiers.js +0 -23
  479. package/dist/node_modules/semver/internal/parse-options.js +0 -11
  480. package/dist/node_modules/semver/internal/re.js +0 -182
  481. package/dist/node_modules/semver/package.json +0 -73
  482. package/dist/node_modules/semver/preload.js +0 -2
  483. package/dist/node_modules/semver/range.bnf +0 -16
  484. package/dist/node_modules/semver/ranges/gtr.js +0 -4
  485. package/dist/node_modules/semver/ranges/intersects.js +0 -7
  486. package/dist/node_modules/semver/ranges/ltr.js +0 -4
  487. package/dist/node_modules/semver/ranges/max-satisfying.js +0 -25
  488. package/dist/node_modules/semver/ranges/min-satisfying.js +0 -24
  489. package/dist/node_modules/semver/ranges/min-version.js +0 -60
  490. package/dist/node_modules/semver/ranges/outside.js +0 -80
  491. package/dist/node_modules/semver/ranges/simplify.js +0 -44
  492. package/dist/node_modules/semver/ranges/subset.js +0 -222
  493. package/dist/node_modules/semver/ranges/to-comparators.js +0 -8
  494. package/dist/node_modules/semver/ranges/valid.js +0 -11
  495. package/dist/node_modules/set-blocking/CHANGELOG.md +0 -26
  496. package/dist/node_modules/set-blocking/LICENSE.txt +0 -14
  497. package/dist/node_modules/set-blocking/README.md +0 -31
  498. package/dist/node_modules/set-blocking/index.js +0 -7
  499. package/dist/node_modules/set-blocking/package.json +0 -70
  500. package/dist/node_modules/sharp/LICENSE +0 -191
  501. package/dist/node_modules/sharp/README.md +0 -117
  502. package/dist/node_modules/sharp/binding.gyp +0 -230
  503. package/dist/node_modules/sharp/build/Release/sharp.node +0 -0
  504. package/dist/node_modules/sharp/install/can-compile.js +0 -11
  505. package/dist/node_modules/sharp/install/dll-copy.js +0 -37
  506. package/dist/node_modules/sharp/install/libvips.js +0 -180
  507. package/dist/node_modules/sharp/lib/agent.js +0 -40
  508. package/dist/node_modules/sharp/lib/channel.js +0 -167
  509. package/dist/node_modules/sharp/lib/colour.js +0 -130
  510. package/dist/node_modules/sharp/lib/composite.js +0 -178
  511. package/dist/node_modules/sharp/lib/constructor.js +0 -392
  512. package/dist/node_modules/sharp/lib/index.js +0 -13
  513. package/dist/node_modules/sharp/lib/input.js +0 -429
  514. package/dist/node_modules/sharp/lib/is.js +0 -129
  515. package/dist/node_modules/sharp/lib/libvips.js +0 -123
  516. package/dist/node_modules/sharp/lib/operation.js +0 -648
  517. package/dist/node_modules/sharp/lib/output.js +0 -1035
  518. package/dist/node_modules/sharp/lib/platform.js +0 -25
  519. package/dist/node_modules/sharp/lib/resize.js +0 -454
  520. package/dist/node_modules/sharp/lib/utility.js +0 -179
  521. package/dist/node_modules/sharp/package.json +0 -427
  522. package/dist/node_modules/sharp/src/common.cc +0 -827
  523. package/dist/node_modules/sharp/src/common.h +0 -308
  524. package/dist/node_modules/sharp/src/libvips/cplusplus/VConnection.cpp +0 -178
  525. package/dist/node_modules/sharp/src/libvips/cplusplus/VError.cpp +0 -50
  526. package/dist/node_modules/sharp/src/libvips/cplusplus/VImage.cpp +0 -1467
  527. package/dist/node_modules/sharp/src/libvips/cplusplus/VInterpolate.cpp +0 -76
  528. package/dist/node_modules/sharp/src/libvips/cplusplus/vips-operators.cpp +0 -3526
  529. package/dist/node_modules/sharp/src/metadata.cc +0 -271
  530. package/dist/node_modules/sharp/src/metadata.h +0 -90
  531. package/dist/node_modules/sharp/src/operations.cc +0 -285
  532. package/dist/node_modules/sharp/src/operations.h +0 -102
  533. package/dist/node_modules/sharp/src/pipeline.cc +0 -1516
  534. package/dist/node_modules/sharp/src/pipeline.h +0 -325
  535. package/dist/node_modules/sharp/src/sharp.cc +0 -52
  536. package/dist/node_modules/sharp/src/stats.cc +0 -193
  537. package/dist/node_modules/sharp/src/stats.h +0 -70
  538. package/dist/node_modules/sharp/src/utilities.cc +0 -243
  539. package/dist/node_modules/sharp/src/utilities.h +0 -29
  540. package/dist/node_modules/sharp/vendor/8.10.6/THIRD-PARTY-NOTICES.md +0 -42
  541. package/dist/node_modules/sharp/vendor/8.10.6/lib/libvips-cpp.so.42 +0 -0
  542. package/dist/node_modules/sharp/vendor/8.10.6/platform.json +0 -1
  543. package/dist/node_modules/sharp/vendor/8.10.6/versions.json +0 -31
  544. package/dist/node_modules/signal-exit/LICENSE.txt +0 -16
  545. package/dist/node_modules/signal-exit/README.md +0 -39
  546. package/dist/node_modules/signal-exit/index.js +0 -200
  547. package/dist/node_modules/signal-exit/package.json +0 -66
  548. package/dist/node_modules/signal-exit/signals.js +0 -53
  549. package/dist/node_modules/simple-concat/.travis.yml +0 -3
  550. package/dist/node_modules/simple-concat/LICENSE +0 -20
  551. package/dist/node_modules/simple-concat/README.md +0 -44
  552. package/dist/node_modules/simple-concat/index.js +0 -15
  553. package/dist/node_modules/simple-concat/package.json +0 -72
  554. package/dist/node_modules/simple-concat/test/basic.js +0 -41
  555. package/dist/node_modules/simple-get/LICENSE +0 -20
  556. package/dist/node_modules/simple-get/README.md +0 -319
  557. package/dist/node_modules/simple-get/index.js +0 -99
  558. package/dist/node_modules/simple-get/package.json +0 -79
  559. package/dist/node_modules/simple-swizzle/LICENSE +0 -21
  560. package/dist/node_modules/simple-swizzle/README.md +0 -39
  561. package/dist/node_modules/simple-swizzle/index.js +0 -29
  562. package/dist/node_modules/simple-swizzle/package.json +0 -71
  563. package/dist/node_modules/string-width/index.js +0 -37
  564. package/dist/node_modules/string-width/license +0 -21
  565. package/dist/node_modules/string-width/package.json +0 -89
  566. package/dist/node_modules/string-width/readme.md +0 -42
  567. package/dist/node_modules/string_decoder/.travis.yml +0 -50
  568. package/dist/node_modules/string_decoder/LICENSE +0 -48
  569. package/dist/node_modules/string_decoder/README.md +0 -47
  570. package/dist/node_modules/string_decoder/lib/string_decoder.js +0 -296
  571. package/dist/node_modules/string_decoder/package.json +0 -61
  572. package/dist/node_modules/strip-ansi/index.js +0 -6
  573. package/dist/node_modules/strip-ansi/license +0 -21
  574. package/dist/node_modules/strip-ansi/package.json +0 -102
  575. package/dist/node_modules/strip-ansi/readme.md +0 -33
  576. package/dist/node_modules/strip-json-comments/index.js +0 -70
  577. package/dist/node_modules/strip-json-comments/license +0 -21
  578. package/dist/node_modules/strip-json-comments/package.json +0 -74
  579. package/dist/node_modules/strip-json-comments/readme.md +0 -64
  580. package/dist/node_modules/tar-fs/.travis.yml +0 -6
  581. package/dist/node_modules/tar-fs/LICENSE +0 -21
  582. package/dist/node_modules/tar-fs/README.md +0 -165
  583. package/dist/node_modules/tar-fs/index.js +0 -351
  584. package/dist/node_modules/tar-fs/package.json +0 -69
  585. package/dist/node_modules/tar-fs/test/fixtures/a/hello.txt +0 -1
  586. package/dist/node_modules/tar-fs/test/fixtures/b/a/test.txt +0 -1
  587. package/dist/node_modules/tar-fs/test/fixtures/d/file1 +0 -0
  588. package/dist/node_modules/tar-fs/test/fixtures/d/file2 +0 -0
  589. package/dist/node_modules/tar-fs/test/fixtures/d/sub-dir/file5 +0 -0
  590. package/dist/node_modules/tar-fs/test/fixtures/d/sub-files/file3 +0 -0
  591. package/dist/node_modules/tar-fs/test/fixtures/d/sub-files/file4 +0 -0
  592. package/dist/node_modules/tar-fs/test/fixtures/e/directory/.ignore +0 -0
  593. package/dist/node_modules/tar-fs/test/fixtures/e/file +0 -0
  594. package/dist/node_modules/tar-fs/test/fixtures/invalid.tar +0 -0
  595. package/dist/node_modules/tar-fs/test/index.js +0 -346
  596. package/dist/node_modules/tar-stream/LICENSE +0 -21
  597. package/dist/node_modules/tar-stream/README.md +0 -168
  598. package/dist/node_modules/tar-stream/extract.js +0 -257
  599. package/dist/node_modules/tar-stream/headers.js +0 -295
  600. package/dist/node_modules/tar-stream/index.js +0 -2
  601. package/dist/node_modules/tar-stream/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  602. package/dist/node_modules/tar-stream/node_modules/readable-stream/GOVERNANCE.md +0 -136
  603. package/dist/node_modules/tar-stream/node_modules/readable-stream/LICENSE +0 -47
  604. package/dist/node_modules/tar-stream/node_modules/readable-stream/README.md +0 -106
  605. package/dist/node_modules/tar-stream/node_modules/readable-stream/errors-browser.js +0 -127
  606. package/dist/node_modules/tar-stream/node_modules/readable-stream/errors.js +0 -116
  607. package/dist/node_modules/tar-stream/node_modules/readable-stream/experimentalWarning.js +0 -17
  608. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/_stream_duplex.js +0 -139
  609. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/_stream_passthrough.js +0 -39
  610. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/_stream_readable.js +0 -1124
  611. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/_stream_transform.js +0 -201
  612. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/_stream_writable.js +0 -697
  613. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/async_iterator.js +0 -207
  614. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/buffer_list.js +0 -210
  615. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -105
  616. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +0 -104
  617. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/from-browser.js +0 -3
  618. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/from.js +0 -64
  619. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/pipeline.js +0 -97
  620. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/state.js +0 -27
  621. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  622. package/dist/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  623. package/dist/node_modules/tar-stream/node_modules/readable-stream/package.json +0 -97
  624. package/dist/node_modules/tar-stream/node_modules/readable-stream/readable-browser.js +0 -9
  625. package/dist/node_modules/tar-stream/node_modules/readable-stream/readable.js +0 -16
  626. package/dist/node_modules/tar-stream/pack.js +0 -255
  627. package/dist/node_modules/tar-stream/package.json +0 -90
  628. package/dist/node_modules/tar-stream/sandbox.js +0 -11
  629. package/dist/node_modules/tunnel-agent/LICENSE +0 -55
  630. package/dist/node_modules/tunnel-agent/README.md +0 -4
  631. package/dist/node_modules/tunnel-agent/index.js +0 -244
  632. package/dist/node_modules/tunnel-agent/package.json +0 -56
  633. package/dist/node_modules/util-deprecate/History.md +0 -16
  634. package/dist/node_modules/util-deprecate/LICENSE +0 -24
  635. package/dist/node_modules/util-deprecate/README.md +0 -53
  636. package/dist/node_modules/util-deprecate/browser.js +0 -67
  637. package/dist/node_modules/util-deprecate/node.js +0 -6
  638. package/dist/node_modules/util-deprecate/package.json +0 -58
  639. package/dist/node_modules/wide-align/LICENSE +0 -14
  640. package/dist/node_modules/wide-align/README.md +0 -47
  641. package/dist/node_modules/wide-align/align.js +0 -65
  642. package/dist/node_modules/wide-align/package.json +0 -66
  643. package/dist/node_modules/wrappy/LICENSE +0 -15
  644. package/dist/node_modules/wrappy/README.md +0 -36
  645. package/dist/node_modules/wrappy/package.json +0 -58
  646. package/dist/node_modules/wrappy/wrappy.js +0 -33
  647. package/dist/node_modules/yallist/LICENSE +0 -15
  648. package/dist/node_modules/yallist/README.md +0 -204
  649. package/dist/node_modules/yallist/iterator.js +0 -8
  650. package/dist/node_modules/yallist/package.json +0 -62
  651. package/dist/node_modules/yallist/yallist.js +0 -426
  652. package/dist/package-lock.json +0 -507
  653. package/dist/package.json +0 -63
  654. package/dist/static/expected_tile_2193_153_255_z7.png +0 -0
  655. package/dist/static/expected_tile_NZTM2000Quad_30_33_z6.png +0 -0
  656. package/dist/static/expected_tile_WebMercatorQuad_252_156_z8.png +0 -0
@@ -1,869 +0,0 @@
1
- 'use strict'
2
-
3
- const tape = require('tape')
4
- const crypto = require('crypto')
5
- const fs = require('fs')
6
- const path = require('path')
7
- const BufferList = require('../')
8
- const { Buffer } = require('buffer')
9
-
10
- const encodings =
11
- ('hex utf8 utf-8 ascii binary base64' +
12
- (process.browser ? '' : ' ucs2 ucs-2 utf16le utf-16le')).split(' ')
13
-
14
- require('./indexOf')
15
- require('./isBufferList')
16
- require('./convert')
17
-
18
- tape('single bytes from single buffer', function (t) {
19
- const bl = new BufferList()
20
-
21
- bl.append(Buffer.from('abcd'))
22
-
23
- t.equal(bl.length, 4)
24
- t.equal(bl.get(-1), undefined)
25
- t.equal(bl.get(0), 97)
26
- t.equal(bl.get(1), 98)
27
- t.equal(bl.get(2), 99)
28
- t.equal(bl.get(3), 100)
29
- t.equal(bl.get(4), undefined)
30
-
31
- t.end()
32
- })
33
-
34
- tape('single bytes from multiple buffers', function (t) {
35
- const bl = new BufferList()
36
-
37
- bl.append(Buffer.from('abcd'))
38
- bl.append(Buffer.from('efg'))
39
- bl.append(Buffer.from('hi'))
40
- bl.append(Buffer.from('j'))
41
-
42
- t.equal(bl.length, 10)
43
-
44
- t.equal(bl.get(0), 97)
45
- t.equal(bl.get(1), 98)
46
- t.equal(bl.get(2), 99)
47
- t.equal(bl.get(3), 100)
48
- t.equal(bl.get(4), 101)
49
- t.equal(bl.get(5), 102)
50
- t.equal(bl.get(6), 103)
51
- t.equal(bl.get(7), 104)
52
- t.equal(bl.get(8), 105)
53
- t.equal(bl.get(9), 106)
54
-
55
- t.end()
56
- })
57
-
58
- tape('multi bytes from single buffer', function (t) {
59
- const bl = new BufferList()
60
-
61
- bl.append(Buffer.from('abcd'))
62
-
63
- t.equal(bl.length, 4)
64
-
65
- t.equal(bl.slice(0, 4).toString('ascii'), 'abcd')
66
- t.equal(bl.slice(0, 3).toString('ascii'), 'abc')
67
- t.equal(bl.slice(1, 4).toString('ascii'), 'bcd')
68
- t.equal(bl.slice(-4, -1).toString('ascii'), 'abc')
69
-
70
- t.end()
71
- })
72
-
73
- tape('multi bytes from single buffer (negative indexes)', function (t) {
74
- const bl = new BufferList()
75
-
76
- bl.append(Buffer.from('buffer'))
77
-
78
- t.equal(bl.length, 6)
79
-
80
- t.equal(bl.slice(-6, -1).toString('ascii'), 'buffe')
81
- t.equal(bl.slice(-6, -2).toString('ascii'), 'buff')
82
- t.equal(bl.slice(-5, -2).toString('ascii'), 'uff')
83
-
84
- t.end()
85
- })
86
-
87
- tape('multiple bytes from multiple buffers', function (t) {
88
- const bl = new BufferList()
89
-
90
- bl.append(Buffer.from('abcd'))
91
- bl.append(Buffer.from('efg'))
92
- bl.append(Buffer.from('hi'))
93
- bl.append(Buffer.from('j'))
94
-
95
- t.equal(bl.length, 10)
96
-
97
- t.equal(bl.slice(0, 10).toString('ascii'), 'abcdefghij')
98
- t.equal(bl.slice(3, 10).toString('ascii'), 'defghij')
99
- t.equal(bl.slice(3, 6).toString('ascii'), 'def')
100
- t.equal(bl.slice(3, 8).toString('ascii'), 'defgh')
101
- t.equal(bl.slice(5, 10).toString('ascii'), 'fghij')
102
- t.equal(bl.slice(-7, -4).toString('ascii'), 'def')
103
-
104
- t.end()
105
- })
106
-
107
- tape('multiple bytes from multiple buffer lists', function (t) {
108
- const bl = new BufferList()
109
-
110
- bl.append(new BufferList([Buffer.from('abcd'), Buffer.from('efg')]))
111
- bl.append(new BufferList([Buffer.from('hi'), Buffer.from('j')]))
112
-
113
- t.equal(bl.length, 10)
114
-
115
- t.equal(bl.slice(0, 10).toString('ascii'), 'abcdefghij')
116
-
117
- t.equal(bl.slice(3, 10).toString('ascii'), 'defghij')
118
- t.equal(bl.slice(3, 6).toString('ascii'), 'def')
119
- t.equal(bl.slice(3, 8).toString('ascii'), 'defgh')
120
- t.equal(bl.slice(5, 10).toString('ascii'), 'fghij')
121
-
122
- t.end()
123
- })
124
-
125
- // same data as previous test, just using nested constructors
126
- tape('multiple bytes from crazy nested buffer lists', function (t) {
127
- const bl = new BufferList()
128
-
129
- bl.append(new BufferList([
130
- new BufferList([
131
- new BufferList(Buffer.from('abc')),
132
- Buffer.from('d'),
133
- new BufferList(Buffer.from('efg'))
134
- ]),
135
- new BufferList([Buffer.from('hi')]),
136
- new BufferList(Buffer.from('j'))
137
- ]))
138
-
139
- t.equal(bl.length, 10)
140
-
141
- t.equal(bl.slice(0, 10).toString('ascii'), 'abcdefghij')
142
-
143
- t.equal(bl.slice(3, 10).toString('ascii'), 'defghij')
144
- t.equal(bl.slice(3, 6).toString('ascii'), 'def')
145
- t.equal(bl.slice(3, 8).toString('ascii'), 'defgh')
146
- t.equal(bl.slice(5, 10).toString('ascii'), 'fghij')
147
-
148
- t.end()
149
- })
150
-
151
- tape('append accepts arrays of Buffers', function (t) {
152
- const bl = new BufferList()
153
-
154
- bl.append(Buffer.from('abc'))
155
- bl.append([Buffer.from('def')])
156
- bl.append([Buffer.from('ghi'), Buffer.from('jkl')])
157
- bl.append([Buffer.from('mnop'), Buffer.from('qrstu'), Buffer.from('vwxyz')])
158
- t.equal(bl.length, 26)
159
- t.equal(bl.slice().toString('ascii'), 'abcdefghijklmnopqrstuvwxyz')
160
-
161
- t.end()
162
- })
163
-
164
- tape('append accepts arrays of Uint8Arrays', function (t) {
165
- const bl = new BufferList()
166
-
167
- bl.append(new Uint8Array([97, 98, 99]))
168
- bl.append([Uint8Array.from([100, 101, 102])])
169
- bl.append([new Uint8Array([103, 104, 105]), new Uint8Array([106, 107, 108])])
170
- bl.append([new Uint8Array([109, 110, 111, 112]), new Uint8Array([113, 114, 115, 116, 117]), new Uint8Array([118, 119, 120, 121, 122])])
171
- t.equal(bl.length, 26)
172
- t.equal(bl.slice().toString('ascii'), 'abcdefghijklmnopqrstuvwxyz')
173
-
174
- t.end()
175
- })
176
-
177
- tape('append accepts arrays of BufferLists', function (t) {
178
- const bl = new BufferList()
179
-
180
- bl.append(Buffer.from('abc'))
181
- bl.append([new BufferList('def')])
182
- bl.append(new BufferList([Buffer.from('ghi'), new BufferList('jkl')]))
183
- bl.append([Buffer.from('mnop'), new BufferList([Buffer.from('qrstu'), Buffer.from('vwxyz')])])
184
- t.equal(bl.length, 26)
185
- t.equal(bl.slice().toString('ascii'), 'abcdefghijklmnopqrstuvwxyz')
186
-
187
- t.end()
188
- })
189
-
190
- tape('append chainable', function (t) {
191
- const bl = new BufferList()
192
-
193
- t.ok(bl.append(Buffer.from('abcd')) === bl)
194
- t.ok(bl.append([Buffer.from('abcd')]) === bl)
195
- t.ok(bl.append(new BufferList(Buffer.from('abcd'))) === bl)
196
- t.ok(bl.append([new BufferList(Buffer.from('abcd'))]) === bl)
197
-
198
- t.end()
199
- })
200
-
201
- tape('append chainable (test results)', function (t) {
202
- const bl = new BufferList('abc')
203
- .append([new BufferList('def')])
204
- .append(new BufferList([Buffer.from('ghi'), new BufferList('jkl')]))
205
- .append([Buffer.from('mnop'), new BufferList([Buffer.from('qrstu'), Buffer.from('vwxyz')])])
206
-
207
- t.equal(bl.length, 26)
208
- t.equal(bl.slice().toString('ascii'), 'abcdefghijklmnopqrstuvwxyz')
209
-
210
- t.end()
211
- })
212
-
213
- tape('consuming from multiple buffers', function (t) {
214
- const bl = new BufferList()
215
-
216
- bl.append(Buffer.from('abcd'))
217
- bl.append(Buffer.from('efg'))
218
- bl.append(Buffer.from('hi'))
219
- bl.append(Buffer.from('j'))
220
-
221
- t.equal(bl.length, 10)
222
-
223
- t.equal(bl.slice(0, 10).toString('ascii'), 'abcdefghij')
224
-
225
- bl.consume(3)
226
- t.equal(bl.length, 7)
227
- t.equal(bl.slice(0, 7).toString('ascii'), 'defghij')
228
-
229
- bl.consume(2)
230
- t.equal(bl.length, 5)
231
- t.equal(bl.slice(0, 5).toString('ascii'), 'fghij')
232
-
233
- bl.consume(1)
234
- t.equal(bl.length, 4)
235
- t.equal(bl.slice(0, 4).toString('ascii'), 'ghij')
236
-
237
- bl.consume(1)
238
- t.equal(bl.length, 3)
239
- t.equal(bl.slice(0, 3).toString('ascii'), 'hij')
240
-
241
- bl.consume(2)
242
- t.equal(bl.length, 1)
243
- t.equal(bl.slice(0, 1).toString('ascii'), 'j')
244
-
245
- t.end()
246
- })
247
-
248
- tape('complete consumption', function (t) {
249
- const bl = new BufferList()
250
-
251
- bl.append(Buffer.from('a'))
252
- bl.append(Buffer.from('b'))
253
-
254
- bl.consume(2)
255
-
256
- t.equal(bl.length, 0)
257
- t.equal(bl._bufs.length, 0)
258
-
259
- t.end()
260
- })
261
-
262
- tape('test readUInt8 / readInt8', function (t) {
263
- const buf1 = Buffer.alloc(1)
264
- const buf2 = Buffer.alloc(3)
265
- const buf3 = Buffer.alloc(3)
266
- const bl = new BufferList()
267
-
268
- buf1[0] = 0x1
269
- buf2[1] = 0x3
270
- buf2[2] = 0x4
271
- buf3[0] = 0x23
272
- buf3[1] = 0x42
273
-
274
- bl.append(buf1)
275
- bl.append(buf2)
276
- bl.append(buf3)
277
-
278
- t.equal(bl.readUInt8(), 0x1)
279
- t.equal(bl.readUInt8(2), 0x3)
280
- t.equal(bl.readInt8(2), 0x3)
281
- t.equal(bl.readUInt8(3), 0x4)
282
- t.equal(bl.readInt8(3), 0x4)
283
- t.equal(bl.readUInt8(4), 0x23)
284
- t.equal(bl.readInt8(4), 0x23)
285
- t.equal(bl.readUInt8(5), 0x42)
286
- t.equal(bl.readInt8(5), 0x42)
287
-
288
- t.end()
289
- })
290
-
291
- tape('test readUInt16LE / readUInt16BE / readInt16LE / readInt16BE', function (t) {
292
- const buf1 = Buffer.alloc(1)
293
- const buf2 = Buffer.alloc(3)
294
- const buf3 = Buffer.alloc(3)
295
- const bl = new BufferList()
296
-
297
- buf1[0] = 0x1
298
- buf2[1] = 0x3
299
- buf2[2] = 0x4
300
- buf3[0] = 0x23
301
- buf3[1] = 0x42
302
-
303
- bl.append(buf1)
304
- bl.append(buf2)
305
- bl.append(buf3)
306
-
307
- t.equal(bl.readUInt16BE(), 0x0100)
308
- t.equal(bl.readUInt16LE(), 0x0001)
309
- t.equal(bl.readUInt16BE(2), 0x0304)
310
- t.equal(bl.readUInt16LE(2), 0x0403)
311
- t.equal(bl.readInt16BE(2), 0x0304)
312
- t.equal(bl.readInt16LE(2), 0x0403)
313
- t.equal(bl.readUInt16BE(3), 0x0423)
314
- t.equal(bl.readUInt16LE(3), 0x2304)
315
- t.equal(bl.readInt16BE(3), 0x0423)
316
- t.equal(bl.readInt16LE(3), 0x2304)
317
- t.equal(bl.readUInt16BE(4), 0x2342)
318
- t.equal(bl.readUInt16LE(4), 0x4223)
319
- t.equal(bl.readInt16BE(4), 0x2342)
320
- t.equal(bl.readInt16LE(4), 0x4223)
321
-
322
- t.end()
323
- })
324
-
325
- tape('test readUInt32LE / readUInt32BE / readInt32LE / readInt32BE', function (t) {
326
- const buf1 = Buffer.alloc(1)
327
- const buf2 = Buffer.alloc(3)
328
- const buf3 = Buffer.alloc(3)
329
- const bl = new BufferList()
330
-
331
- buf1[0] = 0x1
332
- buf2[1] = 0x3
333
- buf2[2] = 0x4
334
- buf3[0] = 0x23
335
- buf3[1] = 0x42
336
-
337
- bl.append(buf1)
338
- bl.append(buf2)
339
- bl.append(buf3)
340
-
341
- t.equal(bl.readUInt32BE(), 0x01000304)
342
- t.equal(bl.readUInt32LE(), 0x04030001)
343
- t.equal(bl.readUInt32BE(2), 0x03042342)
344
- t.equal(bl.readUInt32LE(2), 0x42230403)
345
- t.equal(bl.readInt32BE(2), 0x03042342)
346
- t.equal(bl.readInt32LE(2), 0x42230403)
347
-
348
- t.end()
349
- })
350
-
351
- tape('test readUIntLE / readUIntBE / readIntLE / readIntBE', function (t) {
352
- const buf1 = Buffer.alloc(1)
353
- const buf2 = Buffer.alloc(3)
354
- const buf3 = Buffer.alloc(3)
355
- const bl = new BufferList()
356
-
357
- buf2[0] = 0x2
358
- buf2[1] = 0x3
359
- buf2[2] = 0x4
360
- buf3[0] = 0x23
361
- buf3[1] = 0x42
362
- buf3[2] = 0x61
363
-
364
- bl.append(buf1)
365
- bl.append(buf2)
366
- bl.append(buf3)
367
-
368
- t.equal(bl.readUIntBE(1, 1), 0x02)
369
- t.equal(bl.readUIntBE(1, 2), 0x0203)
370
- t.equal(bl.readUIntBE(1, 3), 0x020304)
371
- t.equal(bl.readUIntBE(1, 4), 0x02030423)
372
- t.equal(bl.readUIntBE(1, 5), 0x0203042342)
373
- t.equal(bl.readUIntBE(1, 6), 0x020304234261)
374
- t.equal(bl.readUIntLE(1, 1), 0x02)
375
- t.equal(bl.readUIntLE(1, 2), 0x0302)
376
- t.equal(bl.readUIntLE(1, 3), 0x040302)
377
- t.equal(bl.readUIntLE(1, 4), 0x23040302)
378
- t.equal(bl.readUIntLE(1, 5), 0x4223040302)
379
- t.equal(bl.readUIntLE(1, 6), 0x614223040302)
380
- t.equal(bl.readIntBE(1, 1), 0x02)
381
- t.equal(bl.readIntBE(1, 2), 0x0203)
382
- t.equal(bl.readIntBE(1, 3), 0x020304)
383
- t.equal(bl.readIntBE(1, 4), 0x02030423)
384
- t.equal(bl.readIntBE(1, 5), 0x0203042342)
385
- t.equal(bl.readIntBE(1, 6), 0x020304234261)
386
- t.equal(bl.readIntLE(1, 1), 0x02)
387
- t.equal(bl.readIntLE(1, 2), 0x0302)
388
- t.equal(bl.readIntLE(1, 3), 0x040302)
389
- t.equal(bl.readIntLE(1, 4), 0x23040302)
390
- t.equal(bl.readIntLE(1, 5), 0x4223040302)
391
- t.equal(bl.readIntLE(1, 6), 0x614223040302)
392
-
393
- t.end()
394
- })
395
-
396
- tape('test readFloatLE / readFloatBE', function (t) {
397
- const buf1 = Buffer.alloc(1)
398
- const buf2 = Buffer.alloc(3)
399
- const buf3 = Buffer.alloc(3)
400
- const bl = new BufferList()
401
-
402
- buf1[0] = 0x01
403
- buf2[1] = 0x00
404
- buf2[2] = 0x00
405
- buf3[0] = 0x80
406
- buf3[1] = 0x3f
407
-
408
- bl.append(buf1)
409
- bl.append(buf2)
410
- bl.append(buf3)
411
-
412
- const canonical = Buffer.concat([buf1, buf2, buf3])
413
- t.equal(bl.readFloatLE(), canonical.readFloatLE())
414
- t.equal(bl.readFloatBE(), canonical.readFloatBE())
415
- t.equal(bl.readFloatLE(2), canonical.readFloatLE(2))
416
- t.equal(bl.readFloatBE(2), canonical.readFloatBE(2))
417
-
418
- t.end()
419
- })
420
-
421
- tape('test readDoubleLE / readDoubleBE', function (t) {
422
- const buf1 = Buffer.alloc(1)
423
- const buf2 = Buffer.alloc(3)
424
- const buf3 = Buffer.alloc(10)
425
- const bl = new BufferList()
426
-
427
- buf1[0] = 0x01
428
- buf2[1] = 0x55
429
- buf2[2] = 0x55
430
- buf3[0] = 0x55
431
- buf3[1] = 0x55
432
- buf3[2] = 0x55
433
- buf3[3] = 0x55
434
- buf3[4] = 0xd5
435
- buf3[5] = 0x3f
436
-
437
- bl.append(buf1)
438
- bl.append(buf2)
439
- bl.append(buf3)
440
-
441
- const canonical = Buffer.concat([buf1, buf2, buf3])
442
- t.equal(bl.readDoubleBE(), canonical.readDoubleBE())
443
- t.equal(bl.readDoubleLE(), canonical.readDoubleLE())
444
- t.equal(bl.readDoubleBE(2), canonical.readDoubleBE(2))
445
- t.equal(bl.readDoubleLE(2), canonical.readDoubleLE(2))
446
-
447
- t.end()
448
- })
449
-
450
- tape('test toString', function (t) {
451
- const bl = new BufferList()
452
-
453
- bl.append(Buffer.from('abcd'))
454
- bl.append(Buffer.from('efg'))
455
- bl.append(Buffer.from('hi'))
456
- bl.append(Buffer.from('j'))
457
-
458
- t.equal(bl.toString('ascii', 0, 10), 'abcdefghij')
459
- t.equal(bl.toString('ascii', 3, 10), 'defghij')
460
- t.equal(bl.toString('ascii', 3, 6), 'def')
461
- t.equal(bl.toString('ascii', 3, 8), 'defgh')
462
- t.equal(bl.toString('ascii', 5, 10), 'fghij')
463
-
464
- t.end()
465
- })
466
-
467
- tape('test toString encoding', function (t) {
468
- const bl = new BufferList()
469
- const b = Buffer.from('abcdefghij\xff\x00')
470
-
471
- bl.append(Buffer.from('abcd'))
472
- bl.append(Buffer.from('efg'))
473
- bl.append(Buffer.from('hi'))
474
- bl.append(Buffer.from('j'))
475
- bl.append(Buffer.from('\xff\x00'))
476
-
477
- encodings.forEach(function (enc) {
478
- t.equal(bl.toString(enc), b.toString(enc), enc)
479
- })
480
-
481
- t.end()
482
- })
483
-
484
- tape('uninitialized memory', function (t) {
485
- const secret = crypto.randomBytes(256)
486
- for (let i = 0; i < 1e6; i++) {
487
- const clone = Buffer.from(secret)
488
- const bl = new BufferList()
489
- bl.append(Buffer.from('a'))
490
- bl.consume(-1024)
491
- const buf = bl.slice(1)
492
- if (buf.indexOf(clone) !== -1) {
493
- t.fail(`Match (at ${i})`)
494
- break
495
- }
496
- }
497
- t.end()
498
- })
499
-
500
- !process.browser && tape('test stream', function (t) {
501
- const random = crypto.randomBytes(65534)
502
-
503
- const bl = new BufferList((err, buf) => {
504
- t.ok(Buffer.isBuffer(buf))
505
- t.ok(err === null)
506
- t.ok(random.equals(bl.slice()))
507
- t.ok(random.equals(buf.slice()))
508
-
509
- bl.pipe(fs.createWriteStream('/tmp/bl_test_rnd_out.dat'))
510
- .on('close', function () {
511
- const rndhash = crypto.createHash('md5').update(random).digest('hex')
512
- const md5sum = crypto.createHash('md5')
513
- const s = fs.createReadStream('/tmp/bl_test_rnd_out.dat')
514
-
515
- s.on('data', md5sum.update.bind(md5sum))
516
- s.on('end', function () {
517
- t.equal(rndhash, md5sum.digest('hex'), 'woohoo! correct hash!')
518
- t.end()
519
- })
520
- })
521
- })
522
-
523
- fs.writeFileSync('/tmp/bl_test_rnd.dat', random)
524
- fs.createReadStream('/tmp/bl_test_rnd.dat').pipe(bl)
525
- })
526
-
527
- tape('instantiation with Buffer', function (t) {
528
- const buf = crypto.randomBytes(1024)
529
- const buf2 = crypto.randomBytes(1024)
530
- let b = BufferList(buf)
531
-
532
- t.equal(buf.toString('hex'), b.slice().toString('hex'), 'same buffer')
533
- b = BufferList([buf, buf2])
534
- t.equal(b.slice().toString('hex'), Buffer.concat([buf, buf2]).toString('hex'), 'same buffer')
535
-
536
- t.end()
537
- })
538
-
539
- tape('test String appendage', function (t) {
540
- const bl = new BufferList()
541
- const b = Buffer.from('abcdefghij\xff\x00')
542
-
543
- bl.append('abcd')
544
- bl.append('efg')
545
- bl.append('hi')
546
- bl.append('j')
547
- bl.append('\xff\x00')
548
-
549
- encodings.forEach(function (enc) {
550
- t.equal(bl.toString(enc), b.toString(enc))
551
- })
552
-
553
- t.end()
554
- })
555
-
556
- tape('test Number appendage', function (t) {
557
- const bl = new BufferList()
558
- const b = Buffer.from('1234567890')
559
-
560
- bl.append(1234)
561
- bl.append(567)
562
- bl.append(89)
563
- bl.append(0)
564
-
565
- encodings.forEach(function (enc) {
566
- t.equal(bl.toString(enc), b.toString(enc))
567
- })
568
-
569
- t.end()
570
- })
571
-
572
- tape('write nothing, should get empty buffer', function (t) {
573
- t.plan(3)
574
- BufferList(function (err, data) {
575
- t.notOk(err, 'no error')
576
- t.ok(Buffer.isBuffer(data), 'got a buffer')
577
- t.equal(0, data.length, 'got a zero-length buffer')
578
- t.end()
579
- }).end()
580
- })
581
-
582
- tape('unicode string', function (t) {
583
- t.plan(2)
584
-
585
- const inp1 = '\u2600'
586
- const inp2 = '\u2603'
587
- const exp = inp1 + ' and ' + inp2
588
- const bl = BufferList()
589
-
590
- bl.write(inp1)
591
- bl.write(' and ')
592
- bl.write(inp2)
593
- t.equal(exp, bl.toString())
594
- t.equal(Buffer.from(exp).toString('hex'), bl.toString('hex'))
595
- })
596
-
597
- tape('should emit finish', function (t) {
598
- const source = BufferList()
599
- const dest = BufferList()
600
-
601
- source.write('hello')
602
- source.pipe(dest)
603
-
604
- dest.on('finish', function () {
605
- t.equal(dest.toString('utf8'), 'hello')
606
- t.end()
607
- })
608
- })
609
-
610
- tape('basic copy', function (t) {
611
- const buf = crypto.randomBytes(1024)
612
- const buf2 = Buffer.alloc(1024)
613
- const b = BufferList(buf)
614
-
615
- b.copy(buf2)
616
- t.equal(b.slice().toString('hex'), buf2.toString('hex'), 'same buffer')
617
-
618
- t.end()
619
- })
620
-
621
- tape('copy after many appends', function (t) {
622
- const buf = crypto.randomBytes(512)
623
- const buf2 = Buffer.alloc(1024)
624
- const b = BufferList(buf)
625
-
626
- b.append(buf)
627
- b.copy(buf2)
628
- t.equal(b.slice().toString('hex'), buf2.toString('hex'), 'same buffer')
629
-
630
- t.end()
631
- })
632
-
633
- tape('copy at a precise position', function (t) {
634
- const buf = crypto.randomBytes(1004)
635
- const buf2 = Buffer.alloc(1024)
636
- const b = BufferList(buf)
637
-
638
- b.copy(buf2, 20)
639
- t.equal(b.slice().toString('hex'), buf2.slice(20).toString('hex'), 'same buffer')
640
-
641
- t.end()
642
- })
643
-
644
- tape('copy starting from a precise location', function (t) {
645
- const buf = crypto.randomBytes(10)
646
- const buf2 = Buffer.alloc(5)
647
- const b = BufferList(buf)
648
-
649
- b.copy(buf2, 0, 5)
650
- t.equal(b.slice(5).toString('hex'), buf2.toString('hex'), 'same buffer')
651
-
652
- t.end()
653
- })
654
-
655
- tape('copy in an interval', function (t) {
656
- const rnd = crypto.randomBytes(10)
657
- const b = BufferList(rnd) // put the random bytes there
658
- const actual = Buffer.alloc(3)
659
- const expected = Buffer.alloc(3)
660
-
661
- rnd.copy(expected, 0, 5, 8)
662
- b.copy(actual, 0, 5, 8)
663
-
664
- t.equal(actual.toString('hex'), expected.toString('hex'), 'same buffer')
665
-
666
- t.end()
667
- })
668
-
669
- tape('copy an interval between two buffers', function (t) {
670
- const buf = crypto.randomBytes(10)
671
- const buf2 = Buffer.alloc(10)
672
- const b = BufferList(buf)
673
-
674
- b.append(buf)
675
- b.copy(buf2, 0, 5, 15)
676
-
677
- t.equal(b.slice(5, 15).toString('hex'), buf2.toString('hex'), 'same buffer')
678
-
679
- t.end()
680
- })
681
-
682
- tape('shallow slice across buffer boundaries', function (t) {
683
- const bl = new BufferList(['First', 'Second', 'Third'])
684
-
685
- t.equal(bl.shallowSlice(3, 13).toString(), 'stSecondTh')
686
-
687
- t.end()
688
- })
689
-
690
- tape('shallow slice within single buffer', function (t) {
691
- t.plan(2)
692
-
693
- const bl = new BufferList(['First', 'Second', 'Third'])
694
-
695
- t.equal(bl.shallowSlice(5, 10).toString(), 'Secon')
696
- t.equal(bl.shallowSlice(7, 10).toString(), 'con')
697
-
698
- t.end()
699
- })
700
-
701
- tape('shallow slice single buffer', function (t) {
702
- t.plan(3)
703
-
704
- const bl = new BufferList(['First', 'Second', 'Third'])
705
-
706
- t.equal(bl.shallowSlice(0, 5).toString(), 'First')
707
- t.equal(bl.shallowSlice(5, 11).toString(), 'Second')
708
- t.equal(bl.shallowSlice(11, 16).toString(), 'Third')
709
- })
710
-
711
- tape('shallow slice with negative or omitted indices', function (t) {
712
- t.plan(4)
713
-
714
- const bl = new BufferList(['First', 'Second', 'Third'])
715
-
716
- t.equal(bl.shallowSlice().toString(), 'FirstSecondThird')
717
- t.equal(bl.shallowSlice(5).toString(), 'SecondThird')
718
- t.equal(bl.shallowSlice(5, -3).toString(), 'SecondTh')
719
- t.equal(bl.shallowSlice(-8).toString(), 'ondThird')
720
- })
721
-
722
- tape('shallow slice does not make a copy', function (t) {
723
- t.plan(1)
724
-
725
- const buffers = [Buffer.from('First'), Buffer.from('Second'), Buffer.from('Third')]
726
- const bl = (new BufferList(buffers)).shallowSlice(5, -3)
727
-
728
- buffers[1].fill('h')
729
- buffers[2].fill('h')
730
-
731
- t.equal(bl.toString(), 'hhhhhhhh')
732
- })
733
-
734
- tape('shallow slice with 0 length', function (t) {
735
- t.plan(1)
736
-
737
- const buffers = [Buffer.from('First'), Buffer.from('Second'), Buffer.from('Third')]
738
- const bl = (new BufferList(buffers)).shallowSlice(0, 0)
739
-
740
- t.equal(bl.length, 0)
741
- })
742
-
743
- tape('shallow slice with 0 length from middle', function (t) {
744
- t.plan(1)
745
-
746
- const buffers = [Buffer.from('First'), Buffer.from('Second'), Buffer.from('Third')]
747
- const bl = (new BufferList(buffers)).shallowSlice(10, 10)
748
-
749
- t.equal(bl.length, 0)
750
- })
751
-
752
- tape('duplicate', function (t) {
753
- t.plan(2)
754
-
755
- const bl = new BufferList('abcdefghij\xff\x00')
756
- const dup = bl.duplicate()
757
-
758
- t.equal(bl.prototype, dup.prototype)
759
- t.equal(bl.toString('hex'), dup.toString('hex'))
760
- })
761
-
762
- tape('destroy no pipe', function (t) {
763
- t.plan(2)
764
-
765
- const bl = new BufferList('alsdkfja;lsdkfja;lsdk')
766
-
767
- bl.destroy()
768
-
769
- t.equal(bl._bufs.length, 0)
770
- t.equal(bl.length, 0)
771
- })
772
-
773
- tape('destroy with error', function (t) {
774
- t.plan(3)
775
-
776
- const bl = new BufferList('alsdkfja;lsdkfja;lsdk')
777
- const err = new Error('kaboom')
778
-
779
- bl.destroy(err)
780
- bl.on('error', function (_err) {
781
- t.equal(_err, err)
782
- })
783
-
784
- t.equal(bl._bufs.length, 0)
785
- t.equal(bl.length, 0)
786
- })
787
-
788
- !process.browser && tape('destroy with pipe before read end', function (t) {
789
- t.plan(2)
790
-
791
- const bl = new BufferList()
792
- fs.createReadStream(path.join(__dirname, '/test.js'))
793
- .pipe(bl)
794
-
795
- bl.destroy()
796
-
797
- t.equal(bl._bufs.length, 0)
798
- t.equal(bl.length, 0)
799
- })
800
-
801
- !process.browser && tape('destroy with pipe before read end with race', function (t) {
802
- t.plan(2)
803
-
804
- const bl = new BufferList()
805
-
806
- fs.createReadStream(path.join(__dirname, '/test.js'))
807
- .pipe(bl)
808
-
809
- setTimeout(function () {
810
- bl.destroy()
811
- setTimeout(function () {
812
- t.equal(bl._bufs.length, 0)
813
- t.equal(bl.length, 0)
814
- }, 500)
815
- }, 500)
816
- })
817
-
818
- !process.browser && tape('destroy with pipe after read end', function (t) {
819
- t.plan(2)
820
-
821
- const bl = new BufferList()
822
-
823
- fs.createReadStream(path.join(__dirname, '/test.js'))
824
- .on('end', onEnd)
825
- .pipe(bl)
826
-
827
- function onEnd () {
828
- bl.destroy()
829
-
830
- t.equal(bl._bufs.length, 0)
831
- t.equal(bl.length, 0)
832
- }
833
- })
834
-
835
- !process.browser && tape('destroy with pipe while writing to a destination', function (t) {
836
- t.plan(4)
837
-
838
- const bl = new BufferList()
839
- const ds = new BufferList()
840
-
841
- fs.createReadStream(path.join(__dirname, '/test.js'))
842
- .on('end', onEnd)
843
- .pipe(bl)
844
-
845
- function onEnd () {
846
- bl.pipe(ds)
847
-
848
- setTimeout(function () {
849
- bl.destroy()
850
-
851
- t.equals(bl._bufs.length, 0)
852
- t.equals(bl.length, 0)
853
-
854
- ds.destroy()
855
-
856
- t.equals(bl._bufs.length, 0)
857
- t.equals(bl.length, 0)
858
- }, 100)
859
- }
860
- })
861
-
862
- !process.browser && tape('handle error', function (t) {
863
- t.plan(2)
864
-
865
- fs.createReadStream('/does/not/exist').pipe(BufferList(function (err, data) {
866
- t.ok(err instanceof Error, 'has error')
867
- t.notOk(data, 'no data')
868
- }))
869
- })