@cloudant/couchbackup 2.9.8-SNAPSHOT.92 → 2.9.8-SNAPSHOT.94

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 (374) hide show
  1. package/.scannerwork/.sonar_lock +0 -0
  2. package/.scannerwork/report-task.txt +7 -0
  3. package/.scannerwork/scanner-report/activerules.pb +1946 -0
  4. package/.scannerwork/scanner-report/analysis-warnings.pb +3 -0
  5. package/.scannerwork/scanner-report/analysis.log +54 -0
  6. package/.scannerwork/scanner-report/changesets-18.pb +1 -0
  7. package/.scannerwork/scanner-report/changesets-19.pb +1 -0
  8. package/.scannerwork/scanner-report/changesets-2.pb +1 -0
  9. package/.scannerwork/scanner-report/changesets-20.pb +1 -0
  10. package/.scannerwork/scanner-report/changesets-21.pb +1 -0
  11. package/.scannerwork/scanner-report/changesets-22.pb +1 -0
  12. package/.scannerwork/scanner-report/changesets-23.pb +1 -0
  13. package/.scannerwork/scanner-report/changesets-24.pb +1 -0
  14. package/.scannerwork/scanner-report/changesets-25.pb +1 -0
  15. package/.scannerwork/scanner-report/changesets-26.pb +1 -0
  16. package/.scannerwork/scanner-report/changesets-27.pb +1 -0
  17. package/.scannerwork/scanner-report/changesets-28.pb +1 -0
  18. package/.scannerwork/scanner-report/changesets-29.pb +1 -0
  19. package/.scannerwork/scanner-report/changesets-3.pb +1 -0
  20. package/.scannerwork/scanner-report/changesets-30.pb +1 -0
  21. package/.scannerwork/scanner-report/changesets-31.pb +1 -0
  22. package/.scannerwork/scanner-report/changesets-32.pb +1 -0
  23. package/.scannerwork/scanner-report/changesets-33.pb +1 -0
  24. package/.scannerwork/scanner-report/changesets-34.pb +1 -0
  25. package/.scannerwork/scanner-report/changesets-35.pb +1 -0
  26. package/.scannerwork/scanner-report/changesets-4.pb +1 -0
  27. package/.scannerwork/scanner-report/changesets-49.pb +1 -0
  28. package/.scannerwork/scanner-report/changesets-5.pb +1 -0
  29. package/.scannerwork/scanner-report/changesets-50.pb +1 -0
  30. package/.scannerwork/scanner-report/changesets-53.pb +1 -0
  31. package/.scannerwork/scanner-report/changesets-54.pb +1 -0
  32. package/.scannerwork/scanner-report/changesets-55.pb +1 -0
  33. package/.scannerwork/scanner-report/changesets-56.pb +1 -0
  34. package/.scannerwork/scanner-report/changesets-57.pb +1 -0
  35. package/.scannerwork/scanner-report/changesets-58.pb +1 -0
  36. package/.scannerwork/scanner-report/changesets-59.pb +1 -0
  37. package/.scannerwork/scanner-report/changesets-6.pb +0 -0
  38. package/.scannerwork/scanner-report/changesets-60.pb +1 -0
  39. package/.scannerwork/scanner-report/changesets-61.pb +1 -0
  40. package/.scannerwork/scanner-report/changesets-62.pb +1 -0
  41. package/.scannerwork/scanner-report/changesets-63.pb +1 -0
  42. package/.scannerwork/scanner-report/changesets-64.pb +1 -0
  43. package/.scannerwork/scanner-report/changesets-65.pb +1 -0
  44. package/.scannerwork/scanner-report/changesets-66.pb +1 -0
  45. package/.scannerwork/scanner-report/changesets-68.pb +1 -0
  46. package/.scannerwork/scanner-report/changesets-69.pb +1 -0
  47. package/.scannerwork/scanner-report/changesets-70.pb +1 -0
  48. package/.scannerwork/scanner-report/component-1.pb +1 -0
  49. package/.scannerwork/scanner-report/component-18.pb +1 -0
  50. package/.scannerwork/scanner-report/component-19.pb +1 -0
  51. package/.scannerwork/scanner-report/component-2.pb +1 -0
  52. package/.scannerwork/scanner-report/component-20.pb +1 -0
  53. package/.scannerwork/scanner-report/component-21.pb +1 -0
  54. package/.scannerwork/scanner-report/component-22.pb +1 -0
  55. package/.scannerwork/scanner-report/component-23.pb +1 -0
  56. package/.scannerwork/scanner-report/component-24.pb +1 -0
  57. package/.scannerwork/scanner-report/component-25.pb +1 -0
  58. package/.scannerwork/scanner-report/component-26.pb +1 -0
  59. package/.scannerwork/scanner-report/component-27.pb +1 -0
  60. package/.scannerwork/scanner-report/component-28.pb +1 -0
  61. package/.scannerwork/scanner-report/component-29.pb +1 -0
  62. package/.scannerwork/scanner-report/component-3.pb +1 -0
  63. package/.scannerwork/scanner-report/component-30.pb +1 -0
  64. package/.scannerwork/scanner-report/component-31.pb +1 -0
  65. package/.scannerwork/scanner-report/component-32.pb +1 -0
  66. package/.scannerwork/scanner-report/component-33.pb +1 -0
  67. package/.scannerwork/scanner-report/component-34.pb +1 -0
  68. package/.scannerwork/scanner-report/component-35.pb +1 -0
  69. package/.scannerwork/scanner-report/component-37.pb +1 -0
  70. package/.scannerwork/scanner-report/component-38.pb +1 -0
  71. package/.scannerwork/scanner-report/component-4.pb +1 -0
  72. package/.scannerwork/scanner-report/component-40.pb +1 -0
  73. package/.scannerwork/scanner-report/component-49.pb +1 -0
  74. package/.scannerwork/scanner-report/component-5.pb +1 -0
  75. package/.scannerwork/scanner-report/component-50.pb +1 -0
  76. package/.scannerwork/scanner-report/component-51.pb +1 -0
  77. package/.scannerwork/scanner-report/component-53.pb +1 -0
  78. package/.scannerwork/scanner-report/component-54.pb +1 -0
  79. package/.scannerwork/scanner-report/component-55.pb +1 -0
  80. package/.scannerwork/scanner-report/component-56.pb +1 -0
  81. package/.scannerwork/scanner-report/component-57.pb +1 -0
  82. package/.scannerwork/scanner-report/component-58.pb +1 -0
  83. package/.scannerwork/scanner-report/component-59.pb +1 -0
  84. package/.scannerwork/scanner-report/component-6.pb +1 -0
  85. package/.scannerwork/scanner-report/component-60.pb +1 -0
  86. package/.scannerwork/scanner-report/component-61.pb +1 -0
  87. package/.scannerwork/scanner-report/component-62.pb +1 -0
  88. package/.scannerwork/scanner-report/component-63.pb +1 -0
  89. package/.scannerwork/scanner-report/component-64.pb +1 -0
  90. package/.scannerwork/scanner-report/component-65.pb +1 -0
  91. package/.scannerwork/scanner-report/component-66.pb +1 -0
  92. package/.scannerwork/scanner-report/component-67.pb +1 -0
  93. package/.scannerwork/scanner-report/component-68.pb +1 -0
  94. package/.scannerwork/scanner-report/component-69.pb +1 -0
  95. package/.scannerwork/scanner-report/component-70.pb +1 -0
  96. package/.scannerwork/scanner-report/context-props.pb +3 -0
  97. package/.scannerwork/scanner-report/coverages-18.pb +0 -0
  98. package/.scannerwork/scanner-report/coverages-19.pb +0 -0
  99. package/.scannerwork/scanner-report/coverages-2.pb +0 -0
  100. package/.scannerwork/scanner-report/coverages-20.pb +0 -0
  101. package/.scannerwork/scanner-report/coverages-21.pb +0 -0
  102. package/.scannerwork/scanner-report/coverages-22.pb +0 -0
  103. package/.scannerwork/scanner-report/coverages-23.pb +0 -0
  104. package/.scannerwork/scanner-report/coverages-24.pb +0 -0
  105. package/.scannerwork/scanner-report/coverages-25.pb +0 -0
  106. package/.scannerwork/scanner-report/coverages-26.pb +0 -0
  107. package/.scannerwork/scanner-report/coverages-27.pb +0 -0
  108. package/.scannerwork/scanner-report/coverages-28.pb +0 -0
  109. package/.scannerwork/scanner-report/coverages-29.pb +0 -0
  110. package/.scannerwork/scanner-report/coverages-3.pb +0 -0
  111. package/.scannerwork/scanner-report/coverages-30.pb +0 -0
  112. package/.scannerwork/scanner-report/coverages-31.pb +0 -0
  113. package/.scannerwork/scanner-report/coverages-32.pb +0 -0
  114. package/.scannerwork/scanner-report/coverages-33.pb +0 -0
  115. package/.scannerwork/scanner-report/coverages-34.pb +0 -0
  116. package/.scannerwork/scanner-report/coverages-35.pb +0 -0
  117. package/.scannerwork/scanner-report/coverages-4.pb +0 -0
  118. package/.scannerwork/scanner-report/coverages-49.pb +0 -0
  119. package/.scannerwork/scanner-report/coverages-5.pb +0 -0
  120. package/.scannerwork/scanner-report/coverages-50.pb +0 -0
  121. package/.scannerwork/scanner-report/coverages-53.pb +0 -0
  122. package/.scannerwork/scanner-report/coverages-54.pb +0 -0
  123. package/.scannerwork/scanner-report/coverages-55.pb +0 -0
  124. package/.scannerwork/scanner-report/coverages-56.pb +0 -0
  125. package/.scannerwork/scanner-report/coverages-57.pb +0 -0
  126. package/.scannerwork/scanner-report/coverages-58.pb +0 -0
  127. package/.scannerwork/scanner-report/coverages-59.pb +0 -0
  128. package/.scannerwork/scanner-report/coverages-6.pb +0 -0
  129. package/.scannerwork/scanner-report/coverages-60.pb +0 -0
  130. package/.scannerwork/scanner-report/coverages-61.pb +0 -0
  131. package/.scannerwork/scanner-report/coverages-62.pb +0 -0
  132. package/.scannerwork/scanner-report/coverages-63.pb +0 -0
  133. package/.scannerwork/scanner-report/coverages-64.pb +0 -0
  134. package/.scannerwork/scanner-report/coverages-65.pb +0 -0
  135. package/.scannerwork/scanner-report/coverages-66.pb +0 -0
  136. package/.scannerwork/scanner-report/coverages-68.pb +0 -0
  137. package/.scannerwork/scanner-report/coverages-69.pb +0 -0
  138. package/.scannerwork/scanner-report/coverages-70.pb +0 -0
  139. package/.scannerwork/scanner-report/duplications-18.pb +0 -0
  140. package/.scannerwork/scanner-report/duplications-19.pb +0 -0
  141. package/.scannerwork/scanner-report/duplications-2.pb +0 -0
  142. package/.scannerwork/scanner-report/duplications-20.pb +0 -0
  143. package/.scannerwork/scanner-report/duplications-21.pb +0 -0
  144. package/.scannerwork/scanner-report/duplications-22.pb +0 -0
  145. package/.scannerwork/scanner-report/duplications-23.pb +0 -0
  146. package/.scannerwork/scanner-report/duplications-24.pb +0 -0
  147. package/.scannerwork/scanner-report/duplications-25.pb +2 -0
  148. package/.scannerwork/scanner-report/duplications-26.pb +0 -0
  149. package/.scannerwork/scanner-report/duplications-27.pb +0 -0
  150. package/.scannerwork/scanner-report/duplications-28.pb +0 -0
  151. package/.scannerwork/scanner-report/duplications-29.pb +0 -0
  152. package/.scannerwork/scanner-report/duplications-3.pb +3 -0
  153. package/.scannerwork/scanner-report/duplications-30.pb +0 -0
  154. package/.scannerwork/scanner-report/duplications-31.pb +0 -0
  155. package/.scannerwork/scanner-report/duplications-32.pb +3 -0
  156. package/.scannerwork/scanner-report/duplications-34.pb +2 -0
  157. package/.scannerwork/scanner-report/duplications-35.pb +0 -0
  158. package/.scannerwork/scanner-report/duplications-4.pb +0 -0
  159. package/.scannerwork/scanner-report/duplications-49.pb +2 -0
  160. package/.scannerwork/scanner-report/duplications-5.pb +3 -0
  161. package/.scannerwork/scanner-report/duplications-50.pb +2 -0
  162. package/.scannerwork/scanner-report/duplications-53.pb +0 -0
  163. package/.scannerwork/scanner-report/duplications-54.pb +0 -0
  164. package/.scannerwork/scanner-report/duplications-55.pb +0 -0
  165. package/.scannerwork/scanner-report/duplications-56.pb +0 -0
  166. package/.scannerwork/scanner-report/duplications-57.pb +0 -0
  167. package/.scannerwork/scanner-report/duplications-58.pb +0 -0
  168. package/.scannerwork/scanner-report/duplications-59.pb +0 -0
  169. package/.scannerwork/scanner-report/duplications-6.pb +2 -0
  170. package/.scannerwork/scanner-report/duplications-60.pb +2 -0
  171. package/.scannerwork/scanner-report/duplications-61.pb +0 -0
  172. package/.scannerwork/scanner-report/duplications-62.pb +2 -0
  173. package/.scannerwork/scanner-report/duplications-63.pb +0 -0
  174. package/.scannerwork/scanner-report/duplications-64.pb +0 -0
  175. package/.scannerwork/scanner-report/duplications-65.pb +0 -0
  176. package/.scannerwork/scanner-report/duplications-66.pb +0 -0
  177. package/.scannerwork/scanner-report/duplications-68.pb +0 -0
  178. package/.scannerwork/scanner-report/duplications-69.pb +0 -0
  179. package/.scannerwork/scanner-report/duplications-70.pb +0 -0
  180. package/.scannerwork/scanner-report/issues-21.pb +3 -0
  181. package/.scannerwork/scanner-report/issues-29.pb +3 -0
  182. package/.scannerwork/scanner-report/issues-3.pb +4 -0
  183. package/.scannerwork/scanner-report/issues-4.pb +6 -0
  184. package/.scannerwork/scanner-report/measures-18.pb +0 -0
  185. package/.scannerwork/scanner-report/measures-19.pb +0 -0
  186. package/.scannerwork/scanner-report/measures-2.pb +0 -0
  187. package/.scannerwork/scanner-report/measures-20.pb +0 -0
  188. package/.scannerwork/scanner-report/measures-21.pb +0 -0
  189. package/.scannerwork/scanner-report/measures-22.pb +0 -0
  190. package/.scannerwork/scanner-report/measures-23.pb +0 -0
  191. package/.scannerwork/scanner-report/measures-24.pb +0 -0
  192. package/.scannerwork/scanner-report/measures-25.pb +0 -0
  193. package/.scannerwork/scanner-report/measures-26.pb +0 -0
  194. package/.scannerwork/scanner-report/measures-27.pb +0 -0
  195. package/.scannerwork/scanner-report/measures-28.pb +0 -0
  196. package/.scannerwork/scanner-report/measures-29.pb +0 -0
  197. package/.scannerwork/scanner-report/measures-3.pb +0 -0
  198. package/.scannerwork/scanner-report/measures-30.pb +0 -0
  199. package/.scannerwork/scanner-report/measures-31.pb +0 -0
  200. package/.scannerwork/scanner-report/measures-32.pb +0 -0
  201. package/.scannerwork/scanner-report/measures-33.pb +0 -0
  202. package/.scannerwork/scanner-report/measures-34.pb +0 -0
  203. package/.scannerwork/scanner-report/measures-35.pb +0 -0
  204. package/.scannerwork/scanner-report/measures-37.pb +0 -0
  205. package/.scannerwork/scanner-report/measures-38.pb +0 -0
  206. package/.scannerwork/scanner-report/measures-4.pb +0 -0
  207. package/.scannerwork/scanner-report/measures-40.pb +0 -0
  208. package/.scannerwork/scanner-report/measures-49.pb +0 -0
  209. package/.scannerwork/scanner-report/measures-5.pb +0 -0
  210. package/.scannerwork/scanner-report/measures-50.pb +0 -0
  211. package/.scannerwork/scanner-report/measures-51.pb +0 -0
  212. package/.scannerwork/scanner-report/measures-53.pb +0 -0
  213. package/.scannerwork/scanner-report/measures-54.pb +0 -0
  214. package/.scannerwork/scanner-report/measures-55.pb +16 -0
  215. package/.scannerwork/scanner-report/measures-56.pb +0 -0
  216. package/.scannerwork/scanner-report/measures-57.pb +0 -0
  217. package/.scannerwork/scanner-report/measures-58.pb +0 -0
  218. package/.scannerwork/scanner-report/measures-59.pb +0 -0
  219. package/.scannerwork/scanner-report/measures-6.pb +15 -0
  220. package/.scannerwork/scanner-report/measures-60.pb +0 -0
  221. package/.scannerwork/scanner-report/measures-61.pb +0 -0
  222. package/.scannerwork/scanner-report/measures-62.pb +0 -0
  223. package/.scannerwork/scanner-report/measures-63.pb +15 -0
  224. package/.scannerwork/scanner-report/measures-64.pb +0 -0
  225. package/.scannerwork/scanner-report/measures-65.pb +0 -0
  226. package/.scannerwork/scanner-report/measures-66.pb +0 -0
  227. package/.scannerwork/scanner-report/measures-67.pb +0 -0
  228. package/.scannerwork/scanner-report/measures-68.pb +0 -0
  229. package/.scannerwork/scanner-report/measures-69.pb +0 -0
  230. package/.scannerwork/scanner-report/measures-70.pb +0 -0
  231. package/.scannerwork/scanner-report/metadata.pb +0 -0
  232. package/.scannerwork/scanner-report/source-18.txt +63 -0
  233. package/.scannerwork/scanner-report/source-19.txt +36 -0
  234. package/.scannerwork/scanner-report/source-2.txt +147 -0
  235. package/.scannerwork/scanner-report/source-20.txt +92 -0
  236. package/.scannerwork/scanner-report/source-21.txt +47 -0
  237. package/.scannerwork/scanner-report/source-22.txt +156 -0
  238. package/.scannerwork/scanner-report/source-23.txt +34 -0
  239. package/.scannerwork/scanner-report/source-24.txt +36 -0
  240. package/.scannerwork/scanner-report/source-25.txt +145 -0
  241. package/.scannerwork/scanner-report/source-26.txt +68 -0
  242. package/.scannerwork/scanner-report/source-27.txt +35 -0
  243. package/.scannerwork/scanner-report/source-28.txt +100 -0
  244. package/.scannerwork/scanner-report/source-29.txt +142 -0
  245. package/.scannerwork/scanner-report/source-3.txt +244 -0
  246. package/.scannerwork/scanner-report/source-30.txt +68 -0
  247. package/.scannerwork/scanner-report/source-31.txt +625 -0
  248. package/.scannerwork/scanner-report/source-32.txt +119 -0
  249. package/.scannerwork/scanner-report/source-33.txt +29 -0
  250. package/.scannerwork/scanner-report/source-34.txt +225 -0
  251. package/.scannerwork/scanner-report/source-35.txt +114 -0
  252. package/.scannerwork/scanner-report/source-37.txt +509 -0
  253. package/.scannerwork/scanner-report/source-38.txt +167 -0
  254. package/.scannerwork/scanner-report/source-4.txt +366 -0
  255. package/.scannerwork/scanner-report/source-40.txt +509 -0
  256. package/.scannerwork/scanner-report/source-49.txt +175 -0
  257. package/.scannerwork/scanner-report/source-5.txt +131 -0
  258. package/.scannerwork/scanner-report/source-50.txt +190 -0
  259. package/.scannerwork/scanner-report/source-51.txt +509 -0
  260. package/.scannerwork/scanner-report/source-53.txt +164 -0
  261. package/.scannerwork/scanner-report/source-54.txt +46 -0
  262. package/.scannerwork/scanner-report/source-55.txt +178 -0
  263. package/.scannerwork/scanner-report/source-56.txt +129 -0
  264. package/.scannerwork/scanner-report/source-57.txt +41 -0
  265. package/.scannerwork/scanner-report/source-58.txt +54 -0
  266. package/.scannerwork/scanner-report/source-59.txt +111 -0
  267. package/.scannerwork/scanner-report/source-6.txt +293 -0
  268. package/.scannerwork/scanner-report/source-60.txt +92 -0
  269. package/.scannerwork/scanner-report/source-61.txt +80 -0
  270. package/.scannerwork/scanner-report/source-62.txt +75 -0
  271. package/.scannerwork/scanner-report/source-63.txt +104 -0
  272. package/.scannerwork/scanner-report/source-64.txt +118 -0
  273. package/.scannerwork/scanner-report/source-65.txt +31 -0
  274. package/.scannerwork/scanner-report/source-66.txt +281 -0
  275. package/.scannerwork/scanner-report/source-67.txt +509 -0
  276. package/.scannerwork/scanner-report/source-68.txt +77 -0
  277. package/.scannerwork/scanner-report/source-69.txt +56 -0
  278. package/.scannerwork/scanner-report/source-70.txt +418 -0
  279. package/.scannerwork/scanner-report/symbols-18.pb +43 -0
  280. package/.scannerwork/scanner-report/symbols-19.pb +11 -0
  281. package/.scannerwork/scanner-report/symbols-2.pb +85 -0
  282. package/.scannerwork/scanner-report/symbols-20.pb +60 -0
  283. package/.scannerwork/scanner-report/symbols-21.pb +27 -0
  284. package/.scannerwork/scanner-report/symbols-22.pb +112 -0
  285. package/.scannerwork/scanner-report/symbols-23.pb +10 -0
  286. package/.scannerwork/scanner-report/symbols-24.pb +14 -0
  287. package/.scannerwork/scanner-report/symbols-25.pb +102 -0
  288. package/.scannerwork/scanner-report/symbols-26.pb +36 -0
  289. package/.scannerwork/scanner-report/symbols-27.pb +17 -0
  290. package/.scannerwork/scanner-report/symbols-28.pb +69 -0
  291. package/.scannerwork/scanner-report/symbols-29.pb +116 -0
  292. package/.scannerwork/scanner-report/symbols-3.pb +394 -0
  293. package/.scannerwork/scanner-report/symbols-30.pb +45 -0
  294. package/.scannerwork/scanner-report/symbols-31.pb +1254 -0
  295. package/.scannerwork/scanner-report/symbols-32.pb +77 -0
  296. package/.scannerwork/scanner-report/symbols-33.pb +9 -0
  297. package/.scannerwork/scanner-report/symbols-34.pb +418 -0
  298. package/.scannerwork/scanner-report/symbols-35.pb +28 -0
  299. package/.scannerwork/scanner-report/symbols-4.pb +494 -0
  300. package/.scannerwork/scanner-report/symbols-49.pb +153 -0
  301. package/.scannerwork/scanner-report/symbols-5.pb +97 -0
  302. package/.scannerwork/scanner-report/symbols-50.pb +180 -0
  303. package/.scannerwork/scanner-report/symbols-53.pb +126 -0
  304. package/.scannerwork/scanner-report/symbols-54.pb +20 -0
  305. package/.scannerwork/scanner-report/symbols-55.pb +144 -0
  306. package/.scannerwork/scanner-report/symbols-56.pb +33 -0
  307. package/.scannerwork/scanner-report/symbols-57.pb +18 -0
  308. package/.scannerwork/scanner-report/symbols-58.pb +15 -0
  309. package/.scannerwork/scanner-report/symbols-59.pb +59 -0
  310. package/.scannerwork/scanner-report/symbols-6.pb +486 -0
  311. package/.scannerwork/scanner-report/symbols-60.pb +44 -0
  312. package/.scannerwork/scanner-report/symbols-61.pb +46 -0
  313. package/.scannerwork/scanner-report/symbols-62.pb +42 -0
  314. package/.scannerwork/scanner-report/symbols-63.pb +42 -0
  315. package/.scannerwork/scanner-report/symbols-64.pb +30 -0
  316. package/.scannerwork/scanner-report/symbols-65.pb +14 -0
  317. package/.scannerwork/scanner-report/symbols-66.pb +354 -0
  318. package/.scannerwork/scanner-report/symbols-68.pb +30 -0
  319. package/.scannerwork/scanner-report/symbols-69.pb +19 -0
  320. package/.scannerwork/scanner-report/symbols-70.pb +610 -0
  321. package/.scannerwork/scanner-report/syntax-highlightings-18.pb +82 -0
  322. package/.scannerwork/scanner-report/syntax-highlightings-19.pb +59 -0
  323. package/.scannerwork/scanner-report/syntax-highlightings-2.pb +191 -0
  324. package/.scannerwork/scanner-report/syntax-highlightings-20.pb +110 -0
  325. package/.scannerwork/scanner-report/syntax-highlightings-21.pb +68 -0
  326. package/.scannerwork/scanner-report/syntax-highlightings-22.pb +223 -0
  327. package/.scannerwork/scanner-report/syntax-highlightings-23.pb +50 -0
  328. package/.scannerwork/scanner-report/syntax-highlightings-24.pb +54 -0
  329. package/.scannerwork/scanner-report/syntax-highlightings-25.pb +227 -0
  330. package/.scannerwork/scanner-report/syntax-highlightings-26.pb +95 -0
  331. package/.scannerwork/scanner-report/syntax-highlightings-27.pb +63 -0
  332. package/.scannerwork/scanner-report/syntax-highlightings-28.pb +105 -0
  333. package/.scannerwork/scanner-report/syntax-highlightings-29.pb +134 -0
  334. package/.scannerwork/scanner-report/syntax-highlightings-3.pb +329 -0
  335. package/.scannerwork/scanner-report/syntax-highlightings-30.pb +110 -0
  336. package/.scannerwork/scanner-report/syntax-highlightings-31.pb +887 -0
  337. package/.scannerwork/scanner-report/syntax-highlightings-32.pb +158 -0
  338. package/.scannerwork/scanner-report/syntax-highlightings-33.pb +48 -0
  339. package/.scannerwork/scanner-report/syntax-highlightings-34.pb +331 -0
  340. package/.scannerwork/scanner-report/syntax-highlightings-35.pb +138 -0
  341. package/.scannerwork/scanner-report/syntax-highlightings-37.pb +3748 -0
  342. package/.scannerwork/scanner-report/syntax-highlightings-38.pb +949 -0
  343. package/.scannerwork/scanner-report/syntax-highlightings-4.pb +630 -0
  344. package/.scannerwork/scanner-report/syntax-highlightings-40.pb +3747 -0
  345. package/.scannerwork/scanner-report/syntax-highlightings-49.pb +214 -0
  346. package/.scannerwork/scanner-report/syntax-highlightings-5.pb +182 -0
  347. package/.scannerwork/scanner-report/syntax-highlightings-50.pb +225 -0
  348. package/.scannerwork/scanner-report/syntax-highlightings-51.pb +3749 -0
  349. package/.scannerwork/scanner-report/syntax-highlightings-53.pb +213 -0
  350. package/.scannerwork/scanner-report/syntax-highlightings-54.pb +64 -0
  351. package/.scannerwork/scanner-report/syntax-highlightings-55.pb +243 -0
  352. package/.scannerwork/scanner-report/syntax-highlightings-56.pb +129 -0
  353. package/.scannerwork/scanner-report/syntax-highlightings-57.pb +50 -0
  354. package/.scannerwork/scanner-report/syntax-highlightings-58.pb +54 -0
  355. package/.scannerwork/scanner-report/syntax-highlightings-59.pb +133 -0
  356. package/.scannerwork/scanner-report/syntax-highlightings-6.pb +659 -0
  357. package/.scannerwork/scanner-report/syntax-highlightings-60.pb +90 -0
  358. package/.scannerwork/scanner-report/syntax-highlightings-61.pb +95 -0
  359. package/.scannerwork/scanner-report/syntax-highlightings-62.pb +78 -0
  360. package/.scannerwork/scanner-report/syntax-highlightings-63.pb +116 -0
  361. package/.scannerwork/scanner-report/syntax-highlightings-64.pb +113 -0
  362. package/.scannerwork/scanner-report/syntax-highlightings-65.pb +45 -0
  363. package/.scannerwork/scanner-report/syntax-highlightings-66.pb +285 -0
  364. package/.scannerwork/scanner-report/syntax-highlightings-67.pb +3747 -0
  365. package/.scannerwork/scanner-report/syntax-highlightings-68.pb +103 -0
  366. package/.scannerwork/scanner-report/syntax-highlightings-69.pb +82 -0
  367. package/.scannerwork/scanner-report/syntax-highlightings-70.pb +648 -0
  368. package/.secrets.baseline +6 -6
  369. package/package.json +2 -2
  370. package/test-14-results.xml +509 -0
  371. package/test-16-results.xml +509 -0
  372. package/test-18-results.xml +509 -0
  373. package/test-19-results.xml +509 -0
  374. package/test-iam-18-results.xml +167 -0
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,3 @@
1
+ C
2
+
3
+ javascriptS2612"Make sure this permission is safe. 2 
@@ -0,0 +1,3 @@
1
+ T
2
+
3
+ javascriptS53323Using http protocol is insecure. Use https instead. 2"" 8
@@ -0,0 +1,4 @@
1
+ P
2
+
3
+ javascriptS2068-Review this potentially hardcoded credential. 2
4
+ �� %
@@ -0,0 +1,6 @@
1
+ T
2
+
3
+ javascriptS53323Using http protocol is insecure. Use https instead. 2 8V
4
+
5
+ javascriptS53323Using http protocol is insecure. Use https instead. 2
6
+ �� /
@@ -0,0 +1,16 @@
1
+ 
2
+ functions
3
+ 
4
+
5
+ statementsG
6
+ classes
7
+ nclocz
8
+
9
+
10
+ complexity
11
+ cognitive_complexity&�
12
+ executable_lines_data2�
13
+ �130=1;132=1;133=1;14=1;16=1;17=1;145=1;18=1;19=1;147=1;20=1;148=1;22=1;150=1;155=1;157=1;30=1;158=1;31=1;162=1;35=1;36=1;164=1;165=1;40=1;168=1;171=1;172=1;173=1;47=1;48=1;176=1;49=1;50=1;51=1;52=1;53=1;56=1;58=1;60=1;61=1;65=1;66=1;67=1;68=1;69=1;72=1;75=1;77=1;78=1;79=1;83=1;88=1;90=1;91=1;94=1;97=1;100=1;102=1;105=1;106=1;107=1;109=1;110=1;111=1;112=1;114=1;115=1;116=1;121=1;123=1�
14
+
15
+ ncloc_data2�
16
+ �14=1;16=1;17=1;18=1;19=1;20=1;22=1;23=1;28=1;29=1;30=1;31=1;32=1;34=1;35=1;36=1;37=1;39=1;40=1;41=1;42=1;47=1;48=1;49=1;50=1;51=1;52=1;53=1;54=1;56=1;57=1;58=1;60=1;61=1;65=1;66=1;67=1;68=1;69=1;70=1;72=1;73=1;75=1;77=1;78=1;79=1;80=1;81=1;82=1;83=1;84=1;88=1;89=1;90=1;91=1;94=1;95=1;96=1;97=1;98=1;100=1;101=1;102=1;105=1;106=1;107=1;109=1;110=1;111=1;112=1;113=1;114=1;115=1;116=1;117=1;118=1;119=1;120=1;121=1;122=1;123=1;124=1;125=1;127=1;128=1;130=1;132=1;133=1;135=1;137=1;138=1;139=1;140=1;141=1;142=1;143=1;144=1;145=1;147=1;148=1;149=1;150=1;151=1;152=1;153=1;154=1;155=1;157=1;158=1;162=1;163=1;164=1;165=1;166=1;168=1;171=1;172=1;173=1;174=1;176=1;177=1;178=1
@@ -0,0 +1,15 @@
1
+ 
2
+ functions'
3
+
4
+ statements�
5
+ classes
6
+ ncloc�
7
+
8
+
9
+ complexity0
10
+ cognitive_complexity�
11
+ executable_lines_data2�
12
+ �257=1;262=1;264=1;267=1;269=1;270=1;271=1;16=1;272=1;18=1;274=1;19=1;20=1;21=1;22=1;23=1;279=1;24=1;25=1;281=1;286=1;287=1;288=1;33=1;289=1;34=1;38=1;39=1;40=1;46=1;47=1;48=1;50=1;51=1;56=1;59=1;60=1;61=1;62=1;63=1;65=1;72=1;73=1;74=1;75=1;77=1;82=1;83=1;84=1;85=1;87=1;89=1;93=1;94=1;98=1;101=1;102=1;103=1;104=1;106=1;110=1;111=1;114=1;115=1;117=1;118=1;121=1;123=1;125=1;126=1;129=1;131=1;132=1;135=1;137=1;138=1;141=1;143=1;145=1;146=1;149=1;150=1;151=1;154=1;156=1;157=1;160=1;162=1;163=1;166=1;168=1;170=1;171=1;173=1;176=1;178=1;179=1;181=1;182=1;185=1;187=1;188=1;190=1;198=1;202=1;203=1;205=1;206=1;209=1;211=1;213=1;214=1;217=1;219=1;220=1;223=1;225=1;226=1;229=1;231=1;232=1;235=1;237=1;239=1;241=1;242=1;245=1;248=1;250=1;252=1;253=1;254=1;255=1�
13
+
14
+ ncloc_data2�
15
+ �16=1;18=1;19=1;20=1;21=1;22=1;23=1;24=1;25=1;31=1;32=1;33=1;34=1;35=1;37=1;38=1;39=1;40=1;41=1;42=1;43=1;45=1;46=1;47=1;48=1;49=1;50=1;51=1;52=1;53=1;55=1;56=1;59=1;60=1;61=1;62=1;63=1;64=1;65=1;66=1;67=1;68=1;69=1;71=1;72=1;73=1;74=1;75=1;76=1;77=1;78=1;79=1;80=1;82=1;83=1;84=1;85=1;87=1;89=1;93=1;94=1;95=1;98=1;99=1;101=1;102=1;103=1;104=1;105=1;106=1;107=1;108=1;110=1;111=1;112=1;114=1;115=1;117=1;118=1;119=1;121=1;123=1;125=1;126=1;127=1;129=1;131=1;132=1;133=1;135=1;137=1;138=1;139=1;141=1;143=1;145=1;146=1;149=1;150=1;151=1;152=1;154=1;156=1;157=1;158=1;160=1;162=1;163=1;164=1;166=1;168=1;170=1;171=1;173=1;174=1;176=1;178=1;179=1;181=1;182=1;183=1;185=1;187=1;188=1;190=1;191=1;192=1;193=1;194=1;195=1;196=1;197=1;198=1;199=1;200=1;202=1;203=1;205=1;206=1;207=1;209=1;211=1;213=1;214=1;215=1;217=1;219=1;220=1;221=1;223=1;225=1;226=1;227=1;229=1;231=1;232=1;233=1;235=1;237=1;239=1;241=1;242=1;243=1;245=1;248=1;250=1;252=1;253=1;254=1;255=1;256=1;257=1;258=1;259=1;260=1;262=1;264=1;267=1;269=1;270=1;271=1;272=1;273=1;274=1;275=1;276=1;277=1;279=1;281=1;286=1;287=1;288=1;289=1;290=1;291=1;292=1;293=1
@@ -0,0 +1,15 @@
1
+ 
2
+ functions
3
+
4
+ statements
5
+ classes
6
+ nclocH
7
+
8
+
9
+ complexity
10
+ cognitive_complexity
11
+ executable_lines_data2�
12
+ �64=1;65=1;68=1;74=1;75=1;77=1;14=1;17=1;84=1;85=1;87=1;88=1;90=1;93=1;34=1;98=1;35=1;99=1;100=1;101=1;42=1;44=1;45=1;47=1;48=1;50=1;52=1;61=1�
13
+
14
+ ncloc_data2�
15
+ �14=1;17=1;18=1;19=1;20=1;21=1;22=1;23=1;24=1;25=1;26=1;27=1;28=1;29=1;30=1;32=1;33=1;34=1;35=1;36=1;37=1;39=1;40=1;42=1;43=1;44=1;45=1;46=1;47=1;48=1;49=1;50=1;51=1;52=1;53=1;54=1;60=1;61=1;64=1;65=1;66=1;68=1;69=1;70=1;71=1;73=1;74=1;75=1;76=1;77=1;78=1;80=1;84=1;85=1;86=1;87=1;88=1;89=1;90=1;91=1;93=1;94=1;95=1;96=1;97=1;98=1;99=1;100=1;101=1;102=1;103=1;104=1
@@ -0,0 +1,63 @@
1
+ // Copyright © 2017 IBM Corp. All rights reserved.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ /* global describe it */
16
+ 'use strict';
17
+
18
+ const fs = require('fs');
19
+ const u = require('./citestutils.js');
20
+
21
+ describe('Event tests', function() {
22
+ it('should get a finished event when using stdout', function(done) {
23
+ u.setTimeout(this, 40);
24
+ // Use the API so we can get events
25
+ const params = { useApi: true };
26
+ const backup = u.testBackup(params, 'animaldb', process.stdout, function(err) {
27
+ if (err) {
28
+ done(err);
29
+ }
30
+ });
31
+ backup.on('finished', function() {
32
+ try {
33
+ // Test will time out if the finished event is not emitted
34
+ done();
35
+ } catch (err) {
36
+ done(err);
37
+ }
38
+ });
39
+ });
40
+ it('should get a finished event when using file output', function(done) {
41
+ u.setTimeout(this, 40);
42
+ // Use the API so we can get events
43
+ const params = { useApi: true };
44
+ const actualBackup = `./${this.fileName}`;
45
+ // Create a file and backup to it
46
+ const output = fs.createWriteStream(actualBackup);
47
+ output.on('open', function() {
48
+ const backup = u.testBackup(params, 'animaldb', output, function(err) {
49
+ if (err) {
50
+ done(err);
51
+ }
52
+ });
53
+ backup.on('finished', function() {
54
+ try {
55
+ // Test will time out if the finished event is not emitted
56
+ done();
57
+ } catch (err) {
58
+ done(err);
59
+ }
60
+ });
61
+ });
62
+ });
63
+ });
@@ -0,0 +1,36 @@
1
+ // Copyright © 2017 IBM Corp. All rights reserved.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ /* global describe it */
16
+ 'use strict';
17
+
18
+ delete require.cache[require.resolve('./citestutils.js')];
19
+ const u = require('./citestutils.js');
20
+
21
+ [{ useApi: true }, { useApi: false }].forEach(function(params) {
22
+ describe(u.scenario('End to end backup and restore', params), function() {
23
+ it('should backup and restore animaldb', function(done) {
24
+ // Allow up to 60 s for backup and restore of animaldb
25
+ u.setTimeout(this, 60);
26
+ u.testDirectBackupAndRestore(params, 'animaldb', this.dbName, done);
27
+ });
28
+ it('should backup and restore largedb1g #slow', function(done) {
29
+ // Allow up to 30 m for backup and restore of largedb1g
30
+ // This is a long time but when many builds run in parallel it can take a
31
+ // while to get this done.
32
+ u.setTimeout(this, 30 * 60);
33
+ u.testDirectBackupAndRestore(params, 'largedb1g', this.dbName, done);
34
+ });
35
+ });
36
+ });
@@ -0,0 +1,147 @@
1
+ // Copyright © 2017, 2021 IBM Corp. All rights reserved.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ /* global describe it beforeEach */
16
+ 'use strict';
17
+
18
+ const assert = require('assert');
19
+ const fs = require('fs');
20
+ const nock = require('nock');
21
+ const request = require('../includes/request.js');
22
+ const writer = require('../includes/writer.js');
23
+ const noopEmitter = new (require('events')).EventEmitter();
24
+ const liner = require('../includes/liner.js');
25
+
26
+ const longTestTimeout = 3000;
27
+
28
+ // The writer expects a line-by-line stream so this utility function does that
29
+ // processing for the tests (which normally happens in the internal restore
30
+ // function).
31
+ function testLinestream(fixture = './test/fixtures/animaldb_expected.json') {
32
+ return fs.createReadStream(fixture)
33
+ .pipe(liner());
34
+ }
35
+
36
+ describe('#unit Check database restore writer', function() {
37
+ const dbUrl = 'http://localhost:5984/animaldb';
38
+ const db = request.client(dbUrl, { parallelism: 1 });
39
+
40
+ beforeEach('Reset nocks', function() {
41
+ nock.cleanAll();
42
+ });
43
+
44
+ it('should complete successfully', function(done) {
45
+ nock(dbUrl)
46
+ .post('/_bulk_docs')
47
+ .reply(200, []); // success
48
+
49
+ testLinestream()
50
+ .pipe(writer(db, 500, 1, noopEmitter))
51
+ .on('error', function(err) {
52
+ done(err);
53
+ })
54
+ .on('finished', function(data) {
55
+ assert.strictEqual(data.total, 15);
56
+ assert.ok(nock.isDone());
57
+ done();
58
+ });
59
+ });
60
+
61
+ it('should terminate on a fatal error', function(done) {
62
+ nock(dbUrl)
63
+ .post('/_bulk_docs')
64
+ .reply(401, { error: 'Unauthorized' }); // fatal error
65
+
66
+ testLinestream()
67
+ .pipe(writer(db, 500, 1, noopEmitter))
68
+ .on('error', function(err) {
69
+ assert.strictEqual(err.name, 'Unauthorized');
70
+ assert.strictEqual(err.message, 'Access is denied due to invalid credentials.');
71
+ assert.ok(nock.isDone());
72
+ done();
73
+ });
74
+ });
75
+
76
+ it('should retry on transient errors', function(done) {
77
+ nock(dbUrl)
78
+ .post('/_bulk_docs')
79
+ .reply(429, { error: 'Too Many Requests' }) // transient error
80
+ .post('/_bulk_docs')
81
+ .reply(500, { error: 'Internal Server Error' }) // transient error
82
+ .post('/_bulk_docs')
83
+ .reply(200, { ok: true }); // third time lucky success
84
+
85
+ testLinestream()
86
+ .pipe(writer(db, 500, 1, noopEmitter))
87
+ .on('error', function(err) {
88
+ done(err);
89
+ })
90
+ .on('finished', function(data) {
91
+ assert.strictEqual(data.total, 15);
92
+ assert.ok(nock.isDone());
93
+ done();
94
+ });
95
+ }).timeout(longTestTimeout);
96
+
97
+ it('should fail after 3 transient errors', function(done) {
98
+ nock(dbUrl)
99
+ .post('/_bulk_docs')
100
+ .reply(429, { error: 'Too Many Requests' }) // transient error
101
+ .post('/_bulk_docs')
102
+ .reply(500, { error: 'Internal Server Error' }) // transient error
103
+ .post('/_bulk_docs')
104
+ .reply(503, { error: 'Service Unavailable' }); // Final transient error
105
+
106
+ testLinestream()
107
+ .pipe(writer(db, 500, 1, noopEmitter))
108
+ .on('error', function(err) {
109
+ assert.strictEqual(err.name, 'HTTPFatalError');
110
+ assert.strictEqual(err.message, `503 : post ${dbUrl}/_bulk_docs - Error: Service Unavailable`);
111
+ assert.ok(nock.isDone());
112
+ done();
113
+ });
114
+ }).timeout(longTestTimeout);
115
+
116
+ it('should restore shallow backups without rev info successfully', function(done) {
117
+ nock(dbUrl)
118
+ .post('/_bulk_docs')
119
+ .reply(200, [{ ok: true, id: 'foo', rev: '1-abc' }]); // success
120
+
121
+ testLinestream('./test/fixtures/animaldb_old_shallow.json')
122
+ .pipe(writer(db, 500, 1, noopEmitter))
123
+ .on('error', function(err) {
124
+ done(err);
125
+ })
126
+ .on('finished', function(data) {
127
+ assert.strictEqual(data.total, 11);
128
+ assert.ok(nock.isDone());
129
+ done();
130
+ });
131
+ });
132
+
133
+ it('should get a batch error for non-empty array response with new_edits false', function(done) {
134
+ nock(dbUrl)
135
+ .post('/_bulk_docs')
136
+ .reply(200, [{ id: 'foo', error: 'foo', reason: 'bar' }]);
137
+
138
+ testLinestream()
139
+ .pipe(writer(db, 500, 1, noopEmitter))
140
+ .on('error', function(err) {
141
+ assert.strictEqual(err.name, 'Error');
142
+ assert.strictEqual(err.message, 'Error writing batch with new_edits:false and 1 items');
143
+ assert.ok(nock.isDone());
144
+ done();
145
+ });
146
+ });
147
+ });
@@ -0,0 +1,92 @@
1
+ // Copyright © 2018, 2021 IBM Corp. All rights reserved.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ /* global describe it */
16
+ 'use strict';
17
+
18
+ const fs = require('fs');
19
+ const readline = require('readline');
20
+ const u = require('./citestutils.js');
21
+ const uuid = require('uuid').v4;
22
+
23
+ const params = { useApi: true };
24
+
25
+ describe(u.scenario('Concurrent database backups', params), function() {
26
+ it('should run concurrent API database backups correctly #slower', function(done) {
27
+ // Allow up to 900 s to backup and compare (it should be much faster)!
28
+ u.setTimeout(this, 900);
29
+
30
+ let doneCount = 0;
31
+ let doneErr;
32
+ const finished = function(err) {
33
+ doneCount++;
34
+ if (doneCount === 2) {
35
+ done(doneErr || err);
36
+ }
37
+ doneErr = err;
38
+ };
39
+
40
+ const checkForEmptyBatches = function(fileName, cb) {
41
+ let foundEmptyBatch = false;
42
+
43
+ const rd = readline.createInterface({
44
+ input: fs.createReadStream(fileName),
45
+ output: fs.createWriteStream('/dev/null'),
46
+ terminal: false
47
+ });
48
+
49
+ rd.on('line', function(line) {
50
+ if (JSON.parse(line).length === 0) {
51
+ // Note: Empty batch arrays indicate that the running backup is
52
+ // incorrectly sharing a log file with another ongoing backup job.
53
+ foundEmptyBatch = true;
54
+ }
55
+ });
56
+
57
+ rd.on('close', function() {
58
+ if (foundEmptyBatch) {
59
+ cb(new Error(`Log file '${fileName}' contains empty batches`));
60
+ } else {
61
+ cb();
62
+ }
63
+ });
64
+ };
65
+
66
+ // [1] Run 'largedb2g' database backup
67
+ const actualBackup1 = `./${uuid()}`;
68
+ const output1 = fs.createWriteStream(actualBackup1);
69
+ output1.on('open', function() {
70
+ u.testBackup(params, 'largedb2g', output1, function(err) {
71
+ if (err) {
72
+ finished(err);
73
+ } else {
74
+ checkForEmptyBatches(actualBackup1, finished);
75
+ }
76
+ });
77
+ });
78
+
79
+ // [2] Run 'largedb1g' database backup
80
+ const actualBackup2 = `./${uuid()}`;
81
+ const output2 = fs.createWriteStream(actualBackup2);
82
+ output2.on('open', function() {
83
+ u.testBackup(params, 'largedb1g', output2, function(err) {
84
+ if (err) {
85
+ finished(err);
86
+ } else {
87
+ checkForEmptyBatches(actualBackup2, finished);
88
+ }
89
+ });
90
+ });
91
+ });
92
+ });
@@ -0,0 +1,47 @@
1
+ // Copyright © 2017, 2018 IBM Corp. All rights reserved.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ /* global describe it */
16
+ 'use strict';
17
+
18
+ const assert = require('assert');
19
+ const fs = require('fs');
20
+ const u = require('./citestutils.js');
21
+
22
+ describe('Write error tests', function() {
23
+ it('calls callback with error set when stream is not writeable', function(done) {
24
+ u.setTimeout(this, 10);
25
+ const dirname = fs.mkdtempSync('test_backup_');
26
+ // make temp dir read only
27
+ fs.chmodSync(dirname, 0o444);
28
+ const filename = dirname + '/test.backup';
29
+ const backupStream = fs.createWriteStream(filename, { flags: 'w' });
30
+ const params = { useApi: true };
31
+ // try to do backup and check err was set in callback
32
+ u.testBackup(params, 'animaldb', backupStream, function(resultErr) {
33
+ let err = null;
34
+ try {
35
+ // cleanup temp dir
36
+ fs.rmdirSync(dirname);
37
+ // error should have been set
38
+ assert.ok(resultErr);
39
+ assert.strictEqual(resultErr.code, 'EACCES');
40
+ } catch (thrownErr) {
41
+ err = thrownErr;
42
+ } finally {
43
+ done(err);
44
+ }
45
+ });
46
+ });
47
+ });