@serenity-js/cucumber 3.41.2 → 3.42.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 (610) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/esm/adapter/CucumberCLIAdapter.d.ts +54 -0
  3. package/esm/adapter/CucumberCLIAdapter.d.ts.map +1 -0
  4. package/esm/adapter/CucumberCLIAdapter.js +215 -0
  5. package/esm/adapter/CucumberCLIAdapter.js.map +1 -0
  6. package/esm/adapter/CucumberConfig.d.ts +255 -0
  7. package/esm/adapter/CucumberConfig.d.ts.map +1 -0
  8. package/esm/adapter/CucumberConfig.js +2 -0
  9. package/esm/adapter/CucumberConfig.js.map +1 -0
  10. package/esm/adapter/CucumberFormat.d.ts +26 -0
  11. package/esm/adapter/CucumberFormat.d.ts.map +1 -0
  12. package/esm/adapter/CucumberFormat.js +48 -0
  13. package/esm/adapter/CucumberFormat.js.map +1 -0
  14. package/esm/adapter/CucumberOptions.d.ts +29 -0
  15. package/esm/adapter/CucumberOptions.d.ts.map +1 -0
  16. package/esm/adapter/CucumberOptions.js +145 -0
  17. package/esm/adapter/CucumberOptions.js.map +1 -0
  18. package/esm/adapter/index.d.ts +5 -0
  19. package/esm/adapter/index.d.ts.map +1 -0
  20. package/esm/adapter/index.js +5 -0
  21. package/esm/adapter/index.js.map +1 -0
  22. package/esm/adapter/output/OutputDescriptor.d.ts +8 -0
  23. package/esm/adapter/output/OutputDescriptor.d.ts.map +1 -0
  24. package/esm/adapter/output/OutputDescriptor.js +2 -0
  25. package/esm/adapter/output/OutputDescriptor.js.map +1 -0
  26. package/esm/adapter/output/SerenityFormatterOutput.d.ts +8 -0
  27. package/esm/adapter/output/SerenityFormatterOutput.d.ts.map +1 -0
  28. package/esm/adapter/output/SerenityFormatterOutput.js +2 -0
  29. package/esm/adapter/output/SerenityFormatterOutput.js.map +1 -0
  30. package/esm/adapter/output/StandardOutput.d.ts +9 -0
  31. package/esm/adapter/output/StandardOutput.d.ts.map +1 -0
  32. package/esm/adapter/output/StandardOutput.js +10 -0
  33. package/esm/adapter/output/StandardOutput.js.map +1 -0
  34. package/esm/adapter/output/StandardOutputDescriptor.d.ts +9 -0
  35. package/esm/adapter/output/StandardOutputDescriptor.d.ts.map +1 -0
  36. package/esm/adapter/output/StandardOutputDescriptor.js +12 -0
  37. package/esm/adapter/output/StandardOutputDescriptor.js.map +1 -0
  38. package/esm/adapter/output/TempFileOutput.d.ts +12 -0
  39. package/esm/adapter/output/TempFileOutput.d.ts.map +1 -0
  40. package/esm/adapter/output/TempFileOutput.js +14 -0
  41. package/esm/adapter/output/TempFileOutput.js.map +1 -0
  42. package/esm/adapter/output/TempFileOutputDescriptor.d.ts +17 -0
  43. package/esm/adapter/output/TempFileOutputDescriptor.d.ts.map +1 -0
  44. package/esm/adapter/output/TempFileOutputDescriptor.js +24 -0
  45. package/esm/adapter/output/TempFileOutputDescriptor.js.map +1 -0
  46. package/esm/adapter/output/index.d.ts +5 -0
  47. package/esm/adapter/output/index.d.ts.map +1 -0
  48. package/esm/adapter/output/index.js +5 -0
  49. package/esm/adapter/output/index.js.map +1 -0
  50. package/esm/errors/AmbiguousStepDefinitionError.d.ts +9 -0
  51. package/esm/errors/AmbiguousStepDefinitionError.d.ts.map +1 -0
  52. package/esm/errors/AmbiguousStepDefinitionError.js +11 -0
  53. package/esm/errors/AmbiguousStepDefinitionError.js.map +1 -0
  54. package/esm/errors/index.d.ts +2 -0
  55. package/esm/errors/index.d.ts.map +1 -0
  56. package/esm/errors/index.js +2 -0
  57. package/esm/errors/index.js.map +1 -0
  58. package/esm/index.d.ts +7 -0
  59. package/esm/index.d.ts.map +1 -0
  60. package/esm/index.js +19 -0
  61. package/esm/index.js.map +1 -0
  62. package/esm/listeners/legacy/CucumberEventProtocolAdapter.d.ts +18 -0
  63. package/esm/listeners/legacy/CucumberEventProtocolAdapter.d.ts.map +1 -0
  64. package/esm/listeners/legacy/CucumberEventProtocolAdapter.js +127 -0
  65. package/esm/listeners/legacy/CucumberEventProtocolAdapter.js.map +1 -0
  66. package/esm/listeners/legacy/CucumberFormatterOptions.d.ts +15 -0
  67. package/esm/listeners/legacy/CucumberFormatterOptions.d.ts.map +1 -0
  68. package/esm/listeners/legacy/CucumberFormatterOptions.js +2 -0
  69. package/esm/listeners/legacy/CucumberFormatterOptions.js.map +1 -0
  70. package/esm/listeners/legacy/Dependencies.d.ts +17 -0
  71. package/esm/listeners/legacy/Dependencies.d.ts.map +1 -0
  72. package/esm/listeners/legacy/Dependencies.js +2 -0
  73. package/esm/listeners/legacy/Dependencies.js.map +1 -0
  74. package/esm/listeners/legacy/cucumber-0.d.ts +3 -0
  75. package/esm/listeners/legacy/cucumber-0.d.ts.map +1 -0
  76. package/esm/listeners/legacy/cucumber-0.js +100 -0
  77. package/esm/listeners/legacy/cucumber-0.js.map +1 -0
  78. package/esm/listeners/legacy/cucumber-1.d.ts +2 -0
  79. package/esm/listeners/legacy/cucumber-1.d.ts.map +1 -0
  80. package/esm/listeners/legacy/cucumber-1.js +2 -0
  81. package/esm/listeners/legacy/cucumber-1.js.map +1 -0
  82. package/esm/listeners/legacy/cucumber-2.d.ts +3 -0
  83. package/esm/listeners/legacy/cucumber-2.d.ts.map +1 -0
  84. package/esm/listeners/legacy/cucumber-2.js +8 -0
  85. package/esm/listeners/legacy/cucumber-2.js.map +1 -0
  86. package/esm/listeners/legacy/cucumber-3.d.ts +13 -0
  87. package/esm/listeners/legacy/cucumber-3.d.ts.map +1 -0
  88. package/esm/listeners/legacy/cucumber-3.js +27 -0
  89. package/esm/listeners/legacy/cucumber-3.js.map +1 -0
  90. package/esm/listeners/legacy/cucumber-4.d.ts +13 -0
  91. package/esm/listeners/legacy/cucumber-4.d.ts.map +1 -0
  92. package/esm/listeners/legacy/cucumber-4.js +26 -0
  93. package/esm/listeners/legacy/cucumber-4.js.map +1 -0
  94. package/esm/listeners/legacy/cucumber-5.d.ts +2 -0
  95. package/esm/listeners/legacy/cucumber-5.d.ts.map +1 -0
  96. package/esm/listeners/legacy/cucumber-5.js +2 -0
  97. package/esm/listeners/legacy/cucumber-5.js.map +1 -0
  98. package/esm/listeners/legacy/cucumber-6.d.ts +2 -0
  99. package/esm/listeners/legacy/cucumber-6.d.ts.map +1 -0
  100. package/esm/listeners/legacy/cucumber-6.js +2 -0
  101. package/esm/listeners/legacy/cucumber-6.js.map +1 -0
  102. package/esm/listeners/legacy/gherkin/GherkinParserAdapter.d.ts +31 -0
  103. package/esm/listeners/legacy/gherkin/GherkinParserAdapter.d.ts.map +1 -0
  104. package/esm/listeners/legacy/gherkin/GherkinParserAdapter.js +164 -0
  105. package/esm/listeners/legacy/gherkin/GherkinParserAdapter.js.map +1 -0
  106. package/esm/listeners/legacy/gherkin/constructables.d.ts +2 -0
  107. package/esm/listeners/legacy/gherkin/constructables.d.ts.map +1 -0
  108. package/esm/listeners/legacy/gherkin/constructables.js +2 -0
  109. package/esm/listeners/legacy/gherkin/constructables.js.map +1 -0
  110. package/esm/listeners/legacy/gherkin/feature-files/Cache.d.ts +17 -0
  111. package/esm/listeners/legacy/gherkin/feature-files/Cache.d.ts.map +1 -0
  112. package/esm/listeners/legacy/gherkin/feature-files/Cache.js +32 -0
  113. package/esm/listeners/legacy/gherkin/feature-files/Cache.js.map +1 -0
  114. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileLoader.d.ts +16 -0
  115. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileLoader.d.ts.map +1 -0
  116. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileLoader.js +26 -0
  117. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileLoader.js.map +1 -0
  118. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileMap.d.ts +19 -0
  119. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileMap.d.ts.map +1 -0
  120. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileMap.js +44 -0
  121. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileMap.js.map +1 -0
  122. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileMapper.d.ts +14 -0
  123. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileMapper.d.ts.map +1 -0
  124. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileMapper.js +97 -0
  125. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileMapper.js.map +1 -0
  126. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileParser.d.ts +13 -0
  127. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileParser.d.ts.map +1 -0
  128. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileParser.js +27 -0
  129. package/esm/listeners/legacy/gherkin/feature-files/FeatureFileParser.js.map +1 -0
  130. package/esm/listeners/legacy/gherkin/feature-files/errors/ItemNotFoundError.d.ts +8 -0
  131. package/esm/listeners/legacy/gherkin/feature-files/errors/ItemNotFoundError.d.ts.map +1 -0
  132. package/esm/listeners/legacy/gherkin/feature-files/errors/ItemNotFoundError.js +10 -0
  133. package/esm/listeners/legacy/gherkin/feature-files/errors/ItemNotFoundError.js.map +1 -0
  134. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToParseFeatureFileError.d.ts +8 -0
  135. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToParseFeatureFileError.d.ts.map +1 -0
  136. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToParseFeatureFileError.js +10 -0
  137. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToParseFeatureFileError.js.map +1 -0
  138. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToReadFeatureFileError.d.ts +8 -0
  139. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToReadFeatureFileError.d.ts.map +1 -0
  140. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToReadFeatureFileError.js +10 -0
  141. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToReadFeatureFileError.js.map +1 -0
  142. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToRetrieveFeatureFileMap.d.ts +8 -0
  143. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToRetrieveFeatureFileMap.d.ts.map +1 -0
  144. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToRetrieveFeatureFileMap.js +10 -0
  145. package/esm/listeners/legacy/gherkin/feature-files/errors/UnableToRetrieveFeatureFileMap.js.map +1 -0
  146. package/esm/listeners/legacy/gherkin/feature-files/errors/index.d.ts +5 -0
  147. package/esm/listeners/legacy/gherkin/feature-files/errors/index.d.ts.map +1 -0
  148. package/esm/listeners/legacy/gherkin/feature-files/errors/index.js +5 -0
  149. package/esm/listeners/legacy/gherkin/feature-files/errors/index.js.map +1 -0
  150. package/esm/listeners/legacy/gherkin/feature-files/index.d.ts +6 -0
  151. package/esm/listeners/legacy/gherkin/feature-files/index.d.ts.map +1 -0
  152. package/esm/listeners/legacy/gherkin/feature-files/index.js +6 -0
  153. package/esm/listeners/legacy/gherkin/feature-files/index.js.map +1 -0
  154. package/esm/listeners/legacy/gherkin/index.d.ts +4 -0
  155. package/esm/listeners/legacy/gherkin/index.d.ts.map +1 -0
  156. package/esm/listeners/legacy/gherkin/index.js +4 -0
  157. package/esm/listeners/legacy/gherkin/index.js.map +1 -0
  158. package/esm/listeners/legacy/gherkin/model/Background.d.ts +13 -0
  159. package/esm/listeners/legacy/gherkin/model/Background.d.ts.map +1 -0
  160. package/esm/listeners/legacy/gherkin/model/Background.js +14 -0
  161. package/esm/listeners/legacy/gherkin/model/Background.js.map +1 -0
  162. package/esm/listeners/legacy/gherkin/model/Feature.d.ts +13 -0
  163. package/esm/listeners/legacy/gherkin/model/Feature.d.ts.map +1 -0
  164. package/esm/listeners/legacy/gherkin/model/Feature.js +14 -0
  165. package/esm/listeners/legacy/gherkin/model/Feature.js.map +1 -0
  166. package/esm/listeners/legacy/gherkin/model/FeatureFileNode.d.ts +12 -0
  167. package/esm/listeners/legacy/gherkin/model/FeatureFileNode.d.ts.map +1 -0
  168. package/esm/listeners/legacy/gherkin/model/FeatureFileNode.js +14 -0
  169. package/esm/listeners/legacy/gherkin/model/FeatureFileNode.js.map +1 -0
  170. package/esm/listeners/legacy/gherkin/model/Hook.d.ts +7 -0
  171. package/esm/listeners/legacy/gherkin/model/Hook.d.ts.map +1 -0
  172. package/esm/listeners/legacy/gherkin/model/Hook.js +7 -0
  173. package/esm/listeners/legacy/gherkin/model/Hook.js.map +1 -0
  174. package/esm/listeners/legacy/gherkin/model/Scenario.d.ts +16 -0
  175. package/esm/listeners/legacy/gherkin/model/Scenario.d.ts.map +1 -0
  176. package/esm/listeners/legacy/gherkin/model/Scenario.js +18 -0
  177. package/esm/listeners/legacy/gherkin/model/Scenario.js.map +1 -0
  178. package/esm/listeners/legacy/gherkin/model/ScenarioOutline.d.ts +18 -0
  179. package/esm/listeners/legacy/gherkin/model/ScenarioOutline.d.ts.map +1 -0
  180. package/esm/listeners/legacy/gherkin/model/ScenarioOutline.js +16 -0
  181. package/esm/listeners/legacy/gherkin/model/ScenarioOutline.js.map +1 -0
  182. package/esm/listeners/legacy/gherkin/model/Step.d.ts +7 -0
  183. package/esm/listeners/legacy/gherkin/model/Step.d.ts.map +1 -0
  184. package/esm/listeners/legacy/gherkin/model/Step.js +7 -0
  185. package/esm/listeners/legacy/gherkin/model/Step.js.map +1 -0
  186. package/esm/listeners/legacy/gherkin/model/index.d.ts +8 -0
  187. package/esm/listeners/legacy/gherkin/model/index.d.ts.map +1 -0
  188. package/esm/listeners/legacy/gherkin/model/index.js +8 -0
  189. package/esm/listeners/legacy/gherkin/model/index.js.map +1 -0
  190. package/esm/listeners/legacy/gherkin/nodes/ASTNode.d.ts +9 -0
  191. package/esm/listeners/legacy/gherkin/nodes/ASTNode.d.ts.map +1 -0
  192. package/esm/listeners/legacy/gherkin/nodes/ASTNode.js +2 -0
  193. package/esm/listeners/legacy/gherkin/nodes/ASTNode.js.map +1 -0
  194. package/esm/listeners/legacy/gherkin/nodes/Background.d.ts +8 -0
  195. package/esm/listeners/legacy/gherkin/nodes/Background.d.ts.map +1 -0
  196. package/esm/listeners/legacy/gherkin/nodes/Background.js +2 -0
  197. package/esm/listeners/legacy/gherkin/nodes/Background.js.map +1 -0
  198. package/esm/listeners/legacy/gherkin/nodes/Comment.d.ts +9 -0
  199. package/esm/listeners/legacy/gherkin/nodes/Comment.d.ts.map +1 -0
  200. package/esm/listeners/legacy/gherkin/nodes/Comment.js +2 -0
  201. package/esm/listeners/legacy/gherkin/nodes/Comment.js.map +1 -0
  202. package/esm/listeners/legacy/gherkin/nodes/DataTable.d.ts +10 -0
  203. package/esm/listeners/legacy/gherkin/nodes/DataTable.d.ts.map +1 -0
  204. package/esm/listeners/legacy/gherkin/nodes/DataTable.js +2 -0
  205. package/esm/listeners/legacy/gherkin/nodes/DataTable.js.map +1 -0
  206. package/esm/listeners/legacy/gherkin/nodes/DocString.d.ts +9 -0
  207. package/esm/listeners/legacy/gherkin/nodes/DocString.d.ts.map +1 -0
  208. package/esm/listeners/legacy/gherkin/nodes/DocString.js +2 -0
  209. package/esm/listeners/legacy/gherkin/nodes/DocString.js.map +1 -0
  210. package/esm/listeners/legacy/gherkin/nodes/Examples.d.ts +16 -0
  211. package/esm/listeners/legacy/gherkin/nodes/Examples.d.ts.map +1 -0
  212. package/esm/listeners/legacy/gherkin/nodes/Examples.js +2 -0
  213. package/esm/listeners/legacy/gherkin/nodes/Examples.js.map +1 -0
  214. package/esm/listeners/legacy/gherkin/nodes/Feature.d.ts +16 -0
  215. package/esm/listeners/legacy/gherkin/nodes/Feature.d.ts.map +1 -0
  216. package/esm/listeners/legacy/gherkin/nodes/Feature.js +2 -0
  217. package/esm/listeners/legacy/gherkin/nodes/Feature.js.map +1 -0
  218. package/esm/listeners/legacy/gherkin/nodes/GherkinDocument.d.ts +11 -0
  219. package/esm/listeners/legacy/gherkin/nodes/GherkinDocument.d.ts.map +1 -0
  220. package/esm/listeners/legacy/gherkin/nodes/GherkinDocument.js +2 -0
  221. package/esm/listeners/legacy/gherkin/nodes/GherkinDocument.js.map +1 -0
  222. package/esm/listeners/legacy/gherkin/nodes/Location.d.ts +8 -0
  223. package/esm/listeners/legacy/gherkin/nodes/Location.d.ts.map +1 -0
  224. package/esm/listeners/legacy/gherkin/nodes/Location.js +2 -0
  225. package/esm/listeners/legacy/gherkin/nodes/Location.js.map +1 -0
  226. package/esm/listeners/legacy/gherkin/nodes/Scenario.d.ts +10 -0
  227. package/esm/listeners/legacy/gherkin/nodes/Scenario.d.ts.map +1 -0
  228. package/esm/listeners/legacy/gherkin/nodes/Scenario.js +2 -0
  229. package/esm/listeners/legacy/gherkin/nodes/Scenario.js.map +1 -0
  230. package/esm/listeners/legacy/gherkin/nodes/ScenarioDefinition.d.ts +15 -0
  231. package/esm/listeners/legacy/gherkin/nodes/ScenarioDefinition.d.ts.map +1 -0
  232. package/esm/listeners/legacy/gherkin/nodes/ScenarioDefinition.js +2 -0
  233. package/esm/listeners/legacy/gherkin/nodes/ScenarioDefinition.js.map +1 -0
  234. package/esm/listeners/legacy/gherkin/nodes/ScenarioOutline.d.ts +12 -0
  235. package/esm/listeners/legacy/gherkin/nodes/ScenarioOutline.d.ts.map +1 -0
  236. package/esm/listeners/legacy/gherkin/nodes/ScenarioOutline.js +2 -0
  237. package/esm/listeners/legacy/gherkin/nodes/ScenarioOutline.js.map +1 -0
  238. package/esm/listeners/legacy/gherkin/nodes/Step.d.ts +12 -0
  239. package/esm/listeners/legacy/gherkin/nodes/Step.d.ts.map +1 -0
  240. package/esm/listeners/legacy/gherkin/nodes/Step.js +2 -0
  241. package/esm/listeners/legacy/gherkin/nodes/Step.js.map +1 -0
  242. package/esm/listeners/legacy/gherkin/nodes/StepArgument.d.ts +8 -0
  243. package/esm/listeners/legacy/gherkin/nodes/StepArgument.d.ts.map +1 -0
  244. package/esm/listeners/legacy/gherkin/nodes/StepArgument.js +2 -0
  245. package/esm/listeners/legacy/gherkin/nodes/StepArgument.js.map +1 -0
  246. package/esm/listeners/legacy/gherkin/nodes/TableCell.d.ts +8 -0
  247. package/esm/listeners/legacy/gherkin/nodes/TableCell.d.ts.map +1 -0
  248. package/esm/listeners/legacy/gherkin/nodes/TableCell.js +2 -0
  249. package/esm/listeners/legacy/gherkin/nodes/TableCell.js.map +1 -0
  250. package/esm/listeners/legacy/gherkin/nodes/TableRow.d.ts +10 -0
  251. package/esm/listeners/legacy/gherkin/nodes/TableRow.d.ts.map +1 -0
  252. package/esm/listeners/legacy/gherkin/nodes/TableRow.js +2 -0
  253. package/esm/listeners/legacy/gherkin/nodes/TableRow.js.map +1 -0
  254. package/esm/listeners/legacy/gherkin/nodes/Tag.d.ts +9 -0
  255. package/esm/listeners/legacy/gherkin/nodes/Tag.d.ts.map +1 -0
  256. package/esm/listeners/legacy/gherkin/nodes/Tag.js +2 -0
  257. package/esm/listeners/legacy/gherkin/nodes/Tag.js.map +1 -0
  258. package/esm/listeners/legacy/gherkin/nodes/index.d.ts +17 -0
  259. package/esm/listeners/legacy/gherkin/nodes/index.d.ts.map +1 -0
  260. package/esm/listeners/legacy/gherkin/nodes/index.js +17 -0
  261. package/esm/listeners/legacy/gherkin/nodes/index.js.map +1 -0
  262. package/esm/listeners/legacy/index.d.ts +10 -0
  263. package/esm/listeners/legacy/index.d.ts.map +1 -0
  264. package/esm/listeners/legacy/index.js +48 -0
  265. package/esm/listeners/legacy/index.js.map +1 -0
  266. package/esm/listeners/legacy/notifier/Notifier.d.ts +27 -0
  267. package/esm/listeners/legacy/notifier/Notifier.d.ts.map +1 -0
  268. package/esm/listeners/legacy/notifier/Notifier.js +82 -0
  269. package/esm/listeners/legacy/notifier/Notifier.js.map +1 -0
  270. package/esm/listeners/legacy/notifier/ResultMapper.d.ts +15 -0
  271. package/esm/listeners/legacy/notifier/ResultMapper.d.ts.map +1 -0
  272. package/esm/listeners/legacy/notifier/ResultMapper.js +80 -0
  273. package/esm/listeners/legacy/notifier/ResultMapper.js.map +1 -0
  274. package/esm/listeners/legacy/notifier/index.d.ts +3 -0
  275. package/esm/listeners/legacy/notifier/index.d.ts.map +1 -0
  276. package/esm/listeners/legacy/notifier/index.js +3 -0
  277. package/esm/listeners/legacy/notifier/index.js.map +1 -0
  278. package/esm/listeners/messages/CucumberMessagesListener.d.ts +18 -0
  279. package/esm/listeners/messages/CucumberMessagesListener.d.ts.map +1 -0
  280. package/esm/listeners/messages/CucumberMessagesListener.js +65 -0
  281. package/esm/listeners/messages/CucumberMessagesListener.js.map +1 -0
  282. package/esm/listeners/messages/index.d.ts +7 -0
  283. package/esm/listeners/messages/index.d.ts.map +1 -0
  284. package/esm/listeners/messages/index.js +8 -0
  285. package/esm/listeners/messages/index.js.map +1 -0
  286. package/esm/listeners/messages/parser/CucumberMessagesParser.d.ts +45 -0
  287. package/esm/listeners/messages/parser/CucumberMessagesParser.d.ts.map +1 -0
  288. package/esm/listeners/messages/parser/CucumberMessagesParser.js +211 -0
  289. package/esm/listeners/messages/parser/CucumberMessagesParser.js.map +1 -0
  290. package/esm/listeners/messages/parser/TestStepFormatter.d.ts +14 -0
  291. package/esm/listeners/messages/parser/TestStepFormatter.d.ts.map +1 -0
  292. package/esm/listeners/messages/parser/TestStepFormatter.js +61 -0
  293. package/esm/listeners/messages/parser/TestStepFormatter.js.map +1 -0
  294. package/esm/listeners/messages/parser/types/ExtractedScenario.d.ts +9 -0
  295. package/esm/listeners/messages/parser/types/ExtractedScenario.d.ts.map +1 -0
  296. package/esm/listeners/messages/parser/types/ExtractedScenario.js +2 -0
  297. package/esm/listeners/messages/parser/types/ExtractedScenario.js.map +1 -0
  298. package/esm/listeners/messages/parser/types/ExtractedScenarioOutline.d.ts +7 -0
  299. package/esm/listeners/messages/parser/types/ExtractedScenarioOutline.d.ts.map +1 -0
  300. package/esm/listeners/messages/parser/types/ExtractedScenarioOutline.js +2 -0
  301. package/esm/listeners/messages/parser/types/ExtractedScenarioOutline.js.map +1 -0
  302. package/esm/listeners/messages/parser/types/index.d.ts +3 -0
  303. package/esm/listeners/messages/parser/types/index.d.ts.map +1 -0
  304. package/esm/listeners/messages/parser/types/index.js +3 -0
  305. package/esm/listeners/messages/parser/types/index.js.map +1 -0
  306. package/esm/listeners/messages/types/cucumber.d.ts +63 -0
  307. package/esm/listeners/messages/types/cucumber.d.ts.map +1 -0
  308. package/esm/listeners/messages/types/cucumber.js +7 -0
  309. package/esm/listeners/messages/types/cucumber.js.map +1 -0
  310. package/lib/adapter/CucumberCLIAdapter.d.ts +5 -5
  311. package/lib/adapter/CucumberCLIAdapter.d.ts.map +1 -1
  312. package/lib/adapter/CucumberCLIAdapter.js +4 -4
  313. package/lib/adapter/CucumberCLIAdapter.js.map +1 -1
  314. package/lib/adapter/CucumberOptions.d.ts +3 -3
  315. package/lib/adapter/CucumberOptions.d.ts.map +1 -1
  316. package/lib/adapter/CucumberOptions.js +1 -1
  317. package/lib/adapter/CucumberOptions.js.map +1 -1
  318. package/lib/adapter/index.d.ts +4 -4
  319. package/lib/adapter/index.d.ts.map +1 -1
  320. package/lib/adapter/index.js +4 -4
  321. package/lib/adapter/index.js.map +1 -1
  322. package/lib/adapter/output/SerenityFormatterOutput.d.ts +1 -1
  323. package/lib/adapter/output/SerenityFormatterOutput.d.ts.map +1 -1
  324. package/lib/adapter/output/StandardOutput.d.ts +2 -2
  325. package/lib/adapter/output/StandardOutput.d.ts.map +1 -1
  326. package/lib/adapter/output/StandardOutput.js +2 -2
  327. package/lib/adapter/output/StandardOutput.js.map +1 -1
  328. package/lib/adapter/output/StandardOutputDescriptor.d.ts +1 -1
  329. package/lib/adapter/output/StandardOutputDescriptor.d.ts.map +1 -1
  330. package/lib/adapter/output/TempFileOutput.d.ts +3 -3
  331. package/lib/adapter/output/TempFileOutput.d.ts.map +1 -1
  332. package/lib/adapter/output/TempFileOutput.js +2 -2
  333. package/lib/adapter/output/TempFileOutput.js.map +1 -1
  334. package/lib/adapter/output/TempFileOutputDescriptor.d.ts +2 -2
  335. package/lib/adapter/output/TempFileOutputDescriptor.d.ts.map +1 -1
  336. package/lib/adapter/output/TempFileOutputDescriptor.js +1 -1
  337. package/lib/adapter/output/TempFileOutputDescriptor.js.map +1 -1
  338. package/lib/adapter/output/index.d.ts +4 -4
  339. package/lib/adapter/output/index.d.ts.map +1 -1
  340. package/lib/adapter/output/index.js +4 -4
  341. package/lib/adapter/output/index.js.map +1 -1
  342. package/lib/errors/AmbiguousStepDefinitionError.d.ts +1 -1
  343. package/lib/errors/AmbiguousStepDefinitionError.d.ts.map +1 -1
  344. package/lib/errors/AmbiguousStepDefinitionError.js +1 -1
  345. package/lib/errors/AmbiguousStepDefinitionError.js.map +1 -1
  346. package/lib/errors/index.d.ts +1 -1
  347. package/lib/errors/index.d.ts.map +1 -1
  348. package/lib/errors/index.js +1 -1
  349. package/lib/errors/index.js.map +1 -1
  350. package/lib/index.d.ts +1 -1
  351. package/lib/index.d.ts.map +1 -1
  352. package/lib/index.js +7 -4
  353. package/lib/index.js.map +1 -1
  354. package/lib/listeners/legacy/CucumberEventProtocolAdapter.d.ts +3 -3
  355. package/lib/listeners/legacy/CucumberEventProtocolAdapter.d.ts.map +1 -1
  356. package/lib/listeners/legacy/CucumberEventProtocolAdapter.js +21 -21
  357. package/lib/listeners/legacy/CucumberEventProtocolAdapter.js.map +1 -1
  358. package/lib/listeners/legacy/Dependencies.d.ts +3 -3
  359. package/lib/listeners/legacy/Dependencies.d.ts.map +1 -1
  360. package/lib/listeners/legacy/cucumber-0.d.ts +2 -3
  361. package/lib/listeners/legacy/cucumber-0.d.ts.map +1 -1
  362. package/lib/listeners/legacy/cucumber-0.js +50 -48
  363. package/lib/listeners/legacy/cucumber-0.js.map +1 -1
  364. package/lib/listeners/legacy/cucumber-1.d.ts +1 -2
  365. package/lib/listeners/legacy/cucumber-1.d.ts.map +1 -1
  366. package/lib/listeners/legacy/cucumber-1.js +7 -1
  367. package/lib/listeners/legacy/cucumber-1.js.map +1 -1
  368. package/lib/listeners/legacy/cucumber-2.d.ts +2 -3
  369. package/lib/listeners/legacy/cucumber-2.d.ts.map +1 -1
  370. package/lib/listeners/legacy/cucumber-2.js +9 -4
  371. package/lib/listeners/legacy/cucumber-2.js.map +1 -1
  372. package/lib/listeners/legacy/cucumber-3.d.ts +4 -5
  373. package/lib/listeners/legacy/cucumber-3.d.ts.map +1 -1
  374. package/lib/listeners/legacy/cucumber-3.js +8 -5
  375. package/lib/listeners/legacy/cucumber-3.js.map +1 -1
  376. package/lib/listeners/legacy/cucumber-4.d.ts +4 -5
  377. package/lib/listeners/legacy/cucumber-4.d.ts.map +1 -1
  378. package/lib/listeners/legacy/cucumber-4.js +8 -5
  379. package/lib/listeners/legacy/cucumber-4.js.map +1 -1
  380. package/lib/listeners/legacy/cucumber-5.d.ts +1 -2
  381. package/lib/listeners/legacy/cucumber-5.d.ts.map +1 -1
  382. package/lib/listeners/legacy/cucumber-5.js +7 -1
  383. package/lib/listeners/legacy/cucumber-5.js.map +1 -1
  384. package/lib/listeners/legacy/cucumber-6.d.ts +1 -2
  385. package/lib/listeners/legacy/cucumber-6.d.ts.map +1 -1
  386. package/lib/listeners/legacy/cucumber-6.js +7 -1
  387. package/lib/listeners/legacy/cucumber-6.js.map +1 -1
  388. package/lib/listeners/legacy/gherkin/GherkinParserAdapter.d.ts +1 -1
  389. package/lib/listeners/legacy/gherkin/GherkinParserAdapter.d.ts.map +1 -1
  390. package/lib/listeners/legacy/gherkin/feature-files/Cache.js +2 -2
  391. package/lib/listeners/legacy/gherkin/feature-files/Cache.js.map +1 -1
  392. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileLoader.d.ts +5 -5
  393. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileLoader.d.ts.map +1 -1
  394. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileLoader.js +2 -2
  395. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileLoader.js.map +1 -1
  396. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileMap.d.ts +1 -1
  397. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileMap.d.ts.map +1 -1
  398. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileMap.js +4 -4
  399. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileMap.js.map +1 -1
  400. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileMapper.d.ts +3 -3
  401. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileMapper.d.ts.map +1 -1
  402. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileMapper.js +12 -12
  403. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileMapper.js.map +1 -1
  404. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileParser.d.ts +2 -2
  405. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileParser.d.ts.map +1 -1
  406. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileParser.js +3 -3
  407. package/lib/listeners/legacy/gherkin/feature-files/FeatureFileParser.js.map +1 -1
  408. package/lib/listeners/legacy/gherkin/feature-files/errors/ItemNotFoundError.d.ts +1 -1
  409. package/lib/listeners/legacy/gherkin/feature-files/errors/ItemNotFoundError.d.ts.map +1 -1
  410. package/lib/listeners/legacy/gherkin/feature-files/errors/ItemNotFoundError.js +1 -1
  411. package/lib/listeners/legacy/gherkin/feature-files/errors/ItemNotFoundError.js.map +1 -1
  412. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToParseFeatureFileError.d.ts +1 -1
  413. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToParseFeatureFileError.d.ts.map +1 -1
  414. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToParseFeatureFileError.js +1 -1
  415. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToParseFeatureFileError.js.map +1 -1
  416. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToReadFeatureFileError.d.ts +1 -1
  417. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToReadFeatureFileError.d.ts.map +1 -1
  418. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToReadFeatureFileError.js +1 -1
  419. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToReadFeatureFileError.js.map +1 -1
  420. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToRetrieveFeatureFileMap.d.ts +1 -1
  421. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToRetrieveFeatureFileMap.d.ts.map +1 -1
  422. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToRetrieveFeatureFileMap.js +1 -1
  423. package/lib/listeners/legacy/gherkin/feature-files/errors/UnableToRetrieveFeatureFileMap.js.map +1 -1
  424. package/lib/listeners/legacy/gherkin/feature-files/errors/index.d.ts +4 -4
  425. package/lib/listeners/legacy/gherkin/feature-files/errors/index.d.ts.map +1 -1
  426. package/lib/listeners/legacy/gherkin/feature-files/errors/index.js +4 -4
  427. package/lib/listeners/legacy/gherkin/feature-files/errors/index.js.map +1 -1
  428. package/lib/listeners/legacy/gherkin/feature-files/index.d.ts +5 -5
  429. package/lib/listeners/legacy/gherkin/feature-files/index.d.ts.map +1 -1
  430. package/lib/listeners/legacy/gherkin/feature-files/index.js +5 -5
  431. package/lib/listeners/legacy/gherkin/feature-files/index.js.map +1 -1
  432. package/lib/listeners/legacy/gherkin/index.d.ts +3 -3
  433. package/lib/listeners/legacy/gherkin/index.d.ts.map +1 -1
  434. package/lib/listeners/legacy/gherkin/index.js +3 -3
  435. package/lib/listeners/legacy/gherkin/index.js.map +1 -1
  436. package/lib/listeners/legacy/gherkin/model/Background.d.ts +4 -4
  437. package/lib/listeners/legacy/gherkin/model/Background.d.ts.map +1 -1
  438. package/lib/listeners/legacy/gherkin/model/Background.js +2 -2
  439. package/lib/listeners/legacy/gherkin/model/Background.js.map +1 -1
  440. package/lib/listeners/legacy/gherkin/model/Feature.d.ts +4 -4
  441. package/lib/listeners/legacy/gherkin/model/Feature.d.ts.map +1 -1
  442. package/lib/listeners/legacy/gherkin/model/Feature.js +2 -2
  443. package/lib/listeners/legacy/gherkin/model/Feature.js.map +1 -1
  444. package/lib/listeners/legacy/gherkin/model/FeatureFileNode.d.ts +2 -2
  445. package/lib/listeners/legacy/gherkin/model/FeatureFileNode.d.ts.map +1 -1
  446. package/lib/listeners/legacy/gherkin/model/Hook.d.ts +1 -1
  447. package/lib/listeners/legacy/gherkin/model/Hook.d.ts.map +1 -1
  448. package/lib/listeners/legacy/gherkin/model/Hook.js +2 -2
  449. package/lib/listeners/legacy/gherkin/model/Hook.js.map +1 -1
  450. package/lib/listeners/legacy/gherkin/model/Scenario.d.ts +5 -5
  451. package/lib/listeners/legacy/gherkin/model/Scenario.d.ts.map +1 -1
  452. package/lib/listeners/legacy/gherkin/model/Scenario.js +2 -2
  453. package/lib/listeners/legacy/gherkin/model/Scenario.js.map +1 -1
  454. package/lib/listeners/legacy/gherkin/model/ScenarioOutline.d.ts +4 -4
  455. package/lib/listeners/legacy/gherkin/model/ScenarioOutline.d.ts.map +1 -1
  456. package/lib/listeners/legacy/gherkin/model/ScenarioOutline.js +2 -2
  457. package/lib/listeners/legacy/gherkin/model/ScenarioOutline.js.map +1 -1
  458. package/lib/listeners/legacy/gherkin/model/Step.d.ts +1 -1
  459. package/lib/listeners/legacy/gherkin/model/Step.d.ts.map +1 -1
  460. package/lib/listeners/legacy/gherkin/model/Step.js +2 -2
  461. package/lib/listeners/legacy/gherkin/model/Step.js.map +1 -1
  462. package/lib/listeners/legacy/gherkin/model/index.d.ts +7 -7
  463. package/lib/listeners/legacy/gherkin/model/index.d.ts.map +1 -1
  464. package/lib/listeners/legacy/gherkin/model/index.js +7 -7
  465. package/lib/listeners/legacy/gherkin/model/index.js.map +1 -1
  466. package/lib/listeners/legacy/gherkin/nodes/ASTNode.d.ts +1 -1
  467. package/lib/listeners/legacy/gherkin/nodes/ASTNode.d.ts.map +1 -1
  468. package/lib/listeners/legacy/gherkin/nodes/Background.d.ts +1 -1
  469. package/lib/listeners/legacy/gherkin/nodes/Background.d.ts.map +1 -1
  470. package/lib/listeners/legacy/gherkin/nodes/Comment.d.ts +1 -1
  471. package/lib/listeners/legacy/gherkin/nodes/Comment.d.ts.map +1 -1
  472. package/lib/listeners/legacy/gherkin/nodes/DataTable.d.ts +2 -2
  473. package/lib/listeners/legacy/gherkin/nodes/DataTable.d.ts.map +1 -1
  474. package/lib/listeners/legacy/gherkin/nodes/DocString.d.ts +1 -1
  475. package/lib/listeners/legacy/gherkin/nodes/DocString.d.ts.map +1 -1
  476. package/lib/listeners/legacy/gherkin/nodes/Examples.d.ts +3 -3
  477. package/lib/listeners/legacy/gherkin/nodes/Examples.d.ts.map +1 -1
  478. package/lib/listeners/legacy/gherkin/nodes/Feature.d.ts +3 -3
  479. package/lib/listeners/legacy/gherkin/nodes/Feature.d.ts.map +1 -1
  480. package/lib/listeners/legacy/gherkin/nodes/GherkinDocument.d.ts +2 -2
  481. package/lib/listeners/legacy/gherkin/nodes/GherkinDocument.d.ts.map +1 -1
  482. package/lib/listeners/legacy/gherkin/nodes/Scenario.d.ts +2 -2
  483. package/lib/listeners/legacy/gherkin/nodes/Scenario.d.ts.map +1 -1
  484. package/lib/listeners/legacy/gherkin/nodes/ScenarioDefinition.d.ts +3 -3
  485. package/lib/listeners/legacy/gherkin/nodes/ScenarioDefinition.d.ts.map +1 -1
  486. package/lib/listeners/legacy/gherkin/nodes/ScenarioOutline.d.ts +3 -3
  487. package/lib/listeners/legacy/gherkin/nodes/ScenarioOutline.d.ts.map +1 -1
  488. package/lib/listeners/legacy/gherkin/nodes/Step.d.ts +2 -2
  489. package/lib/listeners/legacy/gherkin/nodes/Step.d.ts.map +1 -1
  490. package/lib/listeners/legacy/gherkin/nodes/StepArgument.d.ts +1 -1
  491. package/lib/listeners/legacy/gherkin/nodes/StepArgument.d.ts.map +1 -1
  492. package/lib/listeners/legacy/gherkin/nodes/TableCell.d.ts +1 -1
  493. package/lib/listeners/legacy/gherkin/nodes/TableCell.d.ts.map +1 -1
  494. package/lib/listeners/legacy/gherkin/nodes/TableRow.d.ts +2 -2
  495. package/lib/listeners/legacy/gherkin/nodes/TableRow.d.ts.map +1 -1
  496. package/lib/listeners/legacy/gherkin/nodes/Tag.d.ts +1 -1
  497. package/lib/listeners/legacy/gherkin/nodes/Tag.d.ts.map +1 -1
  498. package/lib/listeners/legacy/gherkin/nodes/index.d.ts +16 -16
  499. package/lib/listeners/legacy/gherkin/nodes/index.d.ts.map +1 -1
  500. package/lib/listeners/legacy/gherkin/nodes/index.js +16 -16
  501. package/lib/listeners/legacy/gherkin/nodes/index.js.map +1 -1
  502. package/lib/listeners/legacy/index.d.ts +1 -1
  503. package/lib/listeners/legacy/index.d.ts.map +1 -1
  504. package/lib/listeners/legacy/index.js +27 -4
  505. package/lib/listeners/legacy/index.js.map +1 -1
  506. package/lib/listeners/legacy/notifier/Notifier.d.ts +3 -3
  507. package/lib/listeners/legacy/notifier/Notifier.d.ts.map +1 -1
  508. package/lib/listeners/legacy/notifier/Notifier.js +2 -2
  509. package/lib/listeners/legacy/notifier/Notifier.js.map +1 -1
  510. package/lib/listeners/legacy/notifier/ResultMapper.d.ts +1 -1
  511. package/lib/listeners/legacy/notifier/ResultMapper.d.ts.map +1 -1
  512. package/lib/listeners/legacy/notifier/ResultMapper.js +3 -3
  513. package/lib/listeners/legacy/notifier/ResultMapper.js.map +1 -1
  514. package/lib/listeners/legacy/notifier/index.d.ts +2 -2
  515. package/lib/listeners/legacy/notifier/index.d.ts.map +1 -1
  516. package/lib/listeners/legacy/notifier/index.js +2 -2
  517. package/lib/listeners/legacy/notifier/index.js.map +1 -1
  518. package/lib/listeners/messages/CucumberMessagesListener.d.ts +4 -5
  519. package/lib/listeners/messages/CucumberMessagesListener.d.ts.map +1 -1
  520. package/lib/listeners/messages/CucumberMessagesListener.js +9 -6
  521. package/lib/listeners/messages/CucumberMessagesListener.js.map +1 -1
  522. package/lib/listeners/messages/index.d.ts +1 -1
  523. package/lib/listeners/messages/index.d.ts.map +1 -1
  524. package/lib/listeners/messages/index.js +5 -2
  525. package/lib/listeners/messages/index.js.map +1 -1
  526. package/lib/listeners/messages/parser/CucumberMessagesParser.d.ts +2 -2
  527. package/lib/listeners/messages/parser/CucumberMessagesParser.d.ts.map +1 -1
  528. package/lib/listeners/messages/parser/CucumberMessagesParser.js +6 -6
  529. package/lib/listeners/messages/parser/CucumberMessagesParser.js.map +1 -1
  530. package/lib/listeners/messages/parser/types/ExtractedScenario.d.ts +1 -1
  531. package/lib/listeners/messages/parser/types/ExtractedScenario.d.ts.map +1 -1
  532. package/lib/listeners/messages/parser/types/ExtractedScenarioOutline.d.ts +1 -1
  533. package/lib/listeners/messages/parser/types/ExtractedScenarioOutline.d.ts.map +1 -1
  534. package/lib/listeners/messages/parser/types/index.d.ts +2 -2
  535. package/lib/listeners/messages/parser/types/index.d.ts.map +1 -1
  536. package/lib/listeners/messages/parser/types/index.js +2 -2
  537. package/lib/listeners/messages/parser/types/index.js.map +1 -1
  538. package/lib/package.json +1 -0
  539. package/package.json +43 -8
  540. package/src/adapter/CucumberCLIAdapter.ts +9 -9
  541. package/src/adapter/CucumberOptions.ts +3 -3
  542. package/src/adapter/index.ts +4 -4
  543. package/src/adapter/output/SerenityFormatterOutput.ts +1 -1
  544. package/src/adapter/output/StandardOutput.ts +3 -3
  545. package/src/adapter/output/StandardOutputDescriptor.ts +1 -1
  546. package/src/adapter/output/TempFileOutput.ts +4 -4
  547. package/src/adapter/output/TempFileOutputDescriptor.ts +2 -2
  548. package/src/adapter/output/index.ts +4 -4
  549. package/src/errors/AmbiguousStepDefinitionError.ts +1 -1
  550. package/src/errors/index.ts +1 -1
  551. package/src/index.ts +7 -4
  552. package/src/listeners/legacy/CucumberEventProtocolAdapter.ts +8 -8
  553. package/src/listeners/legacy/Dependencies.ts +3 -3
  554. package/src/listeners/legacy/cucumber-0.ts +8 -8
  555. package/src/listeners/legacy/cucumber-1.ts +1 -1
  556. package/src/listeners/legacy/cucumber-2.ts +5 -6
  557. package/src/listeners/legacy/cucumber-3.ts +5 -5
  558. package/src/listeners/legacy/cucumber-4.ts +5 -5
  559. package/src/listeners/legacy/cucumber-5.ts +1 -1
  560. package/src/listeners/legacy/cucumber-6.ts +1 -1
  561. package/src/listeners/legacy/gherkin/GherkinParserAdapter.ts +1 -1
  562. package/src/listeners/legacy/gherkin/feature-files/Cache.ts +1 -1
  563. package/src/listeners/legacy/gherkin/feature-files/FeatureFileLoader.ts +5 -5
  564. package/src/listeners/legacy/gherkin/feature-files/FeatureFileMap.ts +2 -2
  565. package/src/listeners/legacy/gherkin/feature-files/FeatureFileMapper.ts +8 -8
  566. package/src/listeners/legacy/gherkin/feature-files/FeatureFileParser.ts +3 -3
  567. package/src/listeners/legacy/gherkin/feature-files/errors/ItemNotFoundError.ts +1 -1
  568. package/src/listeners/legacy/gherkin/feature-files/errors/UnableToParseFeatureFileError.ts +1 -1
  569. package/src/listeners/legacy/gherkin/feature-files/errors/UnableToReadFeatureFileError.ts +1 -1
  570. package/src/listeners/legacy/gherkin/feature-files/errors/UnableToRetrieveFeatureFileMap.ts +1 -1
  571. package/src/listeners/legacy/gherkin/feature-files/errors/index.ts +4 -4
  572. package/src/listeners/legacy/gherkin/feature-files/index.ts +5 -5
  573. package/src/listeners/legacy/gherkin/index.ts +3 -3
  574. package/src/listeners/legacy/gherkin/model/Background.ts +4 -4
  575. package/src/listeners/legacy/gherkin/model/Feature.ts +4 -4
  576. package/src/listeners/legacy/gherkin/model/FeatureFileNode.ts +2 -2
  577. package/src/listeners/legacy/gherkin/model/Hook.ts +1 -1
  578. package/src/listeners/legacy/gherkin/model/Scenario.ts +5 -5
  579. package/src/listeners/legacy/gherkin/model/ScenarioOutline.ts +4 -4
  580. package/src/listeners/legacy/gherkin/model/Step.ts +1 -1
  581. package/src/listeners/legacy/gherkin/model/index.ts +7 -7
  582. package/src/listeners/legacy/gherkin/nodes/ASTNode.ts +1 -1
  583. package/src/listeners/legacy/gherkin/nodes/Background.ts +1 -1
  584. package/src/listeners/legacy/gherkin/nodes/Comment.ts +1 -1
  585. package/src/listeners/legacy/gherkin/nodes/DataTable.ts +2 -2
  586. package/src/listeners/legacy/gherkin/nodes/DocString.ts +1 -1
  587. package/src/listeners/legacy/gherkin/nodes/Examples.ts +3 -3
  588. package/src/listeners/legacy/gherkin/nodes/Feature.ts +3 -3
  589. package/src/listeners/legacy/gherkin/nodes/GherkinDocument.ts +2 -2
  590. package/src/listeners/legacy/gherkin/nodes/Scenario.ts +2 -2
  591. package/src/listeners/legacy/gherkin/nodes/ScenarioDefinition.ts +3 -3
  592. package/src/listeners/legacy/gherkin/nodes/ScenarioOutline.ts +3 -3
  593. package/src/listeners/legacy/gherkin/nodes/Step.ts +2 -2
  594. package/src/listeners/legacy/gherkin/nodes/StepArgument.ts +1 -1
  595. package/src/listeners/legacy/gherkin/nodes/TableCell.ts +1 -1
  596. package/src/listeners/legacy/gherkin/nodes/TableRow.ts +2 -2
  597. package/src/listeners/legacy/gherkin/nodes/Tag.ts +1 -1
  598. package/src/listeners/legacy/gherkin/nodes/index.ts +16 -16
  599. package/src/listeners/legacy/index.ts +27 -5
  600. package/src/listeners/legacy/notifier/Notifier.ts +6 -6
  601. package/src/listeners/legacy/notifier/ResultMapper.ts +3 -3
  602. package/src/listeners/legacy/notifier/index.ts +2 -2
  603. package/src/listeners/messages/CucumberMessagesListener.ts +8 -7
  604. package/src/listeners/messages/index.ts +3 -2
  605. package/src/listeners/messages/parser/CucumberMessagesParser.ts +9 -9
  606. package/src/listeners/messages/parser/types/ExtractedScenario.ts +1 -1
  607. package/src/listeners/messages/parser/types/ExtractedScenarioOutline.ts +1 -1
  608. package/src/listeners/messages/parser/types/index.ts +2 -2
  609. package/tsconfig-cjs.build.json +13 -0
  610. package/tsconfig-esm.build.json +13 -0
@@ -0,0 +1,65 @@
1
+ import { IdGenerator } from '@cucumber/messages';
2
+ import { SceneFinishes, TestRunFinished, TestRunFinishes, TestRunStarts } from '@serenity-js/core/events';
3
+ import { ExecutionFailedWithError, ExecutionSuccessful } from '@serenity-js/core/model';
4
+ import { CucumberMessagesParser } from './parser/CucumberMessagesParser.js';
5
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
6
+ export default function (serenity, moduleLoader) {
7
+ const { Formatter, formatterHelpers } = moduleLoader.require('@cucumber/cucumber'), TestCaseHookDefinition = moduleLoader.require('@cucumber/cucumber/lib/models/test_case_hook_definition').default;
8
+ return class CucumberMessagesListener extends Formatter {
9
+ static fakeInternalAfterHookUri = '/internal/serenity-js/cucumber';
10
+ parser;
11
+ log;
12
+ supportCodeLibrary;
13
+ constructor(options) {
14
+ super(options);
15
+ this.parser = new CucumberMessagesParser(serenity, formatterHelpers, options, (step) => step?.actionLocation?.uri !== CucumberMessagesListener.fakeInternalAfterHookUri);
16
+ this.supportCodeLibrary = this.supportCodeLibrary ?? options.supportCodeLibrary;
17
+ this.addAfterHook(() => {
18
+ this.emit(new SceneFinishes(serenity.currentSceneId(), new ExecutionSuccessful(), serenity.currentTime()));
19
+ return serenity.waitForNextCue();
20
+ });
21
+ options.eventBroadcaster.on('envelope', (envelope) => {
22
+ // this.log('> [cucumber] ' + JSON.stringify(envelope) + '\n');
23
+ switch (true) {
24
+ case !!envelope.testRunStarted:
25
+ return this.emit(new TestRunStarts(serenity.currentTime()));
26
+ case !!envelope.testCaseStarted:
27
+ return this.emit(this.parser.parseTestCaseStarted(envelope.testCaseStarted));
28
+ case !!envelope.testStepStarted:
29
+ return this.emit(this.parser.parseTestStepStarted(envelope.testStepStarted));
30
+ case !!envelope.testStepFinished:
31
+ return this.emit(this.parser.parseTestStepFinished(envelope.testStepFinished));
32
+ case !!envelope.testCaseFinished:
33
+ return this.emit(this.parser.parseTestCaseFinished(envelope.testCaseFinished));
34
+ }
35
+ });
36
+ }
37
+ async finished() {
38
+ this.emit(new TestRunFinishes(serenity.currentTime()));
39
+ try {
40
+ await serenity.waitForNextCue();
41
+ this.emit(new TestRunFinished(new ExecutionSuccessful(), serenity.currentTime()));
42
+ }
43
+ catch (error) {
44
+ this.emit(new TestRunFinished(new ExecutionFailedWithError(error), serenity.currentTime()));
45
+ throw error;
46
+ }
47
+ finally {
48
+ await super.finished();
49
+ }
50
+ }
51
+ addAfterHook(code) {
52
+ this.supportCodeLibrary.afterTestCaseHookDefinitions.unshift(new TestCaseHookDefinition({
53
+ code,
54
+ id: IdGenerator.uuid()(),
55
+ line: 0,
56
+ uri: CucumberMessagesListener.fakeInternalAfterHookUri,
57
+ options: {},
58
+ }));
59
+ }
60
+ emit(events) {
61
+ [].concat(events).forEach(event => serenity.announce(event));
62
+ }
63
+ };
64
+ }
65
+ //# sourceMappingURL=CucumberMessagesListener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CucumberMessagesListener.js","sourceRoot":"","sources":["../../../src/listeners/messages/CucumberMessagesListener.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { Serenity } from '@serenity-js/core';
2
+ import type { ModuleLoader } from '@serenity-js/core/io';
3
+ /**
4
+ * Creates a listener for Cucumber.js v7.x and above
5
+ */
6
+ export declare function createListener(serenity: Serenity, moduleLoader: ModuleLoader): any;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/listeners/messages/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIzD;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,GAAG,GAAG,CAKlF"}
@@ -0,0 +1,8 @@
1
+ import cucumberMessagesListener from './CucumberMessagesListener.js';
2
+ /**
3
+ * Creates a listener for Cucumber.js v7.x and above
4
+ */
5
+ export function createListener(serenity, moduleLoader) {
6
+ return cucumberMessagesListener(serenity, moduleLoader);
7
+ }
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/listeners/messages/index.ts"],"names":[],"mappings":"AAGA,OAAO,wBAAwB,MAAM,+BAA+B,CAAC;AAErE;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAkB,EAAE,YAA0B;IACzE,OAAO,wBAAwB,CAC3B,QAAQ,EACR,YAAY,CACf,CAAC;AACN,CAAC"}
@@ -0,0 +1,45 @@
1
+ import type { TestCaseFinished, TestCaseStarted, TestStepStarted } from '@cucumber/messages';
2
+ import type { Serenity } from '@serenity-js/core';
3
+ import type { DomainEvent } from '@serenity-js/core/events';
4
+ import type { EventDataCollector, IParsedTestStep } from '../types/cucumber.js';
5
+ /**
6
+ * @package
7
+ */
8
+ export declare class CucumberMessagesParser {
9
+ private readonly serenity;
10
+ private readonly formatterHelpers;
11
+ private readonly shouldReportStep;
12
+ private readonly testStepFormatter;
13
+ private currentScenario;
14
+ private currentStepActivityId;
15
+ private readonly cwd;
16
+ private readonly eventDataCollector;
17
+ private readonly snippetBuilder;
18
+ private readonly supportCodeLibrary;
19
+ private readonly requirementsHierarchy;
20
+ constructor(serenity: Serenity, formatterHelpers: any, // eslint-disable-line @typescript-eslint/explicit-module-boundary-types
21
+ formatterOptionsAndDependencies: {
22
+ cwd: string;
23
+ eventDataCollector: EventDataCollector;
24
+ snippetBuilder: any;
25
+ supportCodeLibrary: any;
26
+ parsedArgvOptions: {
27
+ specDirectory?: string;
28
+ };
29
+ }, shouldReportStep: (parsedTestStep: IParsedTestStep) => boolean);
30
+ parseTestCaseStarted(message: TestCaseStarted): DomainEvent[];
31
+ parseTestStepStarted(message: TestStepStarted): DomainEvent[];
32
+ parseTestStepFinished(message: TestStepStarted): DomainEvent[];
33
+ parseTestCaseFinished(message: TestCaseFinished): DomainEvent[];
34
+ private extract;
35
+ private scenarioDetailsFor;
36
+ private outlineFrom;
37
+ private scenarioFrom;
38
+ private stepFrom;
39
+ private parseTestCaseAttempt;
40
+ private activityDetailsFor;
41
+ private outcomeFrom;
42
+ private scenarioOutcomeFrom;
43
+ private absolutePathFrom;
44
+ }
45
+ //# sourceMappingURL=CucumberMessagesParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CucumberMessagesParser.d.ts","sourceRoot":"","sources":["../../../../src/listeners/messages/parser/CucumberMessagesParser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIR,gBAAgB,EAChB,eAAe,EAGf,eAAe,EAClB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,KAAK,EACR,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAOvC,OAAO,KAAK,EACR,WAAW,EAAC,MAAM,0BAA0B,CAAC;AAyCjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAoB,MAAM,sBAAsB,CAAC;AAIlG;;GAEG;AACH,qBAAa,sBAAsB;IAa3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAQjC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IArBrC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA2B;IAE7D,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,qBAAqB,CAAgB;IAE7C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAM;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAM;IACrC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAM;IACzC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;gBAGzC,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,GAAG,EAAM,wEAAwE;IACpH,+BAA+B,EAAE;QAC7B,GAAG,EAAE,MAAM,CAAC;QACZ,kBAAkB,EAAE,kBAAkB,CAAC;QACvC,cAAc,EAAE,GAAG,CAAC;QACpB,kBAAkB,EAAE,GAAG,CAAC;QACxB,iBAAiB,EAAE;YAAE,aAAa,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KACjD,EACgB,gBAAgB,EAAE,CAAC,cAAc,EAAE,eAAe,KAAK,OAAO;IAYnF,oBAAoB,CAAC,OAAO,EAAE,eAAe,GAAG,WAAW,EAAE;IAkC7D,oBAAoB,CAAC,OAAO,EAAE,eAAe,GAAG,WAAW,EAAE;IAgB7D,qBAAqB,CAAC,OAAO,EAAE,eAAe,GAAG,WAAW,EAAE;IAc9D,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,GAAG,WAAW,EAAE;IAmB/D,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,WAAW;IAyCnB,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,QAAQ;IAUhB,OAAO,CAAC,oBAAoB;IAiB5B,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,WAAW;IA4CnB,OAAO,CAAC,mBAAmB;IA0B3B,OAAO,CAAC,gBAAgB;CAG3B"}
@@ -0,0 +1,211 @@
1
+ import { TestStepResultStatus } from '@cucumber/messages';
2
+ import { AssertionError, ErrorSerialiser, ImplementationPendingError, TestCompromisedError } from '@serenity-js/core';
3
+ import { BusinessRuleDetected, FeatureNarrativeDetected, RetryableSceneDetected, SceneDescriptionDetected, SceneFinished, SceneParametersDetected, SceneSequenceDetected, SceneStarts, SceneTagged, SceneTemplateDetected, TaskFinished, TaskStarts, TestRunnerDetected, } from '@serenity-js/core/events';
4
+ import { FileSystem, FileSystemLocation, Path } from '@serenity-js/core/io';
5
+ import { RequirementsHierarchy } from '@serenity-js/core/io';
6
+ import { ActivityDetails, ArbitraryTag, BusinessRule, Category, Description, ExecutionCompromised, ExecutionFailedWithAssertionError, ExecutionFailedWithError, ExecutionRetriedTag, ExecutionSkipped, ExecutionSuccessful, ImplementationPending, Name, ScenarioDetails, ScenarioParameters, Tags, } from '@serenity-js/core/model';
7
+ import { TestStepFormatter } from './TestStepFormatter.js';
8
+ /**
9
+ * @package
10
+ */
11
+ export class CucumberMessagesParser {
12
+ serenity;
13
+ formatterHelpers;
14
+ shouldReportStep;
15
+ testStepFormatter = new TestStepFormatter();
16
+ currentScenario;
17
+ currentStepActivityId;
18
+ cwd;
19
+ eventDataCollector;
20
+ snippetBuilder;
21
+ supportCodeLibrary;
22
+ requirementsHierarchy;
23
+ constructor(serenity, formatterHelpers, // eslint-disable-line @typescript-eslint/explicit-module-boundary-types
24
+ formatterOptionsAndDependencies, shouldReportStep) {
25
+ this.serenity = serenity;
26
+ this.formatterHelpers = formatterHelpers;
27
+ this.shouldReportStep = shouldReportStep;
28
+ this.cwd = formatterOptionsAndDependencies.cwd;
29
+ this.eventDataCollector = formatterOptionsAndDependencies.eventDataCollector;
30
+ this.snippetBuilder = formatterOptionsAndDependencies.snippetBuilder;
31
+ this.supportCodeLibrary = formatterOptionsAndDependencies.supportCodeLibrary;
32
+ this.requirementsHierarchy = new RequirementsHierarchy(new FileSystem(Path.from(formatterOptionsAndDependencies.cwd)), formatterOptionsAndDependencies.parsedArgvOptions?.specDirectory && Path.from(formatterOptionsAndDependencies.parsedArgvOptions?.specDirectory));
33
+ }
34
+ parseTestCaseStarted(message) {
35
+ const testCaseAttempt = this.eventDataCollector.getTestCaseAttempt(message.id), currentSceneId = this.serenity.assignNewSceneId();
36
+ this.currentScenario = this.scenarioDetailsFor(testCaseAttempt.gherkinDocument, testCaseAttempt.pickle, this.formatterHelpers.PickleParser.getPickleLocation(testCaseAttempt));
37
+ return [
38
+ ...this.extract(this.outlineFrom(testCaseAttempt), (outline) => [
39
+ new SceneSequenceDetected(currentSceneId, outline.details, this.serenity.currentTime()),
40
+ new SceneTemplateDetected(currentSceneId, outline.template, this.serenity.currentTime()),
41
+ new SceneParametersDetected(currentSceneId, this.currentScenario, outline.parameters, this.serenity.currentTime()),
42
+ ]),
43
+ ...this.extract(this.scenarioFrom(testCaseAttempt), ({ featureDescription, rule, scenarioDescription, tags, testRunnerName }) => [
44
+ new SceneStarts(currentSceneId, this.currentScenario, this.serenity.currentTime()),
45
+ featureDescription && new FeatureNarrativeDetected(currentSceneId, featureDescription, this.serenity.currentTime()),
46
+ new TestRunnerDetected(currentSceneId, testRunnerName, this.serenity.currentTime()),
47
+ !!scenarioDescription && new SceneDescriptionDetected(currentSceneId, scenarioDescription, this.serenity.currentTime()),
48
+ !!rule && new BusinessRuleDetected(currentSceneId, this.currentScenario, rule, this.serenity.currentTime()),
49
+ ...tags.map(tag => new SceneTagged(currentSceneId, tag, this.serenity.currentTime())),
50
+ ]),
51
+ ];
52
+ }
53
+ parseTestStepStarted(message) {
54
+ return this.extract(this.stepFrom(message), (step) => {
55
+ if (this.shouldReportStep(step)) {
56
+ const activityDetails = this.activityDetailsFor(step);
57
+ this.currentStepActivityId = this.serenity.assignNewActivityId(activityDetails);
58
+ return new TaskStarts(this.serenity.currentSceneId(), this.currentStepActivityId, this.activityDetailsFor(step), this.serenity.currentTime());
59
+ }
60
+ });
61
+ }
62
+ parseTestStepFinished(message) {
63
+ return this.extract(this.stepFrom(message), (step) => {
64
+ if (this.shouldReportStep(step)) {
65
+ return new TaskFinished(this.serenity.currentSceneId(), this.currentStepActivityId, this.activityDetailsFor(step), this.outcomeFrom(step.result, step), this.serenity.currentTime());
66
+ }
67
+ });
68
+ }
69
+ parseTestCaseFinished(message) {
70
+ const testCaseAttempt = this.eventDataCollector.getTestCaseAttempt(message.testCaseStartedId), currentSceneId = this.serenity.currentSceneId();
71
+ return this.extract(this.scenarioOutcomeFrom(testCaseAttempt), ({ outcome, willBeRetried, tags }) => [
72
+ willBeRetried ? new RetryableSceneDetected(currentSceneId, this.serenity.currentTime()) : undefined,
73
+ ...tags.map(tag => new SceneTagged(currentSceneId, tag, this.serenity.currentTime())),
74
+ new SceneFinished(currentSceneId, this.currentScenario, outcome, this.serenity.currentTime()),
75
+ ]);
76
+ }
77
+ // ---
78
+ extract(maybeValue, fn) {
79
+ return (maybeValue === undefined)
80
+ ? []
81
+ : [].concat(fn(maybeValue)).filter(item => !!item);
82
+ }
83
+ scenarioDetailsFor(gherkinDocument, pickle, location) {
84
+ return new ScenarioDetails(new Name(pickle.name), new Category(gherkinDocument.feature.name), new FileSystemLocation(this.absolutePathFrom(gherkinDocument.uri), location.line, location.column));
85
+ }
86
+ outlineFrom(testCaseAttempt) {
87
+ const { gherkinDocument, pickle } = testCaseAttempt, gherkinScenarioMap = this.formatterHelpers.GherkinDocumentParser.getGherkinScenarioMap(gherkinDocument);
88
+ if (gherkinScenarioMap[pickle.astNodeIds[0]].examples.length === 0) {
89
+ return; // this is not an outline, skip it
90
+ }
91
+ const outline = gherkinScenarioMap[pickle.astNodeIds[0]];
92
+ const details = this.scenarioDetailsFor(gherkinDocument, outline, outline.location);
93
+ const template = new Description(outline.steps.map(step => this.testStepFormatter.format(step.keyword, step.text, step)).join('\n'));
94
+ const examples = flatten(outline.examples.map(exampleSet => exampleSet.tableBody.map(row => ({
95
+ header: exampleSet.tableHeader,
96
+ row,
97
+ name: exampleSet.name,
98
+ description: exampleSet.description,
99
+ })))).map((example) => ({
100
+ rowId: example.row.id,
101
+ name: example.name.trim(),
102
+ description: example.description.trim(),
103
+ values: example.header.cells
104
+ .map(cell => cell.value)
105
+ .reduce((values, header, i) => {
106
+ values[header] = example.row.cells[i].value;
107
+ return values;
108
+ }, {}),
109
+ }));
110
+ const parameters = examples.find(example => example.rowId === pickle.astNodeIds.at(-1));
111
+ return {
112
+ details, template, parameters: new ScenarioParameters(new Name(parameters.name), new Description(parameters.description), parameters.values),
113
+ };
114
+ }
115
+ scenarioFrom({ gherkinDocument, pickle }) {
116
+ const gherkinScenarioMap = this.formatterHelpers.GherkinDocumentParser.getGherkinScenarioMap(gherkinDocument), gherkinExampleRuleMap = this.formatterHelpers.GherkinDocumentParser.getGherkinExampleRuleMap(gherkinDocument), scenarioDescription = this.formatterHelpers.PickleParser.getScenarioDescription({ gherkinScenarioMap, pickle }), scenarioTags = flatten(pickle.tags.map(tag => Tags.from(tag.name))), rule = gherkinExampleRuleMap[pickle.astNodeIds[0]];
117
+ return {
118
+ featureDescription: gherkinDocument.feature.description && new Description(gherkinDocument.feature.description),
119
+ scenarioDescription: scenarioDescription && new Description(scenarioDescription),
120
+ rule: rule && new BusinessRule(new Name(rule.name), new Description(rule.description.trim())),
121
+ testRunnerName: new Name('JS'),
122
+ tags: this.requirementsHierarchy.requirementTagsFor(Path.from(this.cwd).resolve(Path.from(gherkinDocument.uri)), gherkinDocument.feature.name).concat(scenarioTags),
123
+ };
124
+ }
125
+ stepFrom(message) {
126
+ const { testCaseStartedId, testStepId } = message;
127
+ const testCaseAttempt = this.eventDataCollector.getTestCaseAttempt(testCaseStartedId);
128
+ const index = testCaseAttempt.testCase.testSteps.findIndex(step => step.id === testStepId);
129
+ return this.parseTestCaseAttempt(testCaseAttempt).testSteps[index];
130
+ }
131
+ parseTestCaseAttempt(testCaseAttempt) {
132
+ // workaround for a bug in Cucumber 7, that's fixed in Cucumber 8 by https://github.com/cucumber/cucumber-js/pull/1531
133
+ testCaseAttempt.testCase.testSteps.forEach(step => {
134
+ if (!testCaseAttempt.stepResults[step.id]) {
135
+ testCaseAttempt.stepResults[step.id] = { duration: { seconds: 0, nanos: 0 }, status: TestStepResultStatus.UNKNOWN, willBeRetried: false };
136
+ }
137
+ });
138
+ // ---
139
+ return this.formatterHelpers.parseTestCaseAttempt({
140
+ cwd: this.cwd,
141
+ testCaseAttempt,
142
+ snippetBuilder: this.snippetBuilder,
143
+ supportCodeLibrary: this.supportCodeLibrary,
144
+ });
145
+ }
146
+ activityDetailsFor(parsedTestStep) {
147
+ const location = parsedTestStep.sourceLocation || parsedTestStep.actionLocation;
148
+ return new ActivityDetails(new Name(this.testStepFormatter.format(parsedTestStep.keyword, parsedTestStep.text || parsedTestStep.name, parsedTestStep.argument)), new FileSystemLocation(this.absolutePathFrom(location.uri), location.line));
149
+ }
150
+ outcomeFrom(worstResult, ...steps) {
151
+ const Status = TestStepResultStatus;
152
+ // todo: how does it treat failed but retryable scenarios?
153
+ switch (worstResult.status) {
154
+ case Status.SKIPPED:
155
+ return new ExecutionSkipped();
156
+ case Status.UNDEFINED: {
157
+ const snippets = steps
158
+ .filter(step => step.result.status === Status.UNDEFINED)
159
+ .map(step => step.snippet);
160
+ const message = snippets.length > 0
161
+ ? ['Step implementation missing:', ...snippets].join('\n\n')
162
+ : 'Step implementation missing';
163
+ return new ImplementationPending(new ImplementationPendingError(message));
164
+ }
165
+ case Status.PENDING:
166
+ return new ImplementationPending(new ImplementationPendingError('Step implementation pending'));
167
+ case Status.AMBIGUOUS:
168
+ case Status.FAILED: {
169
+ const error = ErrorSerialiser.deserialiseFromStackTrace(worstResult.message);
170
+ if (error instanceof AssertionError) {
171
+ return new ExecutionFailedWithAssertionError(error);
172
+ }
173
+ if (error instanceof TestCompromisedError) {
174
+ return new ExecutionCompromised(error);
175
+ }
176
+ return new ExecutionFailedWithError(error);
177
+ }
178
+ case Status.UNKNOWN:
179
+ // ignore
180
+ case Status.PASSED:
181
+ return new ExecutionSuccessful();
182
+ }
183
+ }
184
+ scenarioOutcomeFrom(testCaseAttempt) {
185
+ const parsed = this.formatterHelpers.parseTestCaseAttempt({
186
+ cwd: this.cwd,
187
+ snippetBuilder: this.snippetBuilder,
188
+ supportCodeLibrary: this.supportCodeLibrary,
189
+ testCaseAttempt
190
+ });
191
+ const worstStepResult = parsed.testCase.worstTestStepResult;
192
+ const willBeRetried = worstStepResult.willBeRetried || // Cucumber 7
193
+ testCaseAttempt.willBeRetried; // Cucumber 8
194
+ const outcome = this.outcomeFrom(worstStepResult, ...parsed.testSteps);
195
+ const tags = [];
196
+ if (testCaseAttempt.attempt > 0 || willBeRetried) {
197
+ tags.push(new ArbitraryTag('retried'));
198
+ }
199
+ if (testCaseAttempt.attempt > 0) {
200
+ tags.push(new ExecutionRetriedTag(testCaseAttempt.attempt));
201
+ }
202
+ return { outcome, willBeRetried, tags };
203
+ }
204
+ absolutePathFrom(relativePath) {
205
+ return Path.from(this.cwd).resolve(Path.from(relativePath));
206
+ }
207
+ }
208
+ function flatten(listOfLists) {
209
+ return listOfLists.reduce((acc, current) => acc.concat(current), []);
210
+ }
211
+ //# sourceMappingURL=CucumberMessagesParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CucumberMessagesParser.js","sourceRoot":"","sources":["../../../../src/listeners/messages/parser/CucumberMessagesParser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { PickleDocString, PickleTable } from '@cucumber/messages';
2
+ /**
3
+ * @package
4
+ */
5
+ export declare class TestStepFormatter {
6
+ format(keyword: string, text?: string, argument?: {
7
+ docString?: PickleDocString;
8
+ dataTable?: PickleTable;
9
+ }): string;
10
+ private formatStepArgument;
11
+ private formatDocString;
12
+ private formatDataTable;
13
+ }
14
+ //# sourceMappingURL=TestStepFormatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TestStepFormatter.d.ts","sourceRoot":"","sources":["../../../../src/listeners/messages/parser/TestStepFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGvE;;GAEG;AACH,qBAAa,iBAAiB;IAEnB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,SAAK,EAAE,QAAQ,CAAC,EAAE;QACjD,SAAS,CAAC,EAAE,eAAe,CAAC;QAC5B,SAAS,CAAC,EAAE,WAAW,CAAC;KAC3B,GAAG,MAAM;IAYV,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,eAAe;CAoC1B"}
@@ -0,0 +1,61 @@
1
+ import { createRequire as _createRequire } from "module";
2
+ const __require = _createRequire(import.meta.url);
3
+ const Table = __require("cli-table3");
4
+ /**
5
+ * @package
6
+ */
7
+ export class TestStepFormatter {
8
+ format(keyword, text = '', argument) {
9
+ return [
10
+ // 'Given ', 'When ' and 'Then ' steps end with a space in all the supported languages - https://github.com/cucumber/gherkin/blob/fb263beaa86dd371f073277b0cc42604a82c510b/gherkin-languages.json
11
+ // 'Before' does not have a trailing space
12
+ keyword.endsWith(' ') || text === ''
13
+ ? keyword
14
+ : `${keyword}: `,
15
+ text,
16
+ argument && this.formatStepArgument(argument),
17
+ ].join('').trim();
18
+ }
19
+ formatStepArgument(argument) {
20
+ if (argument.docString) {
21
+ return this.formatDocString(argument.docString);
22
+ }
23
+ if (argument.dataTable) {
24
+ return this.formatDataTable(argument.dataTable);
25
+ }
26
+ return '';
27
+ }
28
+ formatDocString(docString) {
29
+ return `\n${docString.content}`;
30
+ }
31
+ formatDataTable(dataTable) {
32
+ const table = new Table({
33
+ chars: {
34
+ bottom: '',
35
+ 'bottom-left': '',
36
+ 'bottom-mid': '',
37
+ 'bottom-right': '',
38
+ left: '|',
39
+ 'left-mid': '',
40
+ mid: '',
41
+ 'mid-mid': '',
42
+ middle: '|',
43
+ right: '|',
44
+ 'right-mid': '',
45
+ top: '',
46
+ 'top-left': '',
47
+ 'top-mid': '',
48
+ 'top-right': '',
49
+ },
50
+ style: {
51
+ border: [],
52
+ 'padding-left': 1,
53
+ 'padding-right': 1,
54
+ },
55
+ });
56
+ const rows = dataTable.rows.map(row => row.cells.map(cell => cell.value.replaceAll('\\\\', '\\\\\\\\').replaceAll('\\n', '\\\\n')));
57
+ table.push(...rows);
58
+ return `\n${table.toString()}`;
59
+ }
60
+ }
61
+ //# sourceMappingURL=TestStepFormatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TestStepFormatter.js","sourceRoot":"","sources":["../../../../src/listeners/messages/parser/TestStepFormatter.ts"],"names":[],"mappings":";;AACA,sCAAqC;AAErC;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAEnB,MAAM,CAAC,OAAe,EAAE,IAAI,GAAG,EAAE,EAAE,QAGzC;QACG,OAAO;YACH,iMAAiM;YACjM,0CAA0C;YAC1C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,KAAK,EAAE;gBAChC,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,GAAI,OAAQ,IAAI;YACtB,IAAI;YACJ,QAAQ,IAAI,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC;SAChD,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;IAEO,kBAAkB,CAAC,QAG1B;QAEG,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAEO,eAAe,CAAC,SAA0B;QAC9C,OAAO,KAAM,SAAS,CAAC,OAAQ,EAAE,CAAC;IACtC,CAAC;IAEO,eAAe,CAAC,SAAsB;QAC1C,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;YACpB,KAAK,EAAE;gBACH,MAAM,EAAE,EAAE;gBACV,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE,EAAE;gBAChB,cAAc,EAAE,EAAE;gBAClB,IAAI,EAAE,GAAG;gBACT,UAAU,EAAE,EAAE;gBACd,GAAG,EAAE,EAAE;gBACP,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE,GAAG;gBACX,KAAK,EAAE,GAAG;gBACV,WAAW,EAAE,EAAE;gBACf,GAAG,EAAE,EAAE;gBACP,UAAU,EAAE,EAAE;gBACd,SAAS,EAAE,EAAE;gBACb,WAAW,EAAE,EAAE;aAClB;YACD,KAAK,EAAE;gBACH,MAAM,EAAE,EAAE;gBACV,cAAc,EAAE,CAAC;gBACjB,eAAe,EAAE,CAAC;aACrB;SACJ,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAClC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CACjB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CACvE,CACJ,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAEpB,OAAO,KAAM,KAAK,CAAC,QAAQ,EAAG,EAAE,CAAC;IACrC,CAAC;CACJ"}
@@ -0,0 +1,9 @@
1
+ import type { BusinessRule, Description, Name, Tag } from '@serenity-js/core/model';
2
+ export interface ExtractedScenario {
3
+ featureDescription?: Description;
4
+ rule?: BusinessRule;
5
+ scenarioDescription?: Description;
6
+ testRunnerName: Name;
7
+ tags: Tag[];
8
+ }
9
+ //# sourceMappingURL=ExtractedScenario.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExtractedScenario.d.ts","sourceRoot":"","sources":["../../../../../src/listeners/messages/parser/types/ExtractedScenario.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAEpF,MAAM,WAAW,iBAAiB;IAC9B,kBAAkB,CAAC,EAAE,WAAW,CAAC;IACjC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,mBAAmB,CAAC,EAAE,WAAW,CAAC;IAClC,cAAc,EAAE,IAAI,CAAC;IACrB,IAAI,EAAE,GAAG,EAAE,CAAC;CACf"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ExtractedScenario.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExtractedScenario.js","sourceRoot":"","sources":["../../../../../src/listeners/messages/parser/types/ExtractedScenario.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import type { Description, ScenarioDetails, ScenarioParameters } from '@serenity-js/core/model';
2
+ export interface ExtractedScenarioOutline {
3
+ details: ScenarioDetails;
4
+ template: Description;
5
+ parameters: ScenarioParameters;
6
+ }
7
+ //# sourceMappingURL=ExtractedScenarioOutline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExtractedScenarioOutline.d.ts","sourceRoot":"","sources":["../../../../../src/listeners/messages/parser/types/ExtractedScenarioOutline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAEhG,MAAM,WAAW,wBAAwB;IACrC,OAAO,EAAE,eAAe,CAAC;IACzB,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,kBAAkB,CAAC;CAClC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ExtractedScenarioOutline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExtractedScenarioOutline.js","sourceRoot":"","sources":["../../../../../src/listeners/messages/parser/types/ExtractedScenarioOutline.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export * from './ExtractedScenario.js';
2
+ export * from './ExtractedScenarioOutline.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/listeners/messages/parser/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './ExtractedScenario.js';
2
+ export * from './ExtractedScenarioOutline.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/listeners/messages/parser/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC"}
@@ -0,0 +1,63 @@
1
+ import type { Attachment, Envelope, GherkinDocument, Pickle, PickleStepArgument, TestCase, TestCaseFinished, TestCaseStarted, TestStepFinished, TestStepResult, UndefinedParameterType } from '@cucumber/messages';
2
+ /**
3
+ * https://github.com/cucumber/cucumber-js/blob/c2227edfab6016dc6eac265778d13fb1ccd9a2fc/src/formatter/helpers/event_data_collector.ts#L14
4
+ *
5
+ * @package
6
+ */
7
+ export interface ITestCaseAttempt {
8
+ attempt: number;
9
+ gherkinDocument: GherkinDocument;
10
+ pickle: Pickle;
11
+ stepAttachments: {
12
+ [key: string]: Attachment[];
13
+ };
14
+ stepResults: {
15
+ [key: string]: TestStepResult;
16
+ };
17
+ testCase: TestCase;
18
+ worstTestStepResult: TestStepResult;
19
+ willBeRetried?: boolean;
20
+ }
21
+ /**
22
+ * https://github.com/cucumber/cucumber-js/blob/c2227edfab6016dc6eac265778d13fb1ccd9a2fc/src/formatter/helpers/event_data_collector.ts#L25
23
+ *
24
+ * @package
25
+ */
26
+ export interface EventDataCollector {
27
+ readonly undefinedParameterTypes: UndefinedParameterType[];
28
+ getGherkinDocument(uri: string): GherkinDocument;
29
+ getPickle(pickleId: string): Pickle;
30
+ getTestCaseAttempts(): ITestCaseAttempt[];
31
+ getTestCaseAttempt(testCaseStartedId: string): ITestCaseAttempt;
32
+ parseEnvelope(envelope: Envelope): void;
33
+ initTestCaseAttempt(testCaseStarted: TestCaseStarted): void;
34
+ storeAttachment({ testCaseStartedId, testStepId, body, mediaType, }: Attachment): void;
35
+ storeTestStepResult({ testCaseStartedId, testStepId, testStepResult, }: TestStepFinished): void;
36
+ storeTestCaseResult({ testCaseStartedId }: TestCaseFinished): void;
37
+ }
38
+ /**
39
+ * https://github.com/cucumber/cucumber-js/blob/c2227edfab6016dc6eac265778d13fb1ccd9a2fc/src/types/index.ts#L1
40
+ *
41
+ * @package
42
+ */
43
+ export interface ILineAndUri {
44
+ line: number;
45
+ uri: string;
46
+ }
47
+ /**
48
+ * https://github.com/cucumber/cucumber-js/blob/c2227edfab6016dc6eac265778d13fb1ccd9a2fc/src/formatter/helpers/test_case_attempt_parser.ts#L16
49
+ *
50
+ * @package
51
+ */
52
+ export interface IParsedTestStep {
53
+ actionLocation?: ILineAndUri;
54
+ argument?: PickleStepArgument;
55
+ attachments: Attachment[];
56
+ keyword: string;
57
+ name?: string;
58
+ result: TestStepResult;
59
+ snippet?: string;
60
+ sourceLocation?: ILineAndUri;
61
+ text?: string;
62
+ }
63
+ //# sourceMappingURL=cucumber.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cucumber.d.ts","sourceRoot":"","sources":["../../../../src/listeners/messages/types/cucumber.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACR,UAAU,EACV,QAAQ,EACR,eAAe,EACf,MAAM,EACN,kBAAkB,EAClB,QAAQ,EACR,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACzB,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,eAAe,CAAC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE;QAAE,CAAE,GAAG,EAAE,MAAM,GAAI,UAAU,EAAE,CAAA;KAAE,CAAC;IACnD,WAAW,EAAE;QAAE,CAAE,GAAG,EAAE,MAAM,GAAI,cAAc,CAAA;KAAE,CAAC;IACjD,QAAQ,EAAE,QAAQ,CAAC;IACnB,mBAAmB,EAAE,cAAc,CAAC;IACpC,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,uBAAuB,EAAE,sBAAsB,EAAE,CAAC;IAC3D,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAC;IACjD,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IACpC,mBAAmB,IAAI,gBAAgB,EAAE,CAAC;IAC1C,kBAAkB,CAAC,iBAAiB,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAChE,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IACxC,mBAAmB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI,CAAC;IAC5D,eAAe,CAAC,EAAE,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,EAAE,UAAU,GAAG,IAAI,CAAC;IACvF,mBAAmB,CAAC,EAAE,iBAAiB,EAAE,UAAU,EAAE,cAAc,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChG,mBAAmB,CAAC,EAAE,iBAAiB,EAAE,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACtE;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC5B,cAAc,CAAC,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,WAAW,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,7 @@
1
+ /*
2
+ * Cucumber interfaces duplicated here to avoid having to depend on the
3
+ * '@cucumber/cucumber' package, which won't be available on projects
4
+ * using older versions.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=cucumber.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cucumber.js","sourceRoot":"","sources":["../../../../src/listeners/messages/types/cucumber.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}