@datadog/datadog-ci 2.47.0 → 3.0.0

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 (408) hide show
  1. package/README.md +9 -2
  2. package/dist/__tests__/cli.test.d.ts +1 -0
  3. package/dist/__tests__/cli.test.js +92 -0
  4. package/dist/__tests__/cli.test.js.map +1 -0
  5. package/dist/cli.js +1 -1
  6. package/dist/cli.js.map +1 -1
  7. package/dist/commands/cloud-run/__tests__/fixtures.d.ts +2 -0
  8. package/dist/commands/cloud-run/__tests__/fixtures.js +12 -0
  9. package/dist/commands/cloud-run/__tests__/fixtures.js.map +1 -0
  10. package/dist/commands/cloud-run/__tests__/flare.test.d.ts +1 -0
  11. package/dist/commands/cloud-run/__tests__/flare.test.js +557 -0
  12. package/dist/commands/cloud-run/__tests__/flare.test.js.map +1 -0
  13. package/dist/commands/coverage/__tests__/upload.test.d.ts +1 -0
  14. package/dist/commands/coverage/__tests__/upload.test.js +323 -0
  15. package/dist/commands/coverage/__tests__/upload.test.js.map +1 -0
  16. package/dist/commands/coverage/__tests__/utils.test.d.ts +1 -0
  17. package/dist/commands/coverage/__tests__/utils.test.js +57 -0
  18. package/dist/commands/coverage/__tests__/utils.test.js.map +1 -0
  19. package/dist/commands/coverage/api.d.ts +9 -0
  20. package/dist/commands/coverage/api.js +52 -0
  21. package/dist/commands/coverage/api.js.map +1 -0
  22. package/dist/commands/coverage/cli.d.ts +1 -0
  23. package/dist/commands/coverage/cli.js +5 -0
  24. package/dist/commands/coverage/cli.js.map +1 -0
  25. package/dist/commands/coverage/interfaces.d.ts +13 -0
  26. package/dist/commands/coverage/interfaces.js +3 -0
  27. package/dist/commands/coverage/interfaces.js.map +1 -0
  28. package/dist/commands/coverage/renderer.d.ts +12 -0
  29. package/dist/commands/coverage/renderer.js +83 -0
  30. package/dist/commands/coverage/renderer.js.map +1 -0
  31. package/dist/commands/coverage/upload.d.ts +27 -0
  32. package/dist/commands/coverage/upload.js +329 -0
  33. package/dist/commands/coverage/upload.js.map +1 -0
  34. package/dist/commands/coverage/utils.d.ts +3 -0
  35. package/dist/commands/coverage/utils.js +83 -0
  36. package/dist/commands/coverage/utils.js.map +1 -0
  37. package/dist/commands/deployment/__tests__/correlate.test.d.ts +1 -0
  38. package/dist/commands/deployment/__tests__/correlate.test.js +106 -0
  39. package/dist/commands/deployment/__tests__/correlate.test.js.map +1 -0
  40. package/dist/commands/deployment/__tests__/mark.test.d.ts +1 -0
  41. package/dist/commands/deployment/__tests__/mark.test.js +97 -0
  42. package/dist/commands/deployment/__tests__/mark.test.js.map +1 -0
  43. package/dist/commands/dora/__tests__/deployment.test.d.ts +1 -0
  44. package/dist/commands/dora/__tests__/deployment.test.js +201 -0
  45. package/dist/commands/dora/__tests__/deployment.test.js.map +1 -0
  46. package/dist/commands/dsyms/__tests__/upload.test.d.ts +1 -0
  47. package/dist/commands/dsyms/__tests__/upload.test.js +346 -0
  48. package/dist/commands/dsyms/__tests__/upload.test.js.map +1 -0
  49. package/dist/commands/dsyms/__tests__/utils.test.d.ts +1 -0
  50. package/dist/commands/dsyms/__tests__/utils.test.js +100 -0
  51. package/dist/commands/dsyms/__tests__/utils.test.js.map +1 -0
  52. package/dist/commands/dsyms/upload.js +3 -3
  53. package/dist/commands/dsyms/upload.js.map +1 -1
  54. package/dist/commands/dsyms/utils.js +7 -6
  55. package/dist/commands/dsyms/utils.js.map +1 -1
  56. package/dist/commands/elf-symbols/__tests__/elf.test.d.ts +1 -0
  57. package/dist/commands/elf-symbols/__tests__/elf.test.js +819 -0
  58. package/dist/commands/elf-symbols/__tests__/elf.test.js.map +1 -0
  59. package/dist/commands/elf-symbols/__tests__/upload.test.d.ts +1 -0
  60. package/dist/commands/elf-symbols/__tests__/upload.test.js +224 -0
  61. package/dist/commands/elf-symbols/__tests__/upload.test.js.map +1 -0
  62. package/dist/commands/elf-symbols/elf.d.ts +1 -0
  63. package/dist/commands/elf-symbols/upload.js +2 -3
  64. package/dist/commands/elf-symbols/upload.js.map +1 -1
  65. package/dist/commands/flutter-symbols/__tests__/upload.test.d.ts +1 -0
  66. package/dist/commands/flutter-symbols/__tests__/upload.test.js +617 -0
  67. package/dist/commands/flutter-symbols/__tests__/upload.test.js.map +1 -0
  68. package/dist/commands/flutter-symbols/upload.js +2 -2
  69. package/dist/commands/flutter-symbols/upload.js.map +1 -1
  70. package/dist/commands/gate/__tests__/evaluate.test.d.ts +1 -0
  71. package/dist/commands/gate/__tests__/evaluate.test.js +398 -0
  72. package/dist/commands/gate/__tests__/evaluate.test.js.map +1 -0
  73. package/dist/commands/gate/__tests__/scope.test.d.ts +1 -0
  74. package/dist/commands/gate/__tests__/scope.test.js +29 -0
  75. package/dist/commands/gate/__tests__/scope.test.js.map +1 -0
  76. package/dist/commands/git-metadata/__tests__/git.test.d.ts +1 -0
  77. package/dist/commands/git-metadata/__tests__/git.test.js +132 -0
  78. package/dist/commands/git-metadata/__tests__/git.test.js.map +1 -0
  79. package/dist/commands/git-metadata/__tests__/gitdb.test.d.ts +1 -0
  80. package/dist/commands/git-metadata/__tests__/gitdb.test.js +1386 -0
  81. package/dist/commands/git-metadata/__tests__/gitdb.test.js.map +1 -0
  82. package/dist/commands/git-metadata/__tests__/library.test.d.ts +1 -0
  83. package/dist/commands/git-metadata/__tests__/library.test.js +118 -0
  84. package/dist/commands/git-metadata/__tests__/library.test.js.map +1 -0
  85. package/dist/commands/git-metadata/__tests__/upload.test.d.ts +1 -0
  86. package/dist/commands/git-metadata/__tests__/upload.test.js +52 -0
  87. package/dist/commands/git-metadata/__tests__/upload.test.js.map +1 -0
  88. package/dist/commands/git-metadata/upload.d.ts +0 -1
  89. package/dist/commands/git-metadata/upload.js +0 -6
  90. package/dist/commands/git-metadata/upload.js.map +1 -1
  91. package/dist/commands/junit/__tests__/upload.test.d.ts +1 -0
  92. package/dist/commands/junit/__tests__/upload.test.js +446 -0
  93. package/dist/commands/junit/__tests__/upload.test.js.map +1 -0
  94. package/dist/commands/junit/renderer.d.ts +0 -1
  95. package/dist/commands/junit/renderer.js +1 -5
  96. package/dist/commands/junit/renderer.js.map +1 -1
  97. package/dist/commands/junit/upload.d.ts +0 -2
  98. package/dist/commands/junit/upload.js +8 -21
  99. package/dist/commands/junit/upload.js.map +1 -1
  100. package/dist/commands/lambda/__tests__/fixtures.d.ts +51 -0
  101. package/dist/commands/lambda/__tests__/fixtures.js +146 -0
  102. package/dist/commands/lambda/__tests__/fixtures.js.map +1 -0
  103. package/dist/commands/lambda/__tests__/flare.test.d.ts +1 -0
  104. package/dist/commands/lambda/__tests__/flare.test.js +730 -0
  105. package/dist/commands/lambda/__tests__/flare.test.js.map +1 -0
  106. package/dist/commands/lambda/__tests__/functions/commons.test.d.ts +1 -0
  107. package/dist/commands/lambda/__tests__/functions/commons.test.js +791 -0
  108. package/dist/commands/lambda/__tests__/functions/commons.test.js.map +1 -0
  109. package/dist/commands/lambda/__tests__/functions/instrument.part1.test.d.ts +1 -0
  110. package/dist/commands/lambda/__tests__/functions/instrument.part1.test.js +386 -0
  111. package/dist/commands/lambda/__tests__/functions/instrument.part1.test.js.map +1 -0
  112. package/dist/commands/lambda/__tests__/functions/instrument.part2.test.d.ts +1 -0
  113. package/dist/commands/lambda/__tests__/functions/instrument.part2.test.js +721 -0
  114. package/dist/commands/lambda/__tests__/functions/instrument.part2.test.js.map +1 -0
  115. package/dist/commands/lambda/__tests__/functions/uninstrument.test.d.ts +1 -0
  116. package/dist/commands/lambda/__tests__/functions/uninstrument.test.js +513 -0
  117. package/dist/commands/lambda/__tests__/functions/uninstrument.test.js.map +1 -0
  118. package/dist/commands/lambda/__tests__/functions/versionChecker.test.d.ts +1 -0
  119. package/dist/commands/lambda/__tests__/functions/versionChecker.test.js +33 -0
  120. package/dist/commands/lambda/__tests__/functions/versionChecker.test.js.map +1 -0
  121. package/dist/commands/lambda/__tests__/instrument.test.d.ts +1 -0
  122. package/dist/commands/lambda/__tests__/instrument.test.js +1537 -0
  123. package/dist/commands/lambda/__tests__/instrument.test.js.map +1 -0
  124. package/dist/commands/lambda/__tests__/loggroup.test.d.ts +1 -0
  125. package/dist/commands/lambda/__tests__/loggroup.test.js +340 -0
  126. package/dist/commands/lambda/__tests__/loggroup.test.js.map +1 -0
  127. package/dist/commands/lambda/__tests__/prompt.test.d.ts +1 -0
  128. package/dist/commands/lambda/__tests__/prompt.test.js +206 -0
  129. package/dist/commands/lambda/__tests__/prompt.test.js.map +1 -0
  130. package/dist/commands/lambda/__tests__/tags.test.d.ts +1 -0
  131. package/dist/commands/lambda/__tests__/tags.test.js +305 -0
  132. package/dist/commands/lambda/__tests__/tags.test.js.map +1 -0
  133. package/dist/commands/lambda/__tests__/uninstrument.test.d.ts +1 -0
  134. package/dist/commands/lambda/__tests__/uninstrument.test.js +722 -0
  135. package/dist/commands/lambda/__tests__/uninstrument.test.js.map +1 -0
  136. package/dist/commands/lambda/constants.d.ts +2 -0
  137. package/dist/commands/lambda/constants.js +4 -0
  138. package/dist/commands/lambda/constants.js.map +1 -1
  139. package/dist/commands/lambda/functions/commons.d.ts +1 -1
  140. package/dist/commands/measure/__tests__/measure.test.d.ts +1 -0
  141. package/dist/commands/measure/__tests__/measure.test.js +102 -0
  142. package/dist/commands/measure/__tests__/measure.test.js.map +1 -0
  143. package/dist/commands/measure/measure.d.ts +0 -1
  144. package/dist/commands/measure/measure.js +2 -9
  145. package/dist/commands/measure/measure.js.map +1 -1
  146. package/dist/commands/react-native/__tests__/codepush.test.d.ts +1 -0
  147. package/dist/commands/react-native/__tests__/codepush.test.js +161 -0
  148. package/dist/commands/react-native/__tests__/codepush.test.js.map +1 -0
  149. package/dist/commands/react-native/__tests__/interfaces.test.d.ts +1 -0
  150. package/dist/commands/react-native/__tests__/interfaces.test.js +33 -0
  151. package/dist/commands/react-native/__tests__/interfaces.test.js.map +1 -0
  152. package/dist/commands/react-native/__tests__/upload.test.d.ts +1 -0
  153. package/dist/commands/react-native/__tests__/upload.test.js +238 -0
  154. package/dist/commands/react-native/__tests__/upload.test.js.map +1 -0
  155. package/dist/commands/react-native/__tests__/utils.test.d.ts +1 -0
  156. package/dist/commands/react-native/__tests__/utils.test.js +27 -0
  157. package/dist/commands/react-native/__tests__/utils.test.js.map +1 -0
  158. package/dist/commands/react-native/__tests__/xcode.test.d.ts +1 -0
  159. package/dist/commands/react-native/__tests__/xcode.test.js +465 -0
  160. package/dist/commands/react-native/__tests__/xcode.test.js.map +1 -0
  161. package/dist/commands/sarif/__tests__/upload.test.d.ts +1 -0
  162. package/dist/commands/sarif/__tests__/upload.test.js +218 -0
  163. package/dist/commands/sarif/__tests__/upload.test.js.map +1 -0
  164. package/dist/commands/sarif/__tests__/validation.test.d.ts +1 -0
  165. package/dist/commands/sarif/__tests__/validation.test.js +19 -0
  166. package/dist/commands/sarif/__tests__/validation.test.js.map +1 -0
  167. package/dist/commands/sarif/api.js +1 -1
  168. package/dist/commands/sarif/api.js.map +1 -1
  169. package/dist/commands/sarif/interfaces.d.ts +0 -1
  170. package/dist/commands/sarif/renderer.d.ts +2 -2
  171. package/dist/commands/sarif/renderer.js +5 -5
  172. package/dist/commands/sarif/renderer.js.map +1 -1
  173. package/dist/commands/sarif/upload.d.ts +1 -1
  174. package/dist/commands/sarif/upload.js +15 -10
  175. package/dist/commands/sarif/upload.js.map +1 -1
  176. package/dist/commands/sbom/__tests__/payload.test.d.ts +1 -0
  177. package/dist/commands/sbom/__tests__/payload.test.js +306 -0
  178. package/dist/commands/sbom/__tests__/payload.test.js.map +1 -0
  179. package/dist/commands/sbom/__tests__/validation.test.d.ts +1 -0
  180. package/dist/commands/sbom/__tests__/validation.test.js +141 -0
  181. package/dist/commands/sbom/__tests__/validation.test.js.map +1 -0
  182. package/dist/commands/sbom/json-schema/spdx/spdx.schema.json +428 -198
  183. package/dist/commands/sbom/language.js +5 -1
  184. package/dist/commands/sbom/language.js.map +1 -1
  185. package/dist/commands/sbom/renderer.d.ts +2 -2
  186. package/dist/commands/sbom/renderer.js +7 -1
  187. package/dist/commands/sbom/renderer.js.map +1 -1
  188. package/dist/commands/sbom/upload.d.ts +1 -1
  189. package/dist/commands/sbom/upload.js +11 -4
  190. package/dist/commands/sbom/upload.js.map +1 -1
  191. package/dist/commands/sbom/validation.d.ts +5 -0
  192. package/dist/commands/sbom/validation.js +23 -10
  193. package/dist/commands/sbom/validation.js.map +1 -1
  194. package/dist/commands/sourcemaps/__tests__/upload.test.d.ts +1 -0
  195. package/dist/commands/sourcemaps/__tests__/upload.test.js +270 -0
  196. package/dist/commands/sourcemaps/__tests__/upload.test.js.map +1 -0
  197. package/dist/commands/sourcemaps/__tests__/utils.test.d.ts +1 -0
  198. package/dist/commands/sourcemaps/__tests__/utils.test.js +31 -0
  199. package/dist/commands/sourcemaps/__tests__/utils.test.js.map +1 -0
  200. package/dist/commands/sourcemaps/upload.d.ts +1 -0
  201. package/dist/commands/sourcemaps/upload.js +6 -2
  202. package/dist/commands/sourcemaps/upload.js.map +1 -1
  203. package/dist/commands/stepfunctions/__tests__/awsCommands.test.d.ts +1 -0
  204. package/dist/commands/stepfunctions/__tests__/awsCommands.test.js +210 -0
  205. package/dist/commands/stepfunctions/__tests__/awsCommands.test.js.map +1 -0
  206. package/dist/commands/stepfunctions/__tests__/fixtures/aws-resources.d.ts +6 -0
  207. package/dist/commands/stepfunctions/__tests__/fixtures/aws-resources.js +45 -0
  208. package/dist/commands/stepfunctions/__tests__/fixtures/aws-resources.js.map +1 -0
  209. package/dist/commands/stepfunctions/__tests__/fixtures/cli.d.ts +5 -0
  210. package/dist/commands/stepfunctions/__tests__/fixtures/cli.js +19 -0
  211. package/dist/commands/stepfunctions/__tests__/fixtures/cli.js.map +1 -0
  212. package/dist/commands/stepfunctions/__tests__/helpers.test.d.ts +1 -0
  213. package/dist/commands/stepfunctions/__tests__/helpers.test.js +501 -0
  214. package/dist/commands/stepfunctions/__tests__/helpers.test.js.map +1 -0
  215. package/dist/commands/stepfunctions/__tests__/instrument.test.d.ts +1 -0
  216. package/dist/commands/stepfunctions/__tests__/instrument.test.js +431 -0
  217. package/dist/commands/stepfunctions/__tests__/instrument.test.js.map +1 -0
  218. package/dist/commands/stepfunctions/__tests__/uninstrument.test.d.ts +1 -0
  219. package/dist/commands/stepfunctions/__tests__/uninstrument.test.js +166 -0
  220. package/dist/commands/stepfunctions/__tests__/uninstrument.test.js.map +1 -0
  221. package/dist/commands/synthetics/__tests__/api.test.d.ts +1 -0
  222. package/dist/commands/synthetics/__tests__/api.test.js +416 -0
  223. package/dist/commands/synthetics/__tests__/api.test.js.map +1 -0
  224. package/dist/commands/synthetics/__tests__/batch.test.d.ts +1 -0
  225. package/dist/commands/synthetics/__tests__/batch.test.js +906 -0
  226. package/dist/commands/synthetics/__tests__/batch.test.js.map +1 -0
  227. package/dist/commands/synthetics/__tests__/cli.test.d.ts +1 -0
  228. package/dist/commands/synthetics/__tests__/cli.test.js +1371 -0
  229. package/dist/commands/synthetics/__tests__/cli.test.js.map +1 -0
  230. package/dist/commands/synthetics/__tests__/deploy-tests-lib.test.d.ts +1 -0
  231. package/dist/commands/synthetics/__tests__/deploy-tests-lib.test.js +112 -0
  232. package/dist/commands/synthetics/__tests__/deploy-tests-lib.test.js.map +1 -0
  233. package/dist/commands/synthetics/__tests__/fixtures.d.ts +123 -0
  234. package/dist/commands/synthetics/__tests__/fixtures.js +493 -0
  235. package/dist/commands/synthetics/__tests__/fixtures.js.map +1 -0
  236. package/dist/commands/synthetics/__tests__/import-tests-lib.test.d.ts +1 -0
  237. package/dist/commands/synthetics/__tests__/import-tests-lib.test.js +186 -0
  238. package/dist/commands/synthetics/__tests__/import-tests-lib.test.js.map +1 -0
  239. package/dist/commands/synthetics/__tests__/mobile.test.d.ts +1 -0
  240. package/dist/commands/synthetics/__tests__/mobile.test.js +376 -0
  241. package/dist/commands/synthetics/__tests__/mobile.test.js.map +1 -0
  242. package/dist/commands/synthetics/__tests__/multilocator.test.d.ts +1 -0
  243. package/dist/commands/synthetics/__tests__/multilocator.test.js +132 -0
  244. package/dist/commands/synthetics/__tests__/multilocator.test.js.map +1 -0
  245. package/dist/commands/synthetics/__tests__/reporters/default.test.d.ts +1 -0
  246. package/dist/commands/synthetics/__tests__/reporters/default.test.js +410 -0
  247. package/dist/commands/synthetics/__tests__/reporters/default.test.js.map +1 -0
  248. package/dist/commands/synthetics/__tests__/reporters/junit.test.d.ts +1 -0
  249. package/dist/commands/synthetics/__tests__/reporters/junit.test.js +354 -0
  250. package/dist/commands/synthetics/__tests__/reporters/junit.test.js.map +1 -0
  251. package/dist/commands/synthetics/__tests__/reporters/mobile/app-upload.test.d.ts +1 -0
  252. package/dist/commands/synthetics/__tests__/reporters/mobile/app-upload.test.js +232 -0
  253. package/dist/commands/synthetics/__tests__/reporters/mobile/app-upload.test.js.map +1 -0
  254. package/dist/commands/synthetics/__tests__/run-tests-lib.test.d.ts +1 -0
  255. package/dist/commands/synthetics/__tests__/run-tests-lib.test.js +698 -0
  256. package/dist/commands/synthetics/__tests__/run-tests-lib.test.js.map +1 -0
  257. package/dist/commands/synthetics/__tests__/test.test.d.ts +1 -0
  258. package/dist/commands/synthetics/__tests__/test.test.js +269 -0
  259. package/dist/commands/synthetics/__tests__/test.test.js.map +1 -0
  260. package/dist/commands/synthetics/__tests__/tunnel/crypto.test.d.ts +1 -0
  261. package/dist/commands/synthetics/__tests__/tunnel/crypto.test.js +21 -0
  262. package/dist/commands/synthetics/__tests__/tunnel/crypto.test.js.map +1 -0
  263. package/dist/commands/synthetics/__tests__/tunnel/tunnel.test.d.ts +1 -0
  264. package/dist/commands/synthetics/__tests__/tunnel/tunnel.test.js +80 -0
  265. package/dist/commands/synthetics/__tests__/tunnel/tunnel.test.js.map +1 -0
  266. package/dist/commands/synthetics/__tests__/tunnel/websocket.test.d.ts +1 -0
  267. package/dist/commands/synthetics/__tests__/tunnel/websocket.test.js +109 -0
  268. package/dist/commands/synthetics/__tests__/tunnel/websocket.test.js.map +1 -0
  269. package/dist/commands/synthetics/__tests__/utils/internal.test.d.ts +1 -0
  270. package/dist/commands/synthetics/__tests__/utils/internal.test.js +161 -0
  271. package/dist/commands/synthetics/__tests__/utils/internal.test.js.map +1 -0
  272. package/dist/commands/synthetics/__tests__/utils/public.test.d.ts +1 -0
  273. package/dist/commands/synthetics/__tests__/utils/public.test.js +575 -0
  274. package/dist/commands/synthetics/__tests__/utils/public.test.js.map +1 -0
  275. package/dist/commands/synthetics/api.d.ts +4 -2
  276. package/dist/commands/synthetics/api.js +20 -1
  277. package/dist/commands/synthetics/api.js.map +1 -1
  278. package/dist/commands/synthetics/batch.d.ts +4 -2
  279. package/dist/commands/synthetics/batch.js +65 -7
  280. package/dist/commands/synthetics/batch.js.map +1 -1
  281. package/dist/commands/synthetics/cli.js +3 -1
  282. package/dist/commands/synthetics/cli.js.map +1 -1
  283. package/dist/commands/synthetics/deploy-tests-command.d.ts +22 -0
  284. package/dist/commands/synthetics/deploy-tests-command.js +150 -0
  285. package/dist/commands/synthetics/deploy-tests-command.js.map +1 -0
  286. package/dist/commands/synthetics/deploy-tests-lib.d.ts +2 -0
  287. package/dist/commands/synthetics/deploy-tests-lib.js +72 -0
  288. package/dist/commands/synthetics/deploy-tests-lib.js.map +1 -0
  289. package/dist/commands/synthetics/errors.d.ts +1 -1
  290. package/dist/commands/synthetics/errors.js +1 -0
  291. package/dist/commands/synthetics/errors.js.map +1 -1
  292. package/dist/commands/synthetics/import-tests-command.d.ts +22 -0
  293. package/dist/commands/synthetics/import-tests-command.js +142 -0
  294. package/dist/commands/synthetics/import-tests-command.js.map +1 -0
  295. package/dist/commands/synthetics/import-tests-lib.d.ts +2 -0
  296. package/dist/commands/synthetics/import-tests-lib.js +71 -0
  297. package/dist/commands/synthetics/import-tests-lib.js.map +1 -0
  298. package/dist/commands/synthetics/interfaces.d.ts +74 -28
  299. package/dist/commands/synthetics/interfaces.js.map +1 -1
  300. package/dist/commands/synthetics/local-test-definition.d.ts +2 -0
  301. package/dist/commands/synthetics/local-test-definition.js +16 -0
  302. package/dist/commands/synthetics/local-test-definition.js.map +1 -0
  303. package/dist/commands/synthetics/mobile.js +2 -2
  304. package/dist/commands/synthetics/mobile.js.map +1 -1
  305. package/dist/commands/synthetics/multilocator.d.ts +3 -0
  306. package/dist/commands/synthetics/multilocator.js +98 -0
  307. package/dist/commands/synthetics/multilocator.js.map +1 -0
  308. package/dist/commands/synthetics/reporters/junit.d.ts +1 -2
  309. package/dist/commands/synthetics/reporters/junit.js +5 -6
  310. package/dist/commands/synthetics/reporters/junit.js.map +1 -1
  311. package/dist/commands/synthetics/run-tests-command.d.ts +0 -9
  312. package/dist/commands/synthetics/run-tests-command.js +22 -64
  313. package/dist/commands/synthetics/run-tests-command.js.map +1 -1
  314. package/dist/commands/synthetics/run-tests-lib.js +15 -12
  315. package/dist/commands/synthetics/run-tests-lib.js.map +1 -1
  316. package/dist/commands/synthetics/test.d.ts +10 -19
  317. package/dist/commands/synthetics/test.js +93 -13
  318. package/dist/commands/synthetics/test.js.map +1 -1
  319. package/dist/commands/synthetics/tunnel/tunnel.js +2 -2
  320. package/dist/commands/synthetics/tunnel/tunnel.js.map +1 -1
  321. package/dist/commands/synthetics/utils/internal.d.ts +3 -1
  322. package/dist/commands/synthetics/utils/internal.js +18 -8
  323. package/dist/commands/synthetics/utils/internal.js.map +1 -1
  324. package/dist/commands/synthetics/utils/public.d.ts +5 -26
  325. package/dist/commands/synthetics/utils/public.js +13 -248
  326. package/dist/commands/synthetics/utils/public.js.map +1 -1
  327. package/dist/commands/tag/__tests__/tag.test.d.ts +1 -0
  328. package/dist/commands/tag/__tests__/tag.test.js +85 -0
  329. package/dist/commands/tag/__tests__/tag.test.js.map +1 -0
  330. package/dist/commands/trace/__tests__/trace.test.d.ts +1 -0
  331. package/dist/commands/trace/__tests__/trace.test.js +145 -0
  332. package/dist/commands/trace/__tests__/trace.test.js.map +1 -0
  333. package/dist/commands/unity-symbols/__tests__/upload.test.d.ts +1 -0
  334. package/dist/commands/unity-symbols/__tests__/upload.test.js +369 -0
  335. package/dist/commands/unity-symbols/__tests__/upload.test.js.map +1 -0
  336. package/dist/commands/unity-symbols/upload.js +2 -2
  337. package/dist/commands/unity-symbols/upload.js.map +1 -1
  338. package/dist/helpers/__tests__/app.test.d.ts +1 -0
  339. package/dist/helpers/__tests__/app.test.js +31 -0
  340. package/dist/helpers/__tests__/app.test.js.map +1 -0
  341. package/dist/helpers/__tests__/ci.test.d.ts +1 -0
  342. package/dist/helpers/__tests__/ci.test.js +295 -0
  343. package/dist/helpers/__tests__/ci.test.js.map +1 -0
  344. package/dist/helpers/__tests__/env.test.d.ts +1 -0
  345. package/dist/helpers/__tests__/env.test.js +74 -0
  346. package/dist/helpers/__tests__/env.test.js.map +1 -0
  347. package/dist/helpers/__tests__/fips.test.d.ts +1 -0
  348. package/dist/helpers/__tests__/fips.test.js +30 -0
  349. package/dist/helpers/__tests__/fips.test.js.map +1 -0
  350. package/dist/helpers/__tests__/fixtures.d.ts +41 -0
  351. package/dist/helpers/__tests__/fixtures.js +80 -0
  352. package/dist/helpers/__tests__/fixtures.js.map +1 -0
  353. package/dist/helpers/__tests__/flare.test.d.ts +1 -0
  354. package/dist/helpers/__tests__/flare.test.js +226 -0
  355. package/dist/helpers/__tests__/flare.test.js.map +1 -0
  356. package/dist/helpers/__tests__/fs.test.d.ts +1 -0
  357. package/dist/helpers/__tests__/fs.test.js +189 -0
  358. package/dist/helpers/__tests__/fs.test.js.map +1 -0
  359. package/dist/helpers/__tests__/id.test.d.ts +1 -0
  360. package/dist/helpers/__tests__/id.test.js +24 -0
  361. package/dist/helpers/__tests__/id.test.js.map +1 -0
  362. package/dist/helpers/__tests__/plist.test.d.ts +1 -0
  363. package/dist/helpers/__tests__/plist.test.js +43 -0
  364. package/dist/helpers/__tests__/plist.test.js.map +1 -0
  365. package/dist/helpers/__tests__/prompt.test.d.ts +1 -0
  366. package/dist/helpers/__tests__/prompt.test.js +71 -0
  367. package/dist/helpers/__tests__/prompt.test.js.map +1 -0
  368. package/dist/helpers/__tests__/retry.test.d.ts +1 -0
  369. package/dist/helpers/__tests__/retry.test.js +99 -0
  370. package/dist/helpers/__tests__/retry.test.js.map +1 -0
  371. package/dist/helpers/__tests__/tags.test.d.ts +1 -0
  372. package/dist/helpers/__tests__/tags.test.js +303 -0
  373. package/dist/helpers/__tests__/tags.test.js.map +1 -0
  374. package/dist/helpers/__tests__/upload.test.d.ts +1 -0
  375. package/dist/helpers/__tests__/upload.test.js +231 -0
  376. package/dist/helpers/__tests__/upload.test.js.map +1 -0
  377. package/dist/helpers/__tests__/user-provided-git.test.d.ts +1 -0
  378. package/dist/helpers/__tests__/user-provided-git.test.js +119 -0
  379. package/dist/helpers/__tests__/user-provided-git.test.js.map +1 -0
  380. package/dist/helpers/__tests__/utils.test.d.ts +1 -0
  381. package/dist/helpers/__tests__/utils.test.js +429 -0
  382. package/dist/helpers/__tests__/utils.test.js.map +1 -0
  383. package/dist/helpers/__tests__/validation.test.d.ts +1 -0
  384. package/dist/helpers/__tests__/validation.test.js +25 -0
  385. package/dist/helpers/__tests__/validation.test.js.map +1 -0
  386. package/dist/helpers/git/__tests__/format-git-sourcemaps-data.test.d.ts +1 -0
  387. package/dist/helpers/git/__tests__/format-git-sourcemaps-data.test.js +103 -0
  388. package/dist/helpers/git/__tests__/format-git-sourcemaps-data.test.js.map +1 -0
  389. package/dist/helpers/git/__tests__/format-git-span-data.test.d.ts +1 -0
  390. package/dist/helpers/git/__tests__/format-git-span-data.test.js +121 -0
  391. package/dist/helpers/git/__tests__/format-git-span-data.test.js.map +1 -0
  392. package/dist/helpers/git/__tests__/get-git-data.test.d.ts +1 -0
  393. package/dist/helpers/git/__tests__/get-git-data.test.js +72 -0
  394. package/dist/helpers/git/__tests__/get-git-data.test.js.map +1 -0
  395. package/dist/helpers/id.js.map +1 -0
  396. package/dist/helpers/tags.d.ts +1 -4
  397. package/dist/helpers/tags.js +2 -6
  398. package/dist/helpers/tags.js.map +1 -1
  399. package/dist/helpers/utils.d.ts +0 -4
  400. package/dist/helpers/utils.js +1 -21
  401. package/dist/helpers/utils.js.map +1 -1
  402. package/package.json +16 -17
  403. package/dist/commands/junit/id.js.map +0 -1
  404. package/dist/commands/synthetics/compatibility.d.ts +0 -7
  405. package/dist/commands/synthetics/compatibility.js +0 -83
  406. package/dist/commands/synthetics/compatibility.js.map +0 -1
  407. /package/dist/{commands/junit → helpers}/id.d.ts +0 -0
  408. /package/dist/{commands/junit → helpers}/id.js +0 -0
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,416 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ Object.defineProperty(exports, "__esModule", { value: true });
35
+ const http_1 = require("http");
36
+ const axios_1 = __importStar(require("axios"));
37
+ const fixtures_1 = require("../../../helpers/__tests__/fixtures");
38
+ const api_1 = require("../api");
39
+ const errors_1 = require("../errors");
40
+ const interfaces_1 = require("../interfaces");
41
+ const run_tests_command_1 = require("../run-tests-command");
42
+ const internalUtils = __importStar(require("../utils/internal"));
43
+ const fixtures_2 = require("./fixtures");
44
+ describe('dd-api', () => {
45
+ const apiConfiguration = (0, fixtures_2.getMockApiConfiguration)();
46
+ const LOCATION = {
47
+ display_name: 'fake location',
48
+ id: 42,
49
+ is_active: true,
50
+ name: 'fake-loc',
51
+ region: 'fake-region',
52
+ };
53
+ const RESULT_ID = '123';
54
+ const BATCH_ID = 'bid';
55
+ const POLL_RESULTS = {
56
+ results: [
57
+ {
58
+ check: (0, fixtures_2.getApiTest)('abc-def-ghi'),
59
+ result: {},
60
+ resultID: RESULT_ID,
61
+ timestamp: 0,
62
+ },
63
+ ],
64
+ };
65
+ const TRIGGERED_TEST_ID = 'fakeId';
66
+ const TRIGGER_RESULTS = {
67
+ batch_id: BATCH_ID,
68
+ locations: [LOCATION],
69
+ };
70
+ const PRESIGNED_URL_PAYLOAD = {
71
+ url: 'wss://presigned.url',
72
+ };
73
+ test('should get results from api', () => __awaiter(void 0, void 0, void 0, function* () {
74
+ jest.spyOn(axios_1.default, 'create').mockImplementation((() => () => ({ data: POLL_RESULTS })));
75
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
76
+ const results = yield api.pollResults([RESULT_ID]);
77
+ expect(results[0].resultID).toBe(RESULT_ID);
78
+ }));
79
+ test('should trigger tests using api', () => __awaiter(void 0, void 0, void 0, function* () {
80
+ jest.spyOn(axios_1.default, 'create').mockImplementation((() => () => ({ data: TRIGGER_RESULTS })));
81
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
82
+ const { triggerTests } = api;
83
+ const tests = [{ public_id: TRIGGERED_TEST_ID, executionRule: interfaces_1.ExecutionRule.BLOCKING }];
84
+ const { batch_id: batchId } = yield triggerTests({ tests });
85
+ expect(batchId).toBe(BATCH_ID);
86
+ }));
87
+ describe('Retry policy', () => {
88
+ beforeEach(() => {
89
+ jest.useFakeTimers({ doNotFake: ['nextTick'] });
90
+ jest.restoreAllMocks();
91
+ });
92
+ afterEach(() => {
93
+ jest.useRealTimers();
94
+ });
95
+ const MIN_ATTEMPTS = 1;
96
+ const MAX_ATTEMPTS = 4; // `MAX_RETRIES` + 1
97
+ const fastForwardRetries = () => __awaiter(void 0, void 0, void 0, function* () {
98
+ for (let i = 1; i <= MAX_ATTEMPTS - 1; i++) {
99
+ // Skip the `setTimeout` in `await wait(waiter)`.
100
+ jest.runOnlyPendingTimers();
101
+ // Wait for the retry to happen, and for the next `setTimeout`.
102
+ // This is used to flush promises, and requires `nextTick` not to be faked.
103
+ // eslint-disable-next-line @typescript-eslint/unbound-method
104
+ yield new Promise(process.nextTick);
105
+ }
106
+ });
107
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
108
+ const cases = [
109
+ {
110
+ makeApiRequest: () => api.getBatch('batch-id'),
111
+ name: 'get batch',
112
+ shouldBeRetriedOn404: true,
113
+ shouldBeRetriedOn429: true,
114
+ shouldBeRetriedOn5xx: true,
115
+ },
116
+ {
117
+ makeApiRequest: () => api.getMobileApplicationPresignedURLs('applicationId', 1025, fixtures_2.MOBILE_PRESIGNED_UPLOAD_PARTS),
118
+ name: 'get presigned url',
119
+ shouldBeRetriedOn404: false,
120
+ shouldBeRetriedOn429: false,
121
+ shouldBeRetriedOn5xx: true,
122
+ },
123
+ {
124
+ makeApiRequest: () => api.getTunnelPresignedURL(['test-id']),
125
+ name: 'get presigned url',
126
+ shouldBeRetriedOn404: false,
127
+ shouldBeRetriedOn429: false,
128
+ shouldBeRetriedOn5xx: true,
129
+ },
130
+ {
131
+ makeApiRequest: () => api.getTest('public-id'),
132
+ name: 'get test',
133
+ shouldBeRetriedOn404: false,
134
+ shouldBeRetriedOn429: true,
135
+ shouldBeRetriedOn5xx: true,
136
+ },
137
+ {
138
+ makeApiRequest: () => api.pollResults(['result-id']),
139
+ name: 'poll results',
140
+ shouldBeRetriedOn404: true,
141
+ shouldBeRetriedOn429: true,
142
+ shouldBeRetriedOn5xx: true,
143
+ },
144
+ {
145
+ makeApiRequest: () => api.searchTests('search query'),
146
+ name: 'search tests',
147
+ shouldBeRetriedOn404: false,
148
+ shouldBeRetriedOn429: false,
149
+ shouldBeRetriedOn5xx: true,
150
+ },
151
+ {
152
+ makeApiRequest: () => api.triggerTests({ tests: [{ public_id: '123-456-789', executionRule: interfaces_1.ExecutionRule.NON_BLOCKING }] }),
153
+ name: 'trigger tests',
154
+ shouldBeRetriedOn404: false,
155
+ shouldBeRetriedOn429: true,
156
+ shouldBeRetriedOn5xx: true,
157
+ },
158
+ {
159
+ makeApiRequest: () => api.getSyntheticsOrgSettings(),
160
+ name: 'get settings',
161
+ shouldBeRetriedOn404: false,
162
+ shouldBeRetriedOn429: false,
163
+ shouldBeRetriedOn5xx: true,
164
+ },
165
+ ];
166
+ test.each(cases)('should retry "$name" request (HTTP 404: $shouldBeRetriedOn404, HTTP 429: $shouldBeRetriedOn429, HTTP 5xx: $shouldBeRetriedOn5xx)', ({ makeApiRequest, shouldBeRetriedOn404, shouldBeRetriedOn429, shouldBeRetriedOn5xx }) => __awaiter(void 0, void 0, void 0, function* () {
167
+ const serverError = new axios_1.AxiosError('Server Error');
168
+ const requestMock = jest.fn().mockImplementation(() => {
169
+ throw serverError;
170
+ });
171
+ jest.spyOn(axios_1.default, 'create').mockImplementation((() => requestMock));
172
+ {
173
+ serverError.response = { status: 404 };
174
+ const requestPromise = makeApiRequest();
175
+ yield fastForwardRetries();
176
+ yield expect(requestPromise).rejects.toThrow('Server Error');
177
+ expect(requestMock).toHaveBeenCalledTimes(shouldBeRetriedOn404 ? MAX_ATTEMPTS : MIN_ATTEMPTS);
178
+ }
179
+ requestMock.mockClear();
180
+ {
181
+ serverError.response = { status: 429 };
182
+ const requestPromise = makeApiRequest();
183
+ yield fastForwardRetries();
184
+ yield expect(requestPromise).rejects.toThrow('Server Error');
185
+ expect(requestMock).toHaveBeenCalledTimes(shouldBeRetriedOn429 ? MAX_ATTEMPTS : MIN_ATTEMPTS);
186
+ }
187
+ requestMock.mockClear();
188
+ {
189
+ serverError.response = { status: 502 };
190
+ const requestPromise = makeApiRequest();
191
+ yield fastForwardRetries();
192
+ yield expect(requestPromise).rejects.toThrow('Server Error');
193
+ expect(requestMock).toHaveBeenCalledTimes(shouldBeRetriedOn5xx ? MAX_ATTEMPTS : MIN_ATTEMPTS);
194
+ }
195
+ }));
196
+ test('should retry when socket hangs up', () => __awaiter(void 0, void 0, void 0, function* () {
197
+ jest.spyOn(internalUtils, 'wait').mockImplementation();
198
+ const requestSpy = jest.fn();
199
+ const server = (0, http_1.createServer)((_, res) => {
200
+ var _a;
201
+ // ECONNRESET: socket hang up
202
+ (_a = res.socket) === null || _a === void 0 ? void 0 : _a.destroy();
203
+ requestSpy();
204
+ });
205
+ server.listen();
206
+ const { port } = server.address();
207
+ const localApi = (0, api_1.apiConstructor)(Object.assign(Object.assign({}, apiConfiguration), { baseUrl: `http://127.0.0.1:${port}` }));
208
+ yield expect(localApi.getSyntheticsOrgSettings).rejects.toThrow('socket hang up');
209
+ expect(requestSpy).toHaveBeenCalledTimes(MAX_ATTEMPTS);
210
+ server.close();
211
+ }));
212
+ });
213
+ test('should get a mobile application presigned URL from api', () => __awaiter(void 0, void 0, void 0, function* () {
214
+ const spy = jest
215
+ .spyOn(axios_1.default, 'create')
216
+ .mockImplementation((() => () => ({ data: fixtures_2.MOBILE_PRESIGNED_URLS_PAYLOAD })));
217
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
218
+ const { getMobileApplicationPresignedURLs } = api;
219
+ const result = yield getMobileApplicationPresignedURLs('applicationId', 1025, fixtures_2.MOBILE_PRESIGNED_UPLOAD_PARTS);
220
+ expect(result).toEqual(fixtures_2.MOBILE_PRESIGNED_URLS_PAYLOAD);
221
+ spy.mockRestore();
222
+ }));
223
+ test('should get a tunnel presigned URL from api', () => __awaiter(void 0, void 0, void 0, function* () {
224
+ const spy = jest.spyOn(axios_1.default, 'create').mockImplementation((() => () => ({ data: PRESIGNED_URL_PAYLOAD })));
225
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
226
+ const { getTunnelPresignedURL } = api;
227
+ const { url } = yield getTunnelPresignedURL([TRIGGERED_TEST_ID]);
228
+ expect(url).toEqual(PRESIGNED_URL_PAYLOAD.url);
229
+ spy.mockRestore();
230
+ }));
231
+ test('should upload a mobile application with a presigned URL', () => __awaiter(void 0, void 0, void 0, function* () {
232
+ const mockRequest = jest.fn();
233
+ mockRequest.mockReturnValue({ status: 200, headers: { etag: '"123"' } });
234
+ const spy = jest.spyOn(axios_1.default, 'create').mockImplementation((() => mockRequest));
235
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
236
+ const { uploadMobileApplicationPart } = api;
237
+ const result = yield uploadMobileApplicationPart(fixtures_2.MOBILE_PRESIGNED_UPLOAD_PARTS, fixtures_2.MOBILE_PRESIGNED_URLS_PAYLOAD.multipart_presigned_urls_params);
238
+ expect(result).toEqual([
239
+ { ETag: '123', PartNumber: 1 },
240
+ { ETag: '123', PartNumber: 2 },
241
+ ]);
242
+ const callArg = mockRequest.mock.calls[0][0];
243
+ expect(callArg.url).toBe(fixtures_2.MOBILE_PRESIGNED_URLS_PAYLOAD.multipart_presigned_urls_params.urls[1]);
244
+ expect(mockRequest).toHaveBeenCalledTimes(fixtures_2.MOBILE_PRESIGNED_UPLOAD_PARTS.length);
245
+ spy.mockRestore();
246
+ }));
247
+ test('should return empty ETag when doing azure part upload', () => __awaiter(void 0, void 0, void 0, function* () {
248
+ const mockRequest = jest.fn();
249
+ mockRequest.mockReturnValue({ status: 200, headers: {} });
250
+ const spy = jest.spyOn(axios_1.default, 'create').mockImplementation((() => mockRequest));
251
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
252
+ const { uploadMobileApplicationPart } = api;
253
+ const urls = {
254
+ 1: 'https://myaccount.blob.core.windows.net/mycontainer/myblob1',
255
+ 2: 'https://myaccount.blob.core.windows.net/mycontainer/myblob2',
256
+ };
257
+ const result = yield uploadMobileApplicationPart(fixtures_2.MOBILE_PRESIGNED_UPLOAD_PARTS, Object.assign(Object.assign({}, fixtures_2.MOBILE_PRESIGNED_URLS_PAYLOAD.multipart_presigned_urls_params), {
258
+ // override fixture with azure urls
259
+ urls }));
260
+ expect(result).toEqual([
261
+ { ETag: '', PartNumber: 1 },
262
+ { ETag: '', PartNumber: 2 },
263
+ ]);
264
+ const callArg = mockRequest.mock.calls[0][0];
265
+ expect(callArg.url).toBe(urls[1]);
266
+ expect(mockRequest).toHaveBeenCalledTimes(fixtures_2.MOBILE_PRESIGNED_UPLOAD_PARTS.length);
267
+ spy.mockRestore();
268
+ }));
269
+ test('should complete presigned mobile application upload', () => __awaiter(void 0, void 0, void 0, function* () {
270
+ const jobId = 'fake_job_id';
271
+ const spy = jest.spyOn(axios_1.default, 'create').mockImplementation((() => () => ({ data: { job_id: jobId } })));
272
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
273
+ const { completeMultipartMobileApplicationUpload } = api;
274
+ const appId = 'appId123';
275
+ const partUploadResponses = Object.keys(fixtures_2.MOBILE_PRESIGNED_URLS_PAYLOAD.multipart_presigned_urls_params.urls).map((partNumber) => ({
276
+ PartNumber: Number(partNumber),
277
+ ETag: 'etag',
278
+ }));
279
+ const result = yield completeMultipartMobileApplicationUpload(appId, fixtures_2.MOBILE_PRESIGNED_URLS_PAYLOAD.multipart_presigned_urls_params.upload_id, fixtures_2.MOBILE_PRESIGNED_URLS_PAYLOAD.multipart_presigned_urls_params.key, partUploadResponses);
280
+ expect(result).toBe(jobId);
281
+ spy.mockRestore();
282
+ }));
283
+ test('should poll for app upload validation', () => __awaiter(void 0, void 0, void 0, function* () {
284
+ const spy = jest.spyOn(axios_1.default, 'create').mockImplementation((() => () => ({ data: fixtures_2.APP_UPLOAD_POLL_RESULTS })));
285
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
286
+ const { pollMobileApplicationUploadResponse } = api;
287
+ const jobId = 'jobId';
288
+ const appUploadResult = yield pollMobileApplicationUploadResponse(jobId);
289
+ expect(appUploadResult).toEqual(fixtures_2.APP_UPLOAD_POLL_RESULTS);
290
+ spy.mockRestore();
291
+ }));
292
+ test('should perform search with expected parameters', () => __awaiter(void 0, void 0, void 0, function* () {
293
+ const requestMock = jest.fn(() => ({ status: 200, data: { tests: [] } }));
294
+ const spy = jest.spyOn(axios_1.default, 'create').mockImplementation((() => requestMock));
295
+ const { searchTests } = (0, api_1.apiConstructor)(apiConfiguration);
296
+ yield expect(searchTests('tag:("test") creator:("Me") ???')).resolves.toEqual({ tests: [] });
297
+ expect(requestMock).toHaveBeenCalledWith(expect.objectContaining({
298
+ params: {
299
+ count: run_tests_command_1.MAX_TESTS_TO_TRIGGER + 1,
300
+ text: 'tag:("test") creator:("Me") ???',
301
+ },
302
+ }));
303
+ spy.mockRestore();
304
+ }));
305
+ test('should receive settings', () => __awaiter(void 0, void 0, void 0, function* () {
306
+ const settings = { onDemandConcurrencyCap: 10 };
307
+ const requestMock = jest.fn(() => ({ status: 200, data: settings }));
308
+ const spy = jest.spyOn(axios_1.default, 'create').mockImplementation((() => requestMock));
309
+ const { getSyntheticsOrgSettings: getSettings } = (0, api_1.apiConstructor)(apiConfiguration);
310
+ yield expect(getSettings()).resolves.toEqual(settings);
311
+ spy.mockRestore();
312
+ }));
313
+ describe('proxy configuration', () => {
314
+ const tests = [{ public_id: '123-456-789', executionRule: interfaces_1.ExecutionRule.NON_BLOCKING }];
315
+ let initialHttpProxyEnv;
316
+ beforeAll(() => {
317
+ initialHttpProxyEnv = process.env.HTTP_PROXY;
318
+ });
319
+ afterAll(() => {
320
+ if (initialHttpProxyEnv !== undefined) {
321
+ process.env.HTTP_PROXY = initialHttpProxyEnv;
322
+ }
323
+ else {
324
+ delete process.env.HTTP_PROXY;
325
+ }
326
+ });
327
+ beforeEach(() => {
328
+ delete process.env.HTTP_PROXY;
329
+ });
330
+ test('use proxy defined in configuration', () => __awaiter(void 0, void 0, void 0, function* () {
331
+ const { close: proxyClose, config: proxyOpts, calls } = (0, fixtures_2.getSyntheticsProxy)();
332
+ try {
333
+ const proxyApiConfiguration = Object.assign(Object.assign({}, apiConfiguration), { proxyOpts });
334
+ const api = (0, api_1.apiConstructor)(proxyApiConfiguration);
335
+ const searchOutput = yield api.searchTests('tag:test');
336
+ expect(searchOutput).toEqual(fixtures_2.mockSearchResponse);
337
+ expect(calls.search).toHaveBeenCalled();
338
+ const tunnelOutput = yield api.getTunnelPresignedURL(['123-456-789']);
339
+ expect(tunnelOutput).toEqual({ url: expect.stringContaining('ws://127.0.0.1:') });
340
+ expect(calls.presignedUrl).toHaveBeenCalled();
341
+ const testOutput = yield api.getTest('123-456-789');
342
+ expect(testOutput).toEqual((0, fixtures_2.getApiTest)('123-456-789'));
343
+ expect(calls.get).toHaveBeenCalled();
344
+ const triggerOutput = yield api.triggerTests({ tests });
345
+ expect(triggerOutput).toEqual(fixtures_2.mockTestTriggerResponse);
346
+ expect(calls.trigger).toHaveBeenCalledWith({ tests });
347
+ }
348
+ finally {
349
+ yield proxyClose();
350
+ }
351
+ }));
352
+ test('use proxy defined in environment variable', () => __awaiter(void 0, void 0, void 0, function* () {
353
+ const { close: proxyClose, config: proxyOpts, calls } = (0, fixtures_2.getSyntheticsProxy)();
354
+ process.env.HTTP_PROXY = `http://localhost:${proxyOpts.port}`;
355
+ try {
356
+ const api = (0, api_1.apiConstructor)(apiConfiguration);
357
+ const searchOutput = yield api.searchTests('tag:test');
358
+ expect(searchOutput).toEqual(fixtures_2.mockSearchResponse);
359
+ expect(calls.search).toHaveBeenCalled();
360
+ const triggerOutput = yield api.triggerTests({ tests });
361
+ expect(triggerOutput).toEqual(fixtures_2.mockTestTriggerResponse);
362
+ expect(calls.trigger).toHaveBeenCalledWith({ tests });
363
+ }
364
+ finally {
365
+ yield proxyClose();
366
+ }
367
+ }));
368
+ test('use configuration proxy over environment variable', () => __awaiter(void 0, void 0, void 0, function* () {
369
+ const { close: proxyClose, config: proxyOpts, calls } = (0, fixtures_2.getSyntheticsProxy)();
370
+ process.env.HTTP_PROXY = 'http://inexistanthost/';
371
+ try {
372
+ const proxyApiConfiguration = Object.assign(Object.assign({}, apiConfiguration), { proxyOpts });
373
+ const api = (0, api_1.apiConstructor)(proxyApiConfiguration);
374
+ const triggerOutput = yield api.triggerTests({ tests });
375
+ expect(triggerOutput).toEqual(fixtures_2.mockTestTriggerResponse);
376
+ expect(calls.trigger).toHaveBeenCalledWith({ tests });
377
+ }
378
+ finally {
379
+ yield proxyClose();
380
+ }
381
+ }));
382
+ });
383
+ });
384
+ describe('getApiHelper', () => {
385
+ beforeEach(() => {
386
+ jest.restoreAllMocks();
387
+ });
388
+ test('should throw an error if API or Application key are undefined', () => __awaiter(void 0, void 0, void 0, function* () {
389
+ process.env = {};
390
+ expect(() => (0, api_1.getApiHelper)(fixtures_2.ciConfig)).toThrow(new errors_1.CriticalError('MISSING_APP_KEY', 'App key is required'));
391
+ expect(() => (0, api_1.getApiHelper)(Object.assign(Object.assign({}, fixtures_2.ciConfig), { appKey: 'fakeappkey' }))).toThrow(new errors_1.CriticalError('MISSING_API_KEY', 'API key is required'));
392
+ }));
393
+ });
394
+ describe('formatBackendErrors', () => {
395
+ test('backend error - no error', () => {
396
+ const backendError = (0, fixtures_1.getAxiosError)(500, { errors: [] });
397
+ expect((0, api_1.formatBackendErrors)(backendError)).toBe('error querying https://app.datadoghq.com/example');
398
+ });
399
+ test('backend error - single error', () => {
400
+ const backendError = (0, fixtures_1.getAxiosError)(500, { errors: ['single error'] });
401
+ expect((0, api_1.formatBackendErrors)(backendError)).toBe('query on https://app.datadoghq.com/example returned: "single error"');
402
+ });
403
+ test('backend error - multiple errors', () => {
404
+ const backendError = (0, fixtures_1.getAxiosError)(500, { errors: ['error 1', 'error 2'] });
405
+ expect((0, api_1.formatBackendErrors)(backendError)).toBe('query on https://app.datadoghq.com/example returned:\n - error 1\n - error 2');
406
+ });
407
+ test('not a backend error', () => {
408
+ const requestError = (0, fixtures_1.getAxiosError)(403, { message: 'Forbidden' });
409
+ expect((0, api_1.formatBackendErrors)(requestError)).toBe('could not query https://app.datadoghq.com/example\nForbidden');
410
+ });
411
+ test('missing scope error', () => {
412
+ const requestError = (0, fixtures_1.getAxiosError)(403, { errors: ['Forbidden', 'Failed permission authorization checks'] });
413
+ expect((0, api_1.formatBackendErrors)(requestError, 'synthetics_default_settings_read')).toBe('query on https://app.datadoghq.com/example returned:\n - Forbidden\n - Failed permission authorization checks\nIs the App key granted the synthetics_default_settings_read scope?');
414
+ });
415
+ });
416
+ //# sourceMappingURL=api.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.test.js","sourceRoot":"","sources":["../../../../src/commands/synthetics/__tests__/api.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};