@azure/microsoft-playwright-testing 1.0.0-alpha.20250318.1 → 1.0.0-alpha.20250319.2

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 (597) hide show
  1. package/dist/{common → browser/common}/constants.d.ts +1 -1
  2. package/dist/browser/common/constants.d.ts.map +1 -0
  3. package/dist/browser/common/constants.js +226 -0
  4. package/dist/browser/common/constants.js.map +1 -0
  5. package/dist/browser/common/customerConfig.d.ts.map +1 -0
  6. package/dist/browser/common/customerConfig.js +13 -0
  7. package/dist/{common → browser/common}/customerConfig.js.map +1 -1
  8. package/dist/{common → browser/common}/entraIdAccessToken.d.ts +2 -2
  9. package/dist/browser/common/entraIdAccessToken.d.ts.map +1 -0
  10. package/dist/browser/common/entraIdAccessToken.js +71 -0
  11. package/dist/browser/common/entraIdAccessToken.js.map +1 -0
  12. package/dist/browser/common/environmentVariables.d.ts.map +1 -0
  13. package/dist/browser/common/environmentVariables.js +15 -0
  14. package/dist/browser/common/environmentVariables.js.map +1 -0
  15. package/dist/browser/common/executor.d.ts.map +1 -0
  16. package/dist/browser/common/executor.js +74 -0
  17. package/dist/browser/common/executor.js.map +1 -0
  18. package/dist/browser/common/httpService.d.ts.map +1 -0
  19. package/dist/browser/common/httpService.js +33 -0
  20. package/dist/browser/common/httpService.js.map +1 -0
  21. package/dist/browser/common/logger.d.ts.map +1 -0
  22. package/dist/browser/common/logger.js +6 -0
  23. package/dist/browser/common/logger.js.map +1 -0
  24. package/dist/browser/common/messages.d.ts.map +1 -0
  25. package/dist/browser/common/messages.js +37 -0
  26. package/dist/browser/common/messages.js.map +1 -0
  27. package/dist/browser/common/multimap.d.ts.map +1 -0
  28. package/dist/browser/common/multimap.js +60 -0
  29. package/dist/browser/common/multimap.js.map +1 -0
  30. package/dist/{common → browser/common}/playwrightServiceConfig.d.ts +1 -1
  31. package/dist/browser/common/playwrightServiceConfig.d.ts.map +1 -0
  32. package/dist/browser/common/playwrightServiceConfig.js +45 -0
  33. package/dist/browser/common/playwrightServiceConfig.js.map +1 -0
  34. package/dist/{common → browser/common}/types.d.ts +1 -1
  35. package/dist/browser/common/types.d.ts.map +1 -0
  36. package/dist/browser/common/types.js +4 -0
  37. package/dist/browser/common/types.js.map +1 -0
  38. package/dist/browser/core/global/playwright-service-global-setup.d.ts.map +1 -0
  39. package/dist/browser/core/global/playwright-service-global-setup.js +19 -0
  40. package/dist/browser/core/global/playwright-service-global-setup.js.map +1 -0
  41. package/dist/browser/core/global/playwright-service-global-teardown.d.ts.map +1 -0
  42. package/dist/browser/core/global/playwright-service-global-teardown.js +19 -0
  43. package/dist/browser/core/global/playwright-service-global-teardown.js.map +1 -0
  44. package/dist/{core → browser/core}/playwrightService.d.ts +1 -1
  45. package/dist/browser/core/playwrightService.d.ts.map +1 -0
  46. package/dist/browser/core/playwrightService.js +190 -0
  47. package/dist/browser/core/playwrightService.js.map +1 -0
  48. package/dist/browser/core/playwrightServiceEntra.d.ts.map +1 -0
  49. package/dist/browser/core/playwrightServiceEntra.js +49 -0
  50. package/dist/browser/core/playwrightServiceEntra.js.map +1 -0
  51. package/dist/browser/core/playwrightServiceUtils.d.ts +3 -0
  52. package/dist/browser/core/playwrightServiceUtils.d.ts.map +1 -0
  53. package/dist/browser/core/playwrightServiceUtils.js +11 -0
  54. package/dist/browser/core/playwrightServiceUtils.js.map +1 -0
  55. package/dist/{index.d.ts → browser/index.d.ts} +3 -3
  56. package/dist/browser/index.d.ts.map +1 -0
  57. package/dist/browser/index.js +11 -0
  58. package/dist/browser/index.js.map +1 -0
  59. package/dist/browser/model/entraTokenDetails.d.ts.map +1 -0
  60. package/dist/browser/model/entraTokenDetails.js +5 -0
  61. package/dist/browser/model/entraTokenDetails.js.map +1 -0
  62. package/dist/browser/model/mptTokenDetails.d.ts.map +1 -0
  63. package/dist/browser/model/mptTokenDetails.js +10 -0
  64. package/dist/browser/model/mptTokenDetails.js.map +1 -0
  65. package/dist/browser/model/shard.d.ts.map +1 -0
  66. package/dist/browser/model/shard.js +19 -0
  67. package/dist/browser/model/shard.js.map +1 -0
  68. package/dist/browser/model/storageUri.d.ts.map +1 -0
  69. package/dist/browser/model/storageUri.js +18 -0
  70. package/dist/browser/model/storageUri.js.map +1 -0
  71. package/dist/{model → browser/model}/testResult.d.ts +1 -1
  72. package/dist/browser/model/testResult.d.ts.map +1 -0
  73. package/dist/browser/model/testResult.js +5 -0
  74. package/dist/browser/model/testResult.js.map +1 -0
  75. package/dist/{model → browser/model}/testRun.d.ts +1 -1
  76. package/dist/browser/model/testRun.d.ts.map +1 -0
  77. package/dist/browser/model/testRun.js +8 -0
  78. package/dist/browser/model/testRun.js.map +1 -0
  79. package/dist/browser/package.json +3 -0
  80. package/dist/{reporter → browser/reporter}/index.d.ts +1 -1
  81. package/dist/browser/reporter/index.d.ts.map +1 -0
  82. package/dist/browser/reporter/index.js +12 -0
  83. package/dist/browser/reporter/index.js.map +1 -0
  84. package/dist/{reporter → browser/reporter}/mptReporter.d.ts +1 -1
  85. package/dist/browser/reporter/mptReporter.d.ts.map +1 -0
  86. package/dist/browser/reporter/mptReporter.js +373 -0
  87. package/dist/browser/reporter/mptReporter.js.map +1 -0
  88. package/dist/browser/utils/cIInfoProvider.d.ts.map +1 -0
  89. package/dist/browser/utils/cIInfoProvider.js +101 -0
  90. package/dist/browser/utils/cIInfoProvider.js.map +1 -0
  91. package/dist/browser/utils/getPlaywrightVersion.d.ts +2 -0
  92. package/dist/browser/utils/getPlaywrightVersion.d.ts.map +1 -0
  93. package/dist/browser/utils/getPlaywrightVersion.js +19 -0
  94. package/dist/browser/utils/getPlaywrightVersion.js.map +1 -0
  95. package/dist/{utils → browser/utils}/packageManager.d.ts +1 -1
  96. package/dist/browser/utils/packageManager.d.ts.map +1 -0
  97. package/dist/browser/utils/packageManager.js +47 -0
  98. package/dist/browser/utils/packageManager.js.map +1 -0
  99. package/dist/browser/utils/parseJwt.d.ts +4 -0
  100. package/dist/browser/utils/parseJwt.d.ts.map +1 -0
  101. package/dist/browser/utils/parseJwt.js +16 -0
  102. package/dist/browser/utils/parseJwt.js.map +1 -0
  103. package/dist/{utils → browser/utils}/reporterUtils.d.ts +10 -10
  104. package/dist/browser/utils/reporterUtils.d.ts.map +1 -0
  105. package/dist/browser/utils/reporterUtils.js +585 -0
  106. package/dist/browser/utils/reporterUtils.js.map +1 -0
  107. package/dist/{utils → browser/utils}/serviceClient.d.ts +7 -7
  108. package/dist/browser/utils/serviceClient.d.ts.map +1 -0
  109. package/dist/browser/utils/serviceClient.js +103 -0
  110. package/dist/browser/utils/serviceClient.js.map +1 -0
  111. package/dist/browser/utils/storageClient.d.ts.map +1 -0
  112. package/dist/browser/utils/storageClient.js +37 -0
  113. package/dist/browser/utils/storageClient.js.map +1 -0
  114. package/dist/{utils → browser/utils}/utils.d.ts +3 -4
  115. package/dist/browser/utils/utils.d.ts.map +1 -0
  116. package/dist/browser/utils/utils.js +151 -0
  117. package/dist/browser/utils/utils.js.map +1 -0
  118. package/dist/commonjs/common/constants.d.ts +95 -0
  119. package/dist/commonjs/common/constants.d.ts.map +1 -0
  120. package/dist/commonjs/common/constants.js.map +1 -0
  121. package/dist/commonjs/common/customerConfig.d.ts +9 -0
  122. package/dist/commonjs/common/customerConfig.d.ts.map +1 -0
  123. package/dist/commonjs/common/customerConfig.js.map +1 -0
  124. package/dist/commonjs/common/entraIdAccessToken.d.ts +12 -0
  125. package/dist/commonjs/common/entraIdAccessToken.d.ts.map +1 -0
  126. package/dist/{common → commonjs/common}/entraIdAccessToken.js +22 -18
  127. package/dist/commonjs/common/entraIdAccessToken.js.map +1 -0
  128. package/dist/commonjs/common/environmentVariables.d.ts +13 -0
  129. package/dist/commonjs/common/environmentVariables.d.ts.map +1 -0
  130. package/dist/{common → commonjs/common}/environmentVariables.js +4 -4
  131. package/dist/commonjs/common/environmentVariables.js.map +1 -0
  132. package/dist/commonjs/common/executor.d.ts +2 -0
  133. package/dist/commonjs/common/executor.d.ts.map +1 -0
  134. package/dist/{common → commonjs/common}/executor.js +13 -13
  135. package/dist/commonjs/common/executor.js.map +1 -0
  136. package/dist/commonjs/common/httpService.d.ts +5 -0
  137. package/dist/commonjs/common/httpService.d.ts.map +1 -0
  138. package/dist/{common → commonjs/common}/httpService.js +4 -4
  139. package/dist/commonjs/common/httpService.js.map +1 -0
  140. package/dist/commonjs/common/logger.d.ts +3 -0
  141. package/dist/commonjs/common/logger.d.ts.map +1 -0
  142. package/dist/commonjs/common/logger.js.map +1 -0
  143. package/dist/commonjs/common/messages.d.ts +35 -0
  144. package/dist/commonjs/common/messages.d.ts.map +1 -0
  145. package/dist/commonjs/common/messages.js.map +1 -0
  146. package/dist/commonjs/common/multimap.d.ts +16 -0
  147. package/dist/commonjs/common/multimap.d.ts.map +1 -0
  148. package/dist/commonjs/common/multimap.js.map +1 -0
  149. package/dist/commonjs/common/playwrightServiceConfig.d.ts +13 -0
  150. package/dist/commonjs/common/playwrightServiceConfig.d.ts.map +1 -0
  151. package/dist/commonjs/common/playwrightServiceConfig.js +48 -0
  152. package/dist/commonjs/common/playwrightServiceConfig.js.map +1 -0
  153. package/{types/microsoft-playwright-testing.d.ts → dist/commonjs/common/types.d.ts} +226 -273
  154. package/dist/commonjs/common/types.d.ts.map +1 -0
  155. package/dist/commonjs/common/types.js.map +1 -0
  156. package/dist/commonjs/core/global/playwright-service-global-setup.d.ts +4 -0
  157. package/dist/commonjs/core/global/playwright-service-global-setup.d.ts.map +1 -0
  158. package/dist/commonjs/core/global/playwright-service-global-setup.js +22 -0
  159. package/dist/commonjs/core/global/playwright-service-global-setup.js.map +1 -0
  160. package/dist/commonjs/core/global/playwright-service-global-teardown.d.ts +4 -0
  161. package/dist/commonjs/core/global/playwright-service-global-teardown.d.ts.map +1 -0
  162. package/dist/commonjs/core/global/playwright-service-global-teardown.js +22 -0
  163. package/dist/commonjs/core/global/playwright-service-global-teardown.js.map +1 -0
  164. package/dist/commonjs/core/playwrightService.d.ts +64 -0
  165. package/dist/commonjs/core/playwrightService.d.ts.map +1 -0
  166. package/dist/{core → commonjs/core}/playwrightService.js +44 -43
  167. package/dist/commonjs/core/playwrightService.js.map +1 -0
  168. package/dist/commonjs/core/playwrightServiceEntra.d.ts +16 -0
  169. package/dist/commonjs/core/playwrightServiceEntra.d.ts.map +1 -0
  170. package/dist/{core → commonjs/core}/playwrightServiceEntra.js +12 -12
  171. package/dist/commonjs/core/playwrightServiceEntra.js.map +1 -0
  172. package/dist/commonjs/core/playwrightServiceUtils-cjs.cjs.map +1 -0
  173. package/dist/commonjs/core/playwrightServiceUtils-cjs.d.cts.map +1 -0
  174. package/dist/commonjs/core/playwrightServiceUtils.d.ts +3 -0
  175. package/dist/commonjs/core/playwrightServiceUtils.js +10 -0
  176. package/dist/commonjs/index.d.ts +10 -0
  177. package/dist/commonjs/index.d.ts.map +1 -0
  178. package/dist/{index.js → commonjs/index.js} +9 -10
  179. package/dist/commonjs/index.js.map +1 -0
  180. package/dist/commonjs/model/entraTokenDetails.d.ts +5 -0
  181. package/dist/commonjs/model/entraTokenDetails.d.ts.map +1 -0
  182. package/dist/commonjs/model/entraTokenDetails.js.map +1 -0
  183. package/dist/commonjs/model/mptTokenDetails.d.ts +11 -0
  184. package/dist/commonjs/model/mptTokenDetails.d.ts.map +1 -0
  185. package/dist/commonjs/model/mptTokenDetails.js.map +1 -0
  186. package/dist/commonjs/model/shard.d.ts +41 -0
  187. package/dist/commonjs/model/shard.d.ts.map +1 -0
  188. package/dist/commonjs/model/shard.js.map +1 -0
  189. package/dist/commonjs/model/storageUri.d.ts +14 -0
  190. package/dist/commonjs/model/storageUri.d.ts.map +1 -0
  191. package/dist/commonjs/model/storageUri.js.map +1 -0
  192. package/dist/commonjs/model/testResult.d.ts +40 -0
  193. package/dist/commonjs/model/testResult.d.ts.map +1 -0
  194. package/dist/commonjs/model/testResult.js.map +1 -0
  195. package/dist/commonjs/model/testRun.d.ts +36 -0
  196. package/dist/commonjs/model/testRun.d.ts.map +1 -0
  197. package/dist/commonjs/model/testRun.js.map +1 -0
  198. package/dist/commonjs/package.json +3 -0
  199. package/dist/commonjs/reporter/index.d.ts +10 -0
  200. package/dist/commonjs/reporter/index.d.ts.map +1 -0
  201. package/dist/{reporter → commonjs/reporter}/index.js +2 -2
  202. package/dist/commonjs/reporter/index.js.map +1 -0
  203. package/{types/reporter/microsoft-playwright-testing.d.ts → dist/commonjs/reporter/mptReporter.d.ts} +100 -150
  204. package/dist/commonjs/reporter/mptReporter.d.ts.map +1 -0
  205. package/dist/{reporter → commonjs/reporter}/mptReporter.js +52 -52
  206. package/dist/commonjs/reporter/mptReporter.js.map +1 -0
  207. package/dist/commonjs/utils/cIInfoProvider.d.ts +25 -0
  208. package/dist/commonjs/utils/cIInfoProvider.d.ts.map +1 -0
  209. package/dist/commonjs/utils/cIInfoProvider.js.map +1 -0
  210. package/dist/commonjs/utils/getPlaywrightVersion.d.ts +2 -0
  211. package/dist/commonjs/utils/getPlaywrightVersion.d.ts.map +1 -0
  212. package/dist/commonjs/utils/getPlaywrightVersion.js +23 -0
  213. package/dist/commonjs/utils/getPlaywrightVersion.js.map +1 -0
  214. package/dist/commonjs/utils/packageManager.d.ts +15 -0
  215. package/dist/commonjs/utils/packageManager.d.ts.map +1 -0
  216. package/dist/commonjs/utils/packageManager.js.map +1 -0
  217. package/dist/commonjs/utils/parseJwt.d.ts +4 -0
  218. package/dist/commonjs/utils/parseJwt.d.ts.map +1 -0
  219. package/dist/commonjs/utils/parseJwt.js +21 -0
  220. package/dist/commonjs/utils/parseJwt.js.map +1 -0
  221. package/dist/commonjs/utils/reporterUtils.d.ts +60 -0
  222. package/dist/commonjs/utils/reporterUtils.d.ts.map +1 -0
  223. package/dist/{utils → commonjs/utils}/reporterUtils.js +47 -47
  224. package/dist/commonjs/utils/reporterUtils.js.map +1 -0
  225. package/dist/commonjs/utils/serviceClient.d.ts +25 -0
  226. package/dist/commonjs/utils/serviceClient.d.ts.map +1 -0
  227. package/dist/{utils → commonjs/utils}/serviceClient.js +19 -19
  228. package/dist/commonjs/utils/serviceClient.js.map +1 -0
  229. package/dist/commonjs/utils/storageClient.d.ts +6 -0
  230. package/dist/commonjs/utils/storageClient.d.ts.map +1 -0
  231. package/dist/{utils → commonjs/utils}/storageClient.js +7 -7
  232. package/dist/commonjs/utils/storageClient.js.map +1 -0
  233. package/dist/commonjs/utils/utils.d.ts +28 -0
  234. package/dist/commonjs/utils/utils.d.ts.map +1 -0
  235. package/dist/{utils → commonjs/utils}/utils.js +38 -60
  236. package/dist/commonjs/utils/utils.js.map +1 -0
  237. package/dist/esm/common/constants.d.ts +95 -0
  238. package/dist/esm/common/constants.d.ts.map +1 -0
  239. package/dist/esm/common/constants.js +226 -0
  240. package/dist/esm/common/constants.js.map +1 -0
  241. package/dist/esm/common/customerConfig.d.ts +9 -0
  242. package/dist/esm/common/customerConfig.d.ts.map +1 -0
  243. package/dist/esm/common/customerConfig.js +13 -0
  244. package/dist/esm/common/customerConfig.js.map +1 -0
  245. package/dist/esm/common/entraIdAccessToken.d.ts +12 -0
  246. package/dist/esm/common/entraIdAccessToken.d.ts.map +1 -0
  247. package/dist/esm/common/entraIdAccessToken.js +71 -0
  248. package/dist/esm/common/entraIdAccessToken.js.map +1 -0
  249. package/dist/esm/common/environmentVariables.d.ts +13 -0
  250. package/dist/esm/common/environmentVariables.d.ts.map +1 -0
  251. package/dist/esm/common/environmentVariables.js +15 -0
  252. package/dist/esm/common/environmentVariables.js.map +1 -0
  253. package/dist/esm/common/executor.d.ts +2 -0
  254. package/dist/esm/common/executor.d.ts.map +1 -0
  255. package/dist/esm/common/executor.js +74 -0
  256. package/dist/esm/common/executor.js.map +1 -0
  257. package/dist/esm/common/httpService.d.ts +5 -0
  258. package/dist/esm/common/httpService.d.ts.map +1 -0
  259. package/dist/esm/common/httpService.js +33 -0
  260. package/dist/esm/common/httpService.js.map +1 -0
  261. package/dist/esm/common/logger.d.ts +3 -0
  262. package/dist/esm/common/logger.d.ts.map +1 -0
  263. package/dist/esm/common/logger.js +6 -0
  264. package/dist/esm/common/logger.js.map +1 -0
  265. package/dist/esm/common/messages.d.ts +35 -0
  266. package/dist/esm/common/messages.d.ts.map +1 -0
  267. package/dist/esm/common/messages.js +37 -0
  268. package/dist/esm/common/messages.js.map +1 -0
  269. package/dist/esm/common/multimap.d.ts +16 -0
  270. package/dist/esm/common/multimap.d.ts.map +1 -0
  271. package/dist/esm/common/multimap.js +60 -0
  272. package/dist/esm/common/multimap.js.map +1 -0
  273. package/dist/esm/common/playwrightServiceConfig.d.ts +13 -0
  274. package/dist/esm/common/playwrightServiceConfig.d.ts.map +1 -0
  275. package/dist/esm/common/playwrightServiceConfig.js +45 -0
  276. package/dist/esm/common/playwrightServiceConfig.js.map +1 -0
  277. package/dist/esm/common/types.d.ts +226 -0
  278. package/dist/esm/common/types.d.ts.map +1 -0
  279. package/dist/esm/common/types.js +4 -0
  280. package/dist/esm/common/types.js.map +1 -0
  281. package/dist/esm/core/global/playwright-service-global-setup.d.ts +4 -0
  282. package/dist/esm/core/global/playwright-service-global-setup.d.ts.map +1 -0
  283. package/dist/esm/core/global/playwright-service-global-setup.js +19 -0
  284. package/dist/esm/core/global/playwright-service-global-setup.js.map +1 -0
  285. package/dist/esm/core/global/playwright-service-global-teardown.d.ts +4 -0
  286. package/dist/esm/core/global/playwright-service-global-teardown.d.ts.map +1 -0
  287. package/dist/esm/core/global/playwright-service-global-teardown.js +19 -0
  288. package/dist/esm/core/global/playwright-service-global-teardown.js.map +1 -0
  289. package/dist/esm/core/playwrightService.d.ts +64 -0
  290. package/dist/esm/core/playwrightService.d.ts.map +1 -0
  291. package/dist/esm/core/playwrightService.js +190 -0
  292. package/dist/esm/core/playwrightService.js.map +1 -0
  293. package/dist/esm/core/playwrightServiceEntra.d.ts +16 -0
  294. package/dist/esm/core/playwrightServiceEntra.d.ts.map +1 -0
  295. package/dist/esm/core/playwrightServiceEntra.js +49 -0
  296. package/dist/esm/core/playwrightServiceEntra.js.map +1 -0
  297. package/dist/esm/core/playwrightServiceUtils.d.ts +3 -0
  298. package/dist/esm/core/playwrightServiceUtils.d.ts.map +1 -0
  299. package/dist/esm/core/playwrightServiceUtils.js +11 -0
  300. package/dist/esm/core/playwrightServiceUtils.js.map +1 -0
  301. package/dist/esm/index.d.ts +10 -0
  302. package/dist/esm/index.d.ts.map +1 -0
  303. package/dist/esm/index.js +11 -0
  304. package/dist/esm/index.js.map +1 -0
  305. package/dist/esm/model/entraTokenDetails.d.ts +5 -0
  306. package/dist/esm/model/entraTokenDetails.d.ts.map +1 -0
  307. package/dist/esm/model/entraTokenDetails.js +5 -0
  308. package/dist/esm/model/entraTokenDetails.js.map +1 -0
  309. package/dist/esm/model/mptTokenDetails.d.ts +11 -0
  310. package/dist/esm/model/mptTokenDetails.d.ts.map +1 -0
  311. package/dist/esm/model/mptTokenDetails.js +10 -0
  312. package/dist/esm/model/mptTokenDetails.js.map +1 -0
  313. package/dist/esm/model/shard.d.ts +41 -0
  314. package/dist/esm/model/shard.d.ts.map +1 -0
  315. package/dist/esm/model/shard.js +19 -0
  316. package/dist/esm/model/shard.js.map +1 -0
  317. package/dist/esm/model/storageUri.d.ts +14 -0
  318. package/dist/esm/model/storageUri.d.ts.map +1 -0
  319. package/dist/esm/model/storageUri.js +18 -0
  320. package/dist/esm/model/storageUri.js.map +1 -0
  321. package/dist/esm/model/testResult.d.ts +40 -0
  322. package/dist/esm/model/testResult.d.ts.map +1 -0
  323. package/dist/esm/model/testResult.js +5 -0
  324. package/dist/esm/model/testResult.js.map +1 -0
  325. package/dist/esm/model/testRun.d.ts +36 -0
  326. package/dist/esm/model/testRun.d.ts.map +1 -0
  327. package/dist/esm/model/testRun.js +8 -0
  328. package/dist/esm/model/testRun.js.map +1 -0
  329. package/dist/esm/package.json +3 -0
  330. package/dist/esm/reporter/index.d.ts +10 -0
  331. package/dist/esm/reporter/index.d.ts.map +1 -0
  332. package/dist/esm/reporter/index.js +12 -0
  333. package/dist/esm/reporter/index.js.map +1 -0
  334. package/dist/esm/reporter/mptReporter.d.ts +100 -0
  335. package/dist/esm/reporter/mptReporter.d.ts.map +1 -0
  336. package/dist/esm/reporter/mptReporter.js +373 -0
  337. package/dist/esm/reporter/mptReporter.js.map +1 -0
  338. package/dist/esm/utils/cIInfoProvider.d.ts +25 -0
  339. package/dist/esm/utils/cIInfoProvider.d.ts.map +1 -0
  340. package/dist/esm/utils/cIInfoProvider.js +101 -0
  341. package/dist/esm/utils/cIInfoProvider.js.map +1 -0
  342. package/dist/esm/utils/getPlaywrightVersion.d.ts +2 -0
  343. package/dist/esm/utils/getPlaywrightVersion.d.ts.map +1 -0
  344. package/dist/esm/utils/getPlaywrightVersion.js +19 -0
  345. package/dist/esm/utils/getPlaywrightVersion.js.map +1 -0
  346. package/dist/esm/utils/packageManager.d.ts +15 -0
  347. package/dist/esm/utils/packageManager.d.ts.map +1 -0
  348. package/dist/esm/utils/packageManager.js +47 -0
  349. package/dist/esm/utils/packageManager.js.map +1 -0
  350. package/dist/esm/utils/parseJwt.d.ts +4 -0
  351. package/dist/esm/utils/parseJwt.d.ts.map +1 -0
  352. package/dist/esm/utils/parseJwt.js +16 -0
  353. package/dist/esm/utils/parseJwt.js.map +1 -0
  354. package/dist/esm/utils/reporterUtils.d.ts +60 -0
  355. package/dist/esm/utils/reporterUtils.d.ts.map +1 -0
  356. package/dist/esm/utils/reporterUtils.js +585 -0
  357. package/dist/esm/utils/reporterUtils.js.map +1 -0
  358. package/dist/esm/utils/serviceClient.d.ts +25 -0
  359. package/dist/esm/utils/serviceClient.d.ts.map +1 -0
  360. package/dist/esm/utils/serviceClient.js +103 -0
  361. package/dist/esm/utils/serviceClient.js.map +1 -0
  362. package/dist/esm/utils/storageClient.d.ts +6 -0
  363. package/dist/esm/utils/storageClient.d.ts.map +1 -0
  364. package/dist/esm/utils/storageClient.js +37 -0
  365. package/dist/esm/utils/storageClient.js.map +1 -0
  366. package/dist/esm/utils/utils.d.ts +28 -0
  367. package/dist/esm/utils/utils.d.ts.map +1 -0
  368. package/dist/esm/utils/utils.js +151 -0
  369. package/dist/esm/utils/utils.js.map +1 -0
  370. package/dist/react-native/common/constants.d.ts +95 -0
  371. package/dist/react-native/common/constants.d.ts.map +1 -0
  372. package/dist/react-native/common/constants.js +226 -0
  373. package/dist/react-native/common/constants.js.map +1 -0
  374. package/dist/react-native/common/customerConfig.d.ts +9 -0
  375. package/dist/react-native/common/customerConfig.d.ts.map +1 -0
  376. package/dist/react-native/common/customerConfig.js +13 -0
  377. package/dist/react-native/common/customerConfig.js.map +1 -0
  378. package/dist/react-native/common/entraIdAccessToken.d.ts +12 -0
  379. package/dist/react-native/common/entraIdAccessToken.d.ts.map +1 -0
  380. package/dist/react-native/common/entraIdAccessToken.js +71 -0
  381. package/dist/react-native/common/entraIdAccessToken.js.map +1 -0
  382. package/dist/react-native/common/environmentVariables.d.ts +13 -0
  383. package/dist/react-native/common/environmentVariables.d.ts.map +1 -0
  384. package/dist/react-native/common/environmentVariables.js +15 -0
  385. package/dist/react-native/common/environmentVariables.js.map +1 -0
  386. package/dist/react-native/common/executor.d.ts +2 -0
  387. package/dist/react-native/common/executor.d.ts.map +1 -0
  388. package/dist/react-native/common/executor.js +74 -0
  389. package/dist/react-native/common/executor.js.map +1 -0
  390. package/dist/react-native/common/httpService.d.ts +5 -0
  391. package/dist/react-native/common/httpService.d.ts.map +1 -0
  392. package/dist/react-native/common/httpService.js +33 -0
  393. package/dist/react-native/common/httpService.js.map +1 -0
  394. package/dist/react-native/common/logger.d.ts +3 -0
  395. package/dist/react-native/common/logger.d.ts.map +1 -0
  396. package/dist/react-native/common/logger.js +6 -0
  397. package/dist/react-native/common/logger.js.map +1 -0
  398. package/dist/react-native/common/messages.d.ts +35 -0
  399. package/dist/react-native/common/messages.d.ts.map +1 -0
  400. package/dist/react-native/common/messages.js +37 -0
  401. package/dist/react-native/common/messages.js.map +1 -0
  402. package/dist/react-native/common/multimap.d.ts +16 -0
  403. package/dist/react-native/common/multimap.d.ts.map +1 -0
  404. package/dist/react-native/common/multimap.js +60 -0
  405. package/dist/react-native/common/multimap.js.map +1 -0
  406. package/dist/react-native/common/playwrightServiceConfig.d.ts +13 -0
  407. package/dist/react-native/common/playwrightServiceConfig.d.ts.map +1 -0
  408. package/dist/react-native/common/playwrightServiceConfig.js +45 -0
  409. package/dist/react-native/common/playwrightServiceConfig.js.map +1 -0
  410. package/dist/react-native/common/types.d.ts +226 -0
  411. package/dist/react-native/common/types.d.ts.map +1 -0
  412. package/dist/react-native/common/types.js +4 -0
  413. package/dist/react-native/common/types.js.map +1 -0
  414. package/dist/react-native/core/global/playwright-service-global-setup.d.ts +4 -0
  415. package/dist/react-native/core/global/playwright-service-global-setup.d.ts.map +1 -0
  416. package/dist/react-native/core/global/playwright-service-global-setup.js +19 -0
  417. package/dist/react-native/core/global/playwright-service-global-setup.js.map +1 -0
  418. package/dist/react-native/core/global/playwright-service-global-teardown.d.ts +4 -0
  419. package/dist/react-native/core/global/playwright-service-global-teardown.d.ts.map +1 -0
  420. package/dist/react-native/core/global/playwright-service-global-teardown.js +19 -0
  421. package/dist/react-native/core/global/playwright-service-global-teardown.js.map +1 -0
  422. package/dist/react-native/core/playwrightService.d.ts +64 -0
  423. package/dist/react-native/core/playwrightService.d.ts.map +1 -0
  424. package/dist/react-native/core/playwrightService.js +190 -0
  425. package/dist/react-native/core/playwrightService.js.map +1 -0
  426. package/dist/react-native/core/playwrightServiceEntra.d.ts +16 -0
  427. package/dist/react-native/core/playwrightServiceEntra.d.ts.map +1 -0
  428. package/dist/react-native/core/playwrightServiceEntra.js +49 -0
  429. package/dist/react-native/core/playwrightServiceEntra.js.map +1 -0
  430. package/dist/react-native/core/playwrightServiceUtils.d.ts +3 -0
  431. package/dist/react-native/core/playwrightServiceUtils.d.ts.map +1 -0
  432. package/dist/react-native/core/playwrightServiceUtils.js +11 -0
  433. package/dist/react-native/core/playwrightServiceUtils.js.map +1 -0
  434. package/dist/react-native/index.d.ts +10 -0
  435. package/dist/react-native/index.d.ts.map +1 -0
  436. package/dist/react-native/index.js +11 -0
  437. package/dist/react-native/index.js.map +1 -0
  438. package/dist/react-native/model/entraTokenDetails.d.ts +5 -0
  439. package/dist/react-native/model/entraTokenDetails.d.ts.map +1 -0
  440. package/dist/react-native/model/entraTokenDetails.js +5 -0
  441. package/dist/react-native/model/entraTokenDetails.js.map +1 -0
  442. package/dist/react-native/model/mptTokenDetails.d.ts +11 -0
  443. package/dist/react-native/model/mptTokenDetails.d.ts.map +1 -0
  444. package/dist/react-native/model/mptTokenDetails.js +10 -0
  445. package/dist/react-native/model/mptTokenDetails.js.map +1 -0
  446. package/dist/react-native/model/shard.d.ts +41 -0
  447. package/dist/react-native/model/shard.d.ts.map +1 -0
  448. package/dist/react-native/model/shard.js +19 -0
  449. package/dist/react-native/model/shard.js.map +1 -0
  450. package/dist/react-native/model/storageUri.d.ts +14 -0
  451. package/dist/react-native/model/storageUri.d.ts.map +1 -0
  452. package/dist/react-native/model/storageUri.js +18 -0
  453. package/dist/react-native/model/storageUri.js.map +1 -0
  454. package/dist/react-native/model/testResult.d.ts +40 -0
  455. package/dist/react-native/model/testResult.d.ts.map +1 -0
  456. package/dist/react-native/model/testResult.js +5 -0
  457. package/dist/react-native/model/testResult.js.map +1 -0
  458. package/dist/react-native/model/testRun.d.ts +36 -0
  459. package/dist/react-native/model/testRun.d.ts.map +1 -0
  460. package/dist/react-native/model/testRun.js +8 -0
  461. package/dist/react-native/model/testRun.js.map +1 -0
  462. package/dist/react-native/package.json +3 -0
  463. package/dist/react-native/reporter/index.d.ts +10 -0
  464. package/dist/react-native/reporter/index.d.ts.map +1 -0
  465. package/dist/react-native/reporter/index.js +12 -0
  466. package/dist/react-native/reporter/index.js.map +1 -0
  467. package/dist/react-native/reporter/mptReporter.d.ts +100 -0
  468. package/dist/react-native/reporter/mptReporter.d.ts.map +1 -0
  469. package/dist/react-native/reporter/mptReporter.js +373 -0
  470. package/dist/react-native/reporter/mptReporter.js.map +1 -0
  471. package/dist/react-native/utils/cIInfoProvider.d.ts +25 -0
  472. package/dist/react-native/utils/cIInfoProvider.d.ts.map +1 -0
  473. package/dist/react-native/utils/cIInfoProvider.js +101 -0
  474. package/dist/react-native/utils/cIInfoProvider.js.map +1 -0
  475. package/dist/react-native/utils/getPlaywrightVersion.d.ts +2 -0
  476. package/dist/react-native/utils/getPlaywrightVersion.d.ts.map +1 -0
  477. package/dist/react-native/utils/getPlaywrightVersion.js +19 -0
  478. package/dist/react-native/utils/getPlaywrightVersion.js.map +1 -0
  479. package/dist/react-native/utils/packageManager.d.ts +15 -0
  480. package/dist/react-native/utils/packageManager.d.ts.map +1 -0
  481. package/dist/react-native/utils/packageManager.js +47 -0
  482. package/dist/react-native/utils/packageManager.js.map +1 -0
  483. package/dist/react-native/utils/parseJwt.d.ts +4 -0
  484. package/dist/react-native/utils/parseJwt.d.ts.map +1 -0
  485. package/dist/react-native/utils/parseJwt.js +16 -0
  486. package/dist/react-native/utils/parseJwt.js.map +1 -0
  487. package/dist/react-native/utils/reporterUtils.d.ts +60 -0
  488. package/dist/react-native/utils/reporterUtils.d.ts.map +1 -0
  489. package/dist/react-native/utils/reporterUtils.js +585 -0
  490. package/dist/react-native/utils/reporterUtils.js.map +1 -0
  491. package/dist/react-native/utils/serviceClient.d.ts +25 -0
  492. package/dist/react-native/utils/serviceClient.d.ts.map +1 -0
  493. package/dist/react-native/utils/serviceClient.js +103 -0
  494. package/dist/react-native/utils/serviceClient.js.map +1 -0
  495. package/dist/react-native/utils/storageClient.d.ts +6 -0
  496. package/dist/react-native/utils/storageClient.d.ts.map +1 -0
  497. package/dist/react-native/utils/storageClient.js +37 -0
  498. package/dist/react-native/utils/storageClient.js.map +1 -0
  499. package/dist/react-native/utils/utils.d.ts +28 -0
  500. package/dist/react-native/utils/utils.d.ts.map +1 -0
  501. package/dist/react-native/utils/utils.js +151 -0
  502. package/dist/react-native/utils/utils.js.map +1 -0
  503. package/package.json +73 -28
  504. package/CHANGELOG.md +0 -88
  505. package/dist/common/constants.d.ts.map +0 -1
  506. package/dist/common/constants.js.map +0 -1
  507. package/dist/common/customerConfig.d.ts.map +0 -1
  508. package/dist/common/entraIdAccessToken.d.ts.map +0 -1
  509. package/dist/common/entraIdAccessToken.js.map +0 -1
  510. package/dist/common/environmentVariables.d.ts.map +0 -1
  511. package/dist/common/environmentVariables.js.map +0 -1
  512. package/dist/common/executor.d.ts.map +0 -1
  513. package/dist/common/executor.js.map +0 -1
  514. package/dist/common/httpService.d.ts.map +0 -1
  515. package/dist/common/httpService.js.map +0 -1
  516. package/dist/common/logger.d.ts.map +0 -1
  517. package/dist/common/logger.js.map +0 -1
  518. package/dist/common/messages.d.ts.map +0 -1
  519. package/dist/common/messages.js.map +0 -1
  520. package/dist/common/multimap.d.ts.map +0 -1
  521. package/dist/common/multimap.js.map +0 -1
  522. package/dist/common/playwrightServiceConfig.d.ts.map +0 -1
  523. package/dist/common/playwrightServiceConfig.js +0 -48
  524. package/dist/common/playwrightServiceConfig.js.map +0 -1
  525. package/dist/common/types.d.ts.map +0 -1
  526. package/dist/common/types.js.map +0 -1
  527. package/dist/core/global/playwright-service-global-setup.d.ts.map +0 -1
  528. package/dist/core/global/playwright-service-global-setup.js +0 -22
  529. package/dist/core/global/playwright-service-global-setup.js.map +0 -1
  530. package/dist/core/global/playwright-service-global-teardown.d.ts.map +0 -1
  531. package/dist/core/global/playwright-service-global-teardown.js +0 -22
  532. package/dist/core/global/playwright-service-global-teardown.js.map +0 -1
  533. package/dist/core/playwrightService.d.ts.map +0 -1
  534. package/dist/core/playwrightService.js.map +0 -1
  535. package/dist/core/playwrightServiceEntra.d.ts.map +0 -1
  536. package/dist/core/playwrightServiceEntra.js.map +0 -1
  537. package/dist/index.d.ts.map +0 -1
  538. package/dist/index.js.map +0 -1
  539. package/dist/model/entraTokenDetails.d.ts.map +0 -1
  540. package/dist/model/entraTokenDetails.js.map +0 -1
  541. package/dist/model/mptTokenDetails.d.ts.map +0 -1
  542. package/dist/model/mptTokenDetails.js.map +0 -1
  543. package/dist/model/shard.d.ts.map +0 -1
  544. package/dist/model/shard.js.map +0 -1
  545. package/dist/model/storageUri.d.ts.map +0 -1
  546. package/dist/model/storageUri.js.map +0 -1
  547. package/dist/model/testResult.d.ts.map +0 -1
  548. package/dist/model/testResult.js.map +0 -1
  549. package/dist/model/testRun.d.ts.map +0 -1
  550. package/dist/model/testRun.js.map +0 -1
  551. package/dist/reporter/index.d.ts.map +0 -1
  552. package/dist/reporter/index.js.map +0 -1
  553. package/dist/reporter/mptReporter.d.ts.map +0 -1
  554. package/dist/reporter/mptReporter.js.map +0 -1
  555. package/dist/utils/cIInfoProvider.d.ts.map +0 -1
  556. package/dist/utils/cIInfoProvider.js.map +0 -1
  557. package/dist/utils/packageManager.d.ts.map +0 -1
  558. package/dist/utils/packageManager.js.map +0 -1
  559. package/dist/utils/reporterUtils.d.ts.map +0 -1
  560. package/dist/utils/reporterUtils.js.map +0 -1
  561. package/dist/utils/serviceClient.d.ts.map +0 -1
  562. package/dist/utils/serviceClient.js.map +0 -1
  563. package/dist/utils/storageClient.d.ts.map +0 -1
  564. package/dist/utils/storageClient.js.map +0 -1
  565. package/dist/utils/utils.d.ts.map +0 -1
  566. package/dist/utils/utils.js.map +0 -1
  567. /package/dist/{common → browser/common}/customerConfig.d.ts +0 -0
  568. /package/dist/{common → browser/common}/environmentVariables.d.ts +0 -0
  569. /package/dist/{common → browser/common}/executor.d.ts +0 -0
  570. /package/dist/{common → browser/common}/httpService.d.ts +0 -0
  571. /package/dist/{common → browser/common}/logger.d.ts +0 -0
  572. /package/dist/{common → browser/common}/messages.d.ts +0 -0
  573. /package/dist/{common → browser/common}/multimap.d.ts +0 -0
  574. /package/dist/{core → browser/core}/global/playwright-service-global-setup.d.ts +0 -0
  575. /package/dist/{core → browser/core}/global/playwright-service-global-teardown.d.ts +0 -0
  576. /package/dist/{core → browser/core}/playwrightServiceEntra.d.ts +0 -0
  577. /package/dist/{model → browser/model}/entraTokenDetails.d.ts +0 -0
  578. /package/dist/{model → browser/model}/mptTokenDetails.d.ts +0 -0
  579. /package/dist/{model → browser/model}/shard.d.ts +0 -0
  580. /package/dist/{model → browser/model}/storageUri.d.ts +0 -0
  581. /package/dist/{utils → browser/utils}/cIInfoProvider.d.ts +0 -0
  582. /package/dist/{utils → browser/utils}/storageClient.d.ts +0 -0
  583. /package/dist/{common → commonjs/common}/constants.js +0 -0
  584. /package/dist/{common → commonjs/common}/customerConfig.js +0 -0
  585. /package/dist/{common → commonjs/common}/logger.js +0 -0
  586. /package/dist/{common → commonjs/common}/messages.js +0 -0
  587. /package/dist/{common → commonjs/common}/multimap.js +0 -0
  588. /package/dist/{common → commonjs/common}/types.js +0 -0
  589. /package/dist/{model → commonjs/model}/entraTokenDetails.js +0 -0
  590. /package/dist/{model → commonjs/model}/mptTokenDetails.js +0 -0
  591. /package/dist/{model → commonjs/model}/shard.js +0 -0
  592. /package/dist/{model → commonjs/model}/storageUri.js +0 -0
  593. /package/dist/{model → commonjs/model}/testResult.js +0 -0
  594. /package/dist/{model → commonjs/model}/testRun.js +0 -0
  595. /package/dist/{tsdoc-metadata.json → commonjs/tsdoc-metadata.json} +0 -0
  596. /package/dist/{utils → commonjs/utils}/cIInfoProvider.js +0 -0
  597. /package/dist/{utils → commonjs/utils}/packageManager.js +0 -0
@@ -0,0 +1,585 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ import { exec } from "node:child_process";
4
+ import { reporterLogger } from "../common/logger.js";
5
+ import { createHash, randomUUID } from "node:crypto";
6
+ import fs from "node:fs";
7
+ import path from "node:path";
8
+ import { Constants } from "../common/constants.js";
9
+ import { TokenType } from "../model/mptTokenDetails.js";
10
+ import { Shard, TestRunStatus } from "../model/shard.js";
11
+ import { TestResult as MPTTestResult } from "../model/testResult.js";
12
+ import { TestRun } from "../model/testRun.js";
13
+ import { CI_PROVIDERS } from "./cIInfoProvider.js";
14
+ import { CIInfoProvider } from "./cIInfoProvider.js";
15
+ import { getPackageVersion } from "./utils.js";
16
+ class ReporterUtils {
17
+ // eslint-disable-next-line @azure/azure-sdk/ts-use-interface-parameters
18
+ constructor(envVariables, config, _) {
19
+ this.config = config;
20
+ this.envVariables = envVariables;
21
+ this.startTime = Date.now();
22
+ this.totalTests = 0;
23
+ this.failedTests = 0;
24
+ this.skippedTests = 0;
25
+ this.passedTests = 0;
26
+ this.flakyTests = 0;
27
+ }
28
+ async getTestRunObject(ciInfo) {
29
+ const testRun = new TestRun();
30
+ const runName = this.envVariables.runName || (await this.getRunName(ciInfo));
31
+ testRun.testRunId = this.envVariables.runId;
32
+ testRun.displayName = ReporterUtils.isNullOrEmpty(runName) ? this.envVariables.runId : runName;
33
+ testRun.creatorName = this.envVariables.userName;
34
+ testRun.creatorId = this.envVariables.userId;
35
+ testRun.startTime = ReporterUtils.timestampToRFC3339(this.startTime);
36
+ testRun.ciConfig = {
37
+ ciProviderName: ciInfo.provider,
38
+ branch: ciInfo.branch,
39
+ author: ciInfo.author,
40
+ commitId: ciInfo.commitId,
41
+ revisionUrl: ciInfo.revisionUrl,
42
+ };
43
+ testRun.testRunConfig = this.getTestRunConfig();
44
+ testRun.cloudReportingEnabled = "true";
45
+ return testRun;
46
+ }
47
+ getTestRunShardStartObject() {
48
+ const shard = new Shard();
49
+ if (this.config.shard !== null && this.config.shard !== undefined) {
50
+ this.envVariables.shardId = this.config.shard.current.toString();
51
+ }
52
+ else {
53
+ this.envVariables.shardId = "1";
54
+ }
55
+ shard.shardId = this.envVariables.shardId;
56
+ shard.summary = {
57
+ startTime: ReporterUtils.timestampToRFC3339(this.startTime),
58
+ };
59
+ shard.uploadCompleted = false;
60
+ return shard;
61
+ }
62
+ getTestRunShardEndObject(result,
63
+ // eslint-disable-next-line @azure/azure-sdk/ts-use-interface-parameters
64
+ shard, errorMessages, attachmentMetadata, workers) {
65
+ var _a;
66
+ shard.shardId = (_a = this.envVariables.shardId) !== null && _a !== void 0 ? _a : "1";
67
+ shard.summary.totalTime = result.duration;
68
+ shard.summary.endTime = ReporterUtils.timestampToRFC3339(Date.now());
69
+ shard.summary.status = TestRunStatus.CLIENT_COMPLETE;
70
+ shard.summary.errorMessages = errorMessages;
71
+ shard.summary.uploadMetadata = attachmentMetadata;
72
+ shard.uploadCompleted = true;
73
+ shard.workers = workers;
74
+ return shard;
75
+ }
76
+ getOSName(result, data) {
77
+ var _a, _b;
78
+ try {
79
+ for (const attachment of result.attachments) {
80
+ if (attachment.name === data) {
81
+ const match = (_a = attachment === null || attachment === void 0 ? void 0 : attachment.contentType) === null || _a === void 0 ? void 0 : _a.match(/charset=(.*)/);
82
+ const charset = match && match.length > 1 ? match[1] : "utf-8";
83
+ return ((_b = attachment.body) === null || _b === void 0 ? void 0 : _b.toString(charset || "utf-8").toUpperCase()) || "";
84
+ }
85
+ }
86
+ }
87
+ catch (error) {
88
+ reporterLogger.error(`Error in fetching OS - ${error}`);
89
+ }
90
+ return "";
91
+ }
92
+ getTestResultObject(test, result, jobName) {
93
+ var _a, _b, _c, _d;
94
+ switch (test.outcome()) {
95
+ case "skipped":
96
+ this.skippedTests++;
97
+ this.totalTests++;
98
+ break;
99
+ case "expected":
100
+ this.passedTests++;
101
+ this.totalTests++;
102
+ break;
103
+ case "unexpected":
104
+ if (result.retry === test.retries) {
105
+ this.failedTests++;
106
+ this.totalTests++;
107
+ }
108
+ break;
109
+ case "flaky":
110
+ this.totalTests++;
111
+ this.flakyTests++;
112
+ break;
113
+ default:
114
+ break;
115
+ }
116
+ const testResult = new MPTTestResult();
117
+ testResult.runId = this.envVariables.runId;
118
+ testResult.shardId = this.envVariables.runId + "_" + this.envVariables.shardId;
119
+ testResult.accountId = this.envVariables.accountId;
120
+ testResult.suiteId = ReporterUtils.calculateSha1(`${test.parent.title}-${test.location.file}`);
121
+ testResult.testId = testResult.suiteId.concat(`-${ReporterUtils.calculateSha1(test.title)}`);
122
+ testResult.testCombinationId = test.id;
123
+ testResult.testExecutionId = randomUUID();
124
+ testResult.testTitle = test.title;
125
+ testResult.suiteTitle = this.extractRootParentTitle(test.parent);
126
+ testResult.fileName = test.location.file;
127
+ testResult.status = this.getTestStatus(test, result);
128
+ testResult.lineNumber = test.location.line;
129
+ testResult.retry = result.retry ? result.retry : 0;
130
+ let browserName = (_b = (_a = test.parent.project()) === null || _a === void 0 ? void 0 : _a.use.browserName) === null || _b === void 0 ? void 0 : _b.toLowerCase();
131
+ if (!browserName) {
132
+ browserName = (_d = (_c = test.parent.project()) === null || _c === void 0 ? void 0 : _c.use.defaultBrowserType) === null || _d === void 0 ? void 0 : _d.toLowerCase();
133
+ }
134
+ testResult.webTestConfig = {
135
+ jobName: jobName,
136
+ projectName: test.parent.project().name,
137
+ browserType: browserName ? browserName.toUpperCase() : "",
138
+ os: this.getOSName(result, Constants.OS),
139
+ };
140
+ testResult.annotations = this.extractTestAnnotations(test.annotations);
141
+ testResult.tags = this.extractTestTags(test);
142
+ testResult.resultsSummary = {
143
+ status: result.status.toUpperCase(),
144
+ duration: result.duration,
145
+ startTime: result.startTime.toISOString().replace(/\.\d+Z$/, "Z"),
146
+ attachmentsMetadata: this.getAttachmentStatus(result),
147
+ };
148
+ testResult.artifactsPath = result.attachments
149
+ .filter((attachment) => (attachment === null || attachment === void 0 ? void 0 : attachment.path) !== null && (attachment === null || attachment === void 0 ? void 0 : attachment.path) !== undefined) // Filter attachments with defined and non-null path property
150
+ .map((attachment) => `${testResult.testExecutionId}/${ReporterUtils.getFileRelativePath(attachment.path)}`);
151
+ return testResult;
152
+ }
153
+ generateMarkdownSummary(testRunUrl) {
154
+ try {
155
+ if (CIInfoProvider.getCIProvider() === CI_PROVIDERS.GITHUB) {
156
+ const markdownContent = `
157
+ #### Microsoft Playwright Testing run summary
158
+
159
+ #### Results:
160
+
161
+ ![pass](https://img.shields.io/badge/status-passed-brightgreen) **Passed:** ${this.passedTests}
162
+
163
+ ![fail](https://img.shields.io/badge/status-failed-red) **Failed:** ${this.failedTests}
164
+
165
+ ![flaky](https://img.shields.io/badge/status-flaky-yellow) **Flaky:** ${this.flakyTests}
166
+
167
+ ![skipped](https://img.shields.io/badge/status-skipped-lightgrey) **Skipped:** ${this.skippedTests}
168
+
169
+ #### For more details, visit the [service dashboard](${testRunUrl}).
170
+ `;
171
+ fs.writeFileSync(process.env["GITHUB_STEP_SUMMARY"], markdownContent);
172
+ }
173
+ }
174
+ catch (err) {
175
+ reporterLogger.error(`\nCould not generate markdown summary - ${err}`);
176
+ }
177
+ }
178
+ getRawTestResultObject(result) {
179
+ const rawTestResult = {
180
+ steps: this.dedupeSteps(result.steps).map((step) => this.serializeTestStep(step)),
181
+ errors: this.getTestError(result),
182
+ stdErr: result.stderr ? JSON.stringify(result.stderr, null, 2) : "",
183
+ stdOut: result.stdout ? JSON.stringify(result.stdout, null, 2) : "",
184
+ };
185
+ return rawTestResult;
186
+ }
187
+ static getRunId(cIInfo) {
188
+ if (cIInfo === null || cIInfo.provider === CI_PROVIDERS.DEFAULT) {
189
+ return randomUUID();
190
+ }
191
+ const concatString = `${cIInfo.provider}-${cIInfo.repo}-${cIInfo.runId}-${cIInfo.runAttempt}`;
192
+ const runId = ReporterUtils.calculateSha1(concatString);
193
+ return runId;
194
+ }
195
+ static calculateSha1(buffer) {
196
+ const hash = createHash("sha1");
197
+ hash.update(buffer);
198
+ return hash.digest("hex");
199
+ }
200
+ /*
201
+ public static getTokenDetails(accessToken: string) {
202
+ let tokenDetails = new MPTTokenDetails();
203
+ try {
204
+ const token = accessToken.split('.')[1];
205
+ const _token = Buffer.from(token, 'base64');
206
+ tokenDetails = JSON.parse(_token.toString());
207
+ } catch (err) {
208
+ throw err;
209
+ }
210
+ return tokenDetails;
211
+ }
212
+ */
213
+ static getTokenDetails(accessToken, tokenType) {
214
+ const token = accessToken.split(".")[1];
215
+ const _token = Buffer.from(token, "base64");
216
+ const tokenDetails = JSON.parse(_token.toString());
217
+ switch (tokenType) {
218
+ case TokenType.MPT:
219
+ return tokenDetails;
220
+ case TokenType.ENTRA:
221
+ return tokenDetails;
222
+ default:
223
+ throw new Error("Unsupported token type");
224
+ }
225
+ }
226
+ static hasAudienceClaim(token) {
227
+ try {
228
+ // Split the token into its three parts
229
+ const parts = token.split(".");
230
+ if (parts.length !== 3) {
231
+ throw new Error("Invalid token format");
232
+ }
233
+ // Base64 decode the payload
234
+ const payload = parts[1];
235
+ const decodedPayload = Buffer.from(payload, "base64");
236
+ // Parse the decoded payload as JSON
237
+ const payloadObject = JSON.parse(decodedPayload.toString());
238
+ // Check if the payload has an 'aud' claim
239
+ return "aud" in payloadObject;
240
+ }
241
+ catch (error) {
242
+ return false;
243
+ }
244
+ }
245
+ static timestampToRFC3339(timestamp) {
246
+ const date = new Date(timestamp);
247
+ const dateString = date.toISOString().replace(/\.\d+Z$/, "Z");
248
+ return dateString;
249
+ }
250
+ static getFileRelativePath(filePath) {
251
+ if (filePath) {
252
+ let parts = filePath.split("/");
253
+ if (parts.length > 1) {
254
+ return parts[parts.length - 1];
255
+ }
256
+ parts = filePath.split("\\");
257
+ if (parts.length > 1) {
258
+ return parts[parts.length - 1];
259
+ }
260
+ }
261
+ return filePath;
262
+ }
263
+ // eslint-disable-next-line @azure/azure-sdk/ts-use-interface-parameters
264
+ static isTimeGreaterThanCurrentPlus10Minutes(sasUri) {
265
+ try {
266
+ const url = new URL(sasUri.uri);
267
+ const params = new URLSearchParams(url.search);
268
+ const expiryTime = params.get("se"); // 'se' is the query parameter for the expiry time
269
+ if (expiryTime) {
270
+ const timestampFromIsoString = new Date(expiryTime).getTime();
271
+ const currentTimestampPlus10Minutes = Date.now() + 10 * 60 * 1000;
272
+ const isSasValidityGreaterThanCurrentTimePlus10Minutes = timestampFromIsoString > currentTimestampPlus10Minutes;
273
+ if (!isSasValidityGreaterThanCurrentTimePlus10Minutes) {
274
+ reporterLogger.info(`Sas rotation required because close to expiry, SasUriValidTillTime: ${timestampFromIsoString}, CurrentTime: ${currentTimestampPlus10Minutes}`);
275
+ }
276
+ return isSasValidityGreaterThanCurrentTimePlus10Minutes;
277
+ }
278
+ reporterLogger.error(`Sas rotation required because expiry param not found.`);
279
+ return false;
280
+ }
281
+ catch (error) {
282
+ reporterLogger.error(`Sas rotation required because of ${error}.`);
283
+ return false;
284
+ }
285
+ }
286
+ static getFileSize(attachmentPath) {
287
+ try {
288
+ const stats = fs.statSync(attachmentPath);
289
+ return stats.size;
290
+ }
291
+ catch (error) {
292
+ return 0;
293
+ }
294
+ }
295
+ static getBufferSize(attachmentBody) {
296
+ try {
297
+ const fileSizeInBytes = attachmentBody.length;
298
+ return fileSizeInBytes;
299
+ }
300
+ catch (error) {
301
+ return 0;
302
+ }
303
+ }
304
+ redactAccessToken(info) {
305
+ if (!info || ReporterUtils.isNullOrEmpty(this.envVariables.accessToken)) {
306
+ return "";
307
+ }
308
+ const accessTokenRegex = new RegExp(this.envVariables.accessToken, "g");
309
+ return info.replace(accessTokenRegex, Constants.DEFAULT_REDACTED_MESSAGE);
310
+ }
311
+ static getRegionFromAccountID(accountId) {
312
+ if (accountId.includes("_")) {
313
+ return accountId.split("_")[0];
314
+ }
315
+ else {
316
+ return;
317
+ } // Handling for older workspaces without region in id
318
+ }
319
+ progressBar(current, total) {
320
+ const width = 40;
321
+ const percent = current / total;
322
+ const completed = Math.round(width * percent);
323
+ const remaining = width - completed;
324
+ if (current % Math.round(total / 5) === 0 || current === total) {
325
+ process.stdout.write("\r");
326
+ process.stdout.write(`[${"=".repeat(completed)}${" ".repeat(remaining)}] ${Math.round(percent * 100)}%`);
327
+ }
328
+ }
329
+ getTestRunConfig() {
330
+ const testRunConfig = {
331
+ workers: this.getWorkers(),
332
+ pwVersion: this.config.version,
333
+ timeout: this.config.globalTimeout,
334
+ repeatEach: this.config.projects[0].repeatEach,
335
+ retries: this.config.projects[0].retries,
336
+ shards: this.config.shard ? this.config.shard : { total: 1 },
337
+ testFramework: {
338
+ name: Constants.TEST_FRAMEWORK_NAME,
339
+ version: this.config.version,
340
+ runnerName: Constants.TEST_FRAMEWORK_RUNNERNAME,
341
+ },
342
+ testType: Constants.TEST_TYPE,
343
+ testSdkLanguage: Constants.TEST_SDK_LANGUAGE,
344
+ reporterPackageVersion: getPackageVersion(),
345
+ };
346
+ return testRunConfig;
347
+ }
348
+ relativeLocation(location) {
349
+ if (!location) {
350
+ return undefined;
351
+ }
352
+ const file = this.toPosixPath(path.relative(this.config.rootDir, location.file));
353
+ return {
354
+ file,
355
+ line: location.line,
356
+ column: location.column,
357
+ };
358
+ }
359
+ extractTestTags(input) {
360
+ let tags = [];
361
+ if ("tags" in input && Array.isArray(input.tags) && input.tags.length > 0) {
362
+ tags = input.tags.map((tag) => tag.slice(1));
363
+ return tags;
364
+ }
365
+ // Check if the input string contains tags directly
366
+ const regex = /@(\w+)/g;
367
+ const matches = input.title.match(regex);
368
+ if (matches) {
369
+ tags = tags.concat(matches.map((match) => match.slice(1)));
370
+ }
371
+ // Try parsing the input string as a JavaScript object
372
+ try {
373
+ const obj = JSON.parse(`{${input}}`);
374
+ if (obj.tag && Array.isArray(obj.tag)) {
375
+ tags = tags.concat(obj.tag);
376
+ }
377
+ }
378
+ catch (error) {
379
+ // Ignore parsing errors
380
+ }
381
+ return tags;
382
+ }
383
+ extractTestAnnotations(annotations) {
384
+ const result = annotations.map((annotation) => {
385
+ if (annotation.type && annotation.description) {
386
+ return `${annotation.type}: ${annotation.description}`;
387
+ }
388
+ return annotation.type;
389
+ });
390
+ return result;
391
+ }
392
+ toPosixPath(aPath) {
393
+ return aPath.split(path.sep).join(path.posix.sep);
394
+ }
395
+ getAttachmentStatus(testResult) {
396
+ let attachmentStatus = "";
397
+ for (const attachment of testResult.attachments) {
398
+ if (attachment.contentType.includes("image")) {
399
+ if (attachmentStatus !== "") {
400
+ attachmentStatus += ",";
401
+ }
402
+ attachmentStatus += "image";
403
+ }
404
+ else if (attachment.contentType.includes("video")) {
405
+ if (attachmentStatus !== "") {
406
+ attachmentStatus += ",";
407
+ }
408
+ attachmentStatus += "video";
409
+ }
410
+ else if (attachment.contentType === "application/zip") {
411
+ if (attachmentStatus !== "") {
412
+ attachmentStatus += ",";
413
+ }
414
+ attachmentStatus += "trace";
415
+ }
416
+ else if (attachment.contentType === "text/plain") {
417
+ if (attachmentStatus !== "") {
418
+ attachmentStatus += ",";
419
+ }
420
+ attachmentStatus += "txt";
421
+ }
422
+ }
423
+ return attachmentStatus;
424
+ }
425
+ dedupeSteps(steps) {
426
+ var _a, _b, _c, _d, _e, _f, _g;
427
+ const result = [];
428
+ let lastResult = undefined;
429
+ for (const step of steps) {
430
+ const canDedupe = !step.error && step.duration >= 0 && ((_a = step.location) === null || _a === void 0 ? void 0 : _a.file) && !step.steps.length;
431
+ const lastStep = lastResult === null || lastResult === void 0 ? void 0 : lastResult.step;
432
+ if (canDedupe &&
433
+ lastResult &&
434
+ lastStep &&
435
+ step.category === lastStep.category &&
436
+ step.title === lastStep.title &&
437
+ ((_b = step.location) === null || _b === void 0 ? void 0 : _b.file) === ((_c = lastStep.location) === null || _c === void 0 ? void 0 : _c.file) &&
438
+ ((_d = step.location) === null || _d === void 0 ? void 0 : _d.line) === ((_e = lastStep.location) === null || _e === void 0 ? void 0 : _e.line) &&
439
+ ((_f = step.location) === null || _f === void 0 ? void 0 : _f.column) === ((_g = lastStep.location) === null || _g === void 0 ? void 0 : _g.column)) {
440
+ ++lastResult.count;
441
+ lastResult.duration += step.duration;
442
+ continue;
443
+ }
444
+ lastResult = { step, count: 1, duration: step.duration };
445
+ result.push(lastResult);
446
+ if (!canDedupe) {
447
+ lastResult = undefined;
448
+ }
449
+ }
450
+ return result;
451
+ }
452
+ serializeTestStep(dedupedStep) {
453
+ const { step, duration, count } = dedupedStep;
454
+ const result = {
455
+ title: step.title,
456
+ category: step.category,
457
+ startTime: step.startTime.toISOString(),
458
+ duration,
459
+ error: step.error ? step.error.message : undefined,
460
+ location: this.relativeLocation(step.location),
461
+ steps: this.dedupeSteps(step.steps).map((subStep) => this.serializeTestStep(subStep)),
462
+ count: count,
463
+ };
464
+ return result;
465
+ }
466
+ getTestStatus(test, result) {
467
+ if (test.expectedStatus === result.status) {
468
+ if (result.status === "skipped") {
469
+ return "SKIPPED";
470
+ }
471
+ else {
472
+ return "PASSED";
473
+ }
474
+ }
475
+ else if (result.status === "interrupted") {
476
+ return "SKIPPED";
477
+ }
478
+ else {
479
+ return "FAILED";
480
+ }
481
+ }
482
+ extractRootParentTitle(suite) {
483
+ // Traverse through the parent properties until reaching the root parent
484
+ let currentSuite = suite;
485
+ let depthCount = 0;
486
+ let suiteTitle = currentSuite.title;
487
+ const projectName = currentSuite.project().name;
488
+ while ((currentSuite === null || currentSuite === void 0 ? void 0 : currentSuite.parent) && !ReporterUtils.isNullOrEmpty(currentSuite.parent.title)) {
489
+ if (depthCount > 10 || currentSuite.parent.title === projectName) {
490
+ break;
491
+ }
492
+ suiteTitle = suiteTitle + " > " + currentSuite.parent.title;
493
+ currentSuite = currentSuite.parent;
494
+ depthCount++;
495
+ }
496
+ return suiteTitle;
497
+ }
498
+ async getRunName(ciInfo) {
499
+ var _a;
500
+ if (ciInfo.provider === CI_PROVIDERS.GITHUB &&
501
+ process.env["GITHUB_EVENT_NAME"] === "pull_request") {
502
+ const prNumber = `${(_a = process.env["GITHUB_REF_NAME"]) === null || _a === void 0 ? void 0 : _a.split("/")[0]}`;
503
+ const prLink = `${process.env["GITHUB_REPOSITORY"]}/pull/${prNumber}`;
504
+ return `PR# ${prNumber} on Repo: ${process.env["GITHUB_REPOSITORY"]} (${prLink})`;
505
+ }
506
+ let gitCommitMessage = null;
507
+ try {
508
+ const gitVersion = await this.runCommand(Constants.GIT_VERSION_COMMAND);
509
+ if (ReporterUtils.isNullOrEmpty(gitVersion)) {
510
+ throw new Error("Git is not installed on the machine");
511
+ }
512
+ const isInsideWorkTree = await this.runCommand(Constants.GIT_REV_PARSE);
513
+ if (isInsideWorkTree !== "true") {
514
+ throw new Error("Not inside a git repository");
515
+ }
516
+ gitCommitMessage = await this.runCommand(Constants.GIT_COMMIT_MESSAGE_COMMAND);
517
+ return gitCommitMessage;
518
+ }
519
+ catch (err) {
520
+ reporterLogger.error(`\nError in getting git commit message: ${err}.`);
521
+ return "";
522
+ }
523
+ }
524
+ async runCommand(command) {
525
+ return new Promise((resolve, reject) => {
526
+ exec(command, (error, stdout, stderr) => {
527
+ if (error) {
528
+ reject(error);
529
+ return;
530
+ }
531
+ if (stderr) {
532
+ reject(new Error(stderr));
533
+ return;
534
+ }
535
+ resolve(stdout.trim());
536
+ });
537
+ });
538
+ }
539
+ static isNullOrEmpty(str) {
540
+ return !str || str.trim() === "";
541
+ }
542
+ getTestError(result) {
543
+ if (!result.errors || result.errors.length === 0)
544
+ return "";
545
+ const errorMessages = [];
546
+ result.errors.forEach((error) => {
547
+ if (error.message)
548
+ errorMessages.push({ message: error.message });
549
+ if (error.snippet && error.location) {
550
+ errorMessages.push({
551
+ message: error.snippet + "\n\n" + this.getReadableLineLocation(error.location),
552
+ });
553
+ }
554
+ else if (error.snippet)
555
+ errorMessages.push({ message: error.snippet });
556
+ });
557
+ return JSON.stringify(errorMessages, null, 2);
558
+ }
559
+ getReadableLineLocation(location) {
560
+ return `at ${location.file}:${location.line}:${location.column}`;
561
+ }
562
+ getWorkers() {
563
+ if (this.config.metadata &&
564
+ "actualWorkers" in this.config.metadata &&
565
+ typeof this.config.metadata.actualWorkers === "number") {
566
+ return this.config.metadata.actualWorkers;
567
+ }
568
+ return this.config.workers;
569
+ }
570
+ }
571
+ ReporterUtils.getReporterBackOffOptions = {
572
+ numOfAttempts: 3,
573
+ jitter: "full",
574
+ retry: (error) => {
575
+ if (error.response) {
576
+ const status = error.response.status;
577
+ if (Constants.NON_RETRYABLE_STATUS_CODES.includes(status)) {
578
+ return false;
579
+ }
580
+ }
581
+ return true;
582
+ },
583
+ };
584
+ export default ReporterUtils;
585
+ //# sourceMappingURL=reporterUtils.js.map