@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
package/CHANGELOG.md CHANGED
@@ -3,6 +3,18 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.42.0](https://github.com/serenity-js/serenity-js/compare/v3.41.2...v3.42.0) (2026-03-19)
7
+
8
+
9
+ ### Features
10
+
11
+ * **core:** add dual ESM/CJS build support for Wave 2 packages ([0e2631c](https://github.com/serenity-js/serenity-js/commit/0e2631ca7cdbe68da7feec343eaf4f7fe9bb64d6))
12
+ * **core:** add ESM/CJS dual build support for web packages ([94c5a64](https://github.com/serenity-js/serenity-js/commit/94c5a6423dc369477bbabbacee5a54f8fca20209))
13
+
14
+
15
+
16
+
17
+
6
18
  ## [3.41.2](https://github.com/serenity-js/serenity-js/compare/v3.41.1...v3.41.2) (2026-03-05)
7
19
 
8
20
 
@@ -0,0 +1,54 @@
1
+ import type { TestRunnerAdapter } from '@serenity-js/core/adapter';
2
+ import type { FileSystem, ModuleLoader } from '@serenity-js/core/io';
3
+ import type { Outcome } from '@serenity-js/core/model';
4
+ import type { CucumberConfig } from './CucumberConfig.js';
5
+ import type { SerenityFormatterOutput } from './output/index.js';
6
+ /**
7
+ * Allows for programmatic execution of Cucumber test scenarios.
8
+ *
9
+ * ## Learn more
10
+ * - [`TestRunnerAdapter`](https://serenity-js.org/api/core-adapter/interface/TestRunnerAdapter/)
11
+ *
12
+ * @group Integration
13
+ */
14
+ export declare class CucumberCLIAdapter implements TestRunnerAdapter {
15
+ private readonly loader;
16
+ private readonly output;
17
+ private pathsToScenarios;
18
+ private readonly options;
19
+ constructor(config: CucumberConfig, loader: ModuleLoader, fileSystem: FileSystem, output: SerenityFormatterOutput);
20
+ /**
21
+ * Scenario success threshold for this test runner, calculated based on [`CucumberConfig`](https://serenity-js.org/api/cucumber-adapter/interface/CucumberConfig/)
22
+ */
23
+ successThreshold(): Outcome | {
24
+ Code: number;
25
+ };
26
+ /**
27
+ * Loads feature files.
28
+ *
29
+ * @param pathsToScenarios
30
+ * Absolute or relative paths to feature files
31
+ */
32
+ load(pathsToScenarios: string[]): Promise<void>;
33
+ /**
34
+ * Returns the number of loaded scenarios
35
+ *
36
+ * @throws [`LogicError`](https://serenity-js.org/api/core/class/LogicError/)
37
+ * If called before `load`
38
+ */
39
+ scenarioCount(): number;
40
+ /**
41
+ * Instructs Cucumber to execute feature files located at `pathsToScenarios`
42
+ */
43
+ run(): Promise<void>;
44
+ private runScenarios;
45
+ private runWithCucumber10;
46
+ private runWithCucumber8JavaScriptApi;
47
+ private runWithCucumberApi;
48
+ private runWithCucumber8;
49
+ private runWithCucumber7;
50
+ private runWithCucumber3to6;
51
+ private runWithCucumber2;
52
+ private runWithCucumber0to1;
53
+ }
54
+ //# sourceMappingURL=CucumberCLIAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CucumberCLIAdapter.d.ts","sourceRoot":"","sources":["../../src/adapter/CucumberCLIAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAoB,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAEnF;;;;;;;GAOG;AACH,qBAAa,kBAAmB,YAAW,iBAAiB;IAQpD,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAR3B,OAAO,CAAC,gBAAgB,CAAgB;IAExC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;gBAGtC,MAAM,EAAE,cAAc,EACL,MAAM,EAAE,YAAY,EACrC,UAAU,EAAE,UAAU,EACL,MAAM,EAAE,uBAAuB;IAKpD;;OAEG;IACH,gBAAgB,IAAI,OAAO,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;IAM9C;;;;;OAKG;IACG,IAAI,CAAC,gBAAgB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAYrD;;;;;OAKG;IACH,aAAa,IAAI,MAAM;IAYvB;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAU1B,OAAO,CAAC,YAAY;YAkCN,iBAAiB;YAcjB,6BAA6B;YAK7B,kBAAkB;IAmChC,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,mBAAmB;CAO9B"}
@@ -0,0 +1,215 @@
1
+ import path from 'node:path';
2
+ import { FileFinder, Path, Version } from '@serenity-js/core/io';
3
+ import { ExecutionIgnored, ImplementationPending } from '@serenity-js/core/model';
4
+ import { CucumberOptions } from './CucumberOptions.js';
5
+ /**
6
+ * Allows for programmatic execution of Cucumber test scenarios.
7
+ *
8
+ * ## Learn more
9
+ * - [`TestRunnerAdapter`](https://serenity-js.org/api/core-adapter/interface/TestRunnerAdapter/)
10
+ *
11
+ * @group Integration
12
+ */
13
+ export class CucumberCLIAdapter {
14
+ loader;
15
+ output;
16
+ pathsToScenarios = [];
17
+ options;
18
+ constructor(config, loader, fileSystem, output) {
19
+ this.loader = loader;
20
+ this.output = output;
21
+ this.options = new CucumberOptions(new FileFinder(Path.from(this.loader.cwd)), fileSystem, config);
22
+ }
23
+ /**
24
+ * Scenario success threshold for this test runner, calculated based on [`CucumberConfig`](https://serenity-js.org/api/cucumber-adapter/interface/CucumberConfig/)
25
+ */
26
+ successThreshold() {
27
+ return this.options.isStrict()
28
+ ? ExecutionIgnored
29
+ : ImplementationPending;
30
+ }
31
+ /**
32
+ * Loads feature files.
33
+ *
34
+ * @param pathsToScenarios
35
+ * Absolute or relative paths to feature files
36
+ */
37
+ async load(pathsToScenarios) {
38
+ this.pathsToScenarios = pathsToScenarios.map(maybeAbsolutePathToScenario => {
39
+ // Ensure paths provided to Cucumber are relative
40
+ // see https://github.com/cucumber/cucumber-js/issues/1900
41
+ return path.isAbsolute(maybeAbsolutePathToScenario)
42
+ ? path.relative(this.loader.cwd, maybeAbsolutePathToScenario)
43
+ : maybeAbsolutePathToScenario;
44
+ });
45
+ // todo: implement loading, so parsing feature files to determine how many executable we have
46
+ }
47
+ /**
48
+ * Returns the number of loaded scenarios
49
+ *
50
+ * @throws [`LogicError`](https://serenity-js.org/api/core/class/LogicError/)
51
+ * If called before `load`
52
+ */
53
+ scenarioCount() {
54
+ // todo: we should count the actual executable scenarios to avoid launching a WebdriverIO worked
55
+ // for a feature file without any scenarios.
56
+ return this.pathsToScenarios.length;
57
+ // if (this.totalScenarios === undefined) {
58
+ // throw new LogicError('Make sure to call `load` before calling `scenarioCount`');
59
+ // }
60
+ //
61
+ // return this.totalScenarios;
62
+ }
63
+ /**
64
+ * Instructs Cucumber to execute feature files located at `pathsToScenarios`
65
+ */
66
+ async run() {
67
+ const version = this.loader.hasAvailable('@cucumber/cucumber')
68
+ ? this.loader.versionOf('@cucumber/cucumber')
69
+ : this.loader.versionOf('cucumber');
70
+ const serenityListener = this.loader.resolve('@serenity-js/cucumber');
71
+ return this.runScenarios(version, serenityListener, this.pathsToScenarios);
72
+ }
73
+ runScenarios(version, serenityListener, pathsToScenarios) {
74
+ if (version.isAtLeast(new Version('10.0.0'))) {
75
+ return this.runWithCucumber10(serenityListener, pathsToScenarios);
76
+ }
77
+ if (version.isAtLeast(new Version('9.0.0'))) {
78
+ return this.runWithCucumber8JavaScriptApi(serenityListener, pathsToScenarios);
79
+ }
80
+ if (version.isAtLeast(new Version('8.7.0'))) {
81
+ return this.runWithCucumber8JavaScriptApi(serenityListener, pathsToScenarios);
82
+ }
83
+ const argv = this.options.asArgumentsForCucumber(version);
84
+ if (version.isAtLeast(new Version('8.0.0'))) {
85
+ return this.runWithCucumber8(argv, serenityListener, pathsToScenarios);
86
+ }
87
+ if (version.isAtLeast(new Version('7.0.0'))) {
88
+ return this.runWithCucumber7(argv, serenityListener, pathsToScenarios);
89
+ }
90
+ if (version.isAtLeast(new Version('3.0.0'))) {
91
+ return this.runWithCucumber3to6(argv, serenityListener, pathsToScenarios);
92
+ }
93
+ if (version.isAtLeast(new Version('2.0.0'))) {
94
+ return this.runWithCucumber2(argv, serenityListener, pathsToScenarios);
95
+ }
96
+ return this.runWithCucumber0to1(argv, serenityListener, pathsToScenarios);
97
+ }
98
+ async runWithCucumber10(pathToSerenityListener, pathsToScenarios) {
99
+ const output = this.output.get();
100
+ const serenityListenerUrl = Path.from(pathToSerenityListener).toFileURL().href;
101
+ const outputUrl = output.value() ?? undefined;
102
+ // https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md#ambiguous-colons-in-formats
103
+ // https://github.com/cucumber/cucumber-js/issues/2326#issuecomment-1711701382
104
+ return await this.runWithCucumberApi([
105
+ serenityListenerUrl,
106
+ outputUrl,
107
+ ], pathsToScenarios, output);
108
+ }
109
+ // https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md
110
+ async runWithCucumber8JavaScriptApi(pathToSerenityListener, pathsToScenarios) {
111
+ const output = this.output.get();
112
+ return await this.runWithCucumberApi(`${pathToSerenityListener}:${output.value()}`, pathsToScenarios, output);
113
+ }
114
+ async runWithCucumberApi(serenityFormatter, pathsToScenarios, output) {
115
+ const configuration = this.options.asCucumberApiConfiguration();
116
+ const { loadConfiguration, loadSupport, runCucumber } = this.loader.require('@cucumber/cucumber/api');
117
+ // https://github.com/cucumber/cucumber-js/blob/main/src/api/environment.ts
118
+ const environment = {
119
+ cwd: this.loader.cwd,
120
+ stdout: process.stdout,
121
+ stderr: process.stderr,
122
+ env: process.env,
123
+ debug: false,
124
+ };
125
+ configuration.format.push(serenityFormatter);
126
+ configuration.paths = pathsToScenarios;
127
+ // https://github.com/cucumber/cucumber-js/blob/main/src/configuration/types.ts
128
+ const { runConfiguration } = await loadConfiguration({ provided: configuration }, environment);
129
+ try {
130
+ // load the support code upfront
131
+ const support = await loadSupport(runConfiguration, environment);
132
+ // run cucumber, using the support code we loaded already
133
+ const { success } = await runCucumber({ ...runConfiguration, support }, environment);
134
+ await output.cleanUp();
135
+ return success;
136
+ }
137
+ catch (error) {
138
+ await output.cleanUp();
139
+ throw error;
140
+ }
141
+ }
142
+ runWithCucumber8(argv, pathToSerenityListener, pathsToScenarios) {
143
+ const cucumber = this.loader.require('@cucumber/cucumber');
144
+ const output = this.output.get();
145
+ return new cucumber.Cli({
146
+ argv: argv.concat('--format', `${pathToSerenityListener}:${output.value()}`, ...pathsToScenarios),
147
+ cwd: this.loader.cwd,
148
+ stdout: process.stdout,
149
+ stderr: process.stderr,
150
+ env: process.env,
151
+ })
152
+ .run()
153
+ .then(cleanUpAndPassThrough(output), cleanUpAndReThrow(output));
154
+ }
155
+ runWithCucumber7(argv, pathToSerenityListener, pathsToScenarios) {
156
+ const cucumber = this.loader.require('@cucumber/cucumber');
157
+ const output = this.output.get();
158
+ return new cucumber.Cli({
159
+ argv: argv.concat('--format', `${pathToSerenityListener}:${output.value()}`, ...pathsToScenarios),
160
+ cwd: this.loader.cwd,
161
+ stdout: process.stdout,
162
+ })
163
+ .run()
164
+ .then(cleanUpAndPassThrough(output), cleanUpAndReThrow(output));
165
+ }
166
+ runWithCucumber3to6(argv, pathToSerenityListener, pathsToScenarios) {
167
+ const cucumber = this.loader.require('cucumber');
168
+ const output = this.output.get();
169
+ return new cucumber.Cli({
170
+ argv: argv.concat('--format', `${pathToSerenityListener}:${output.value()}`, ...pathsToScenarios),
171
+ cwd: this.loader.cwd,
172
+ stdout: process.stdout,
173
+ })
174
+ .run()
175
+ .then(cleanUpAndPassThrough(output), cleanUpAndReThrow(output));
176
+ }
177
+ runWithCucumber2(argv, pathToSerenityListener, pathsToScenarios) {
178
+ const cucumber = this.loader.require('cucumber');
179
+ return new cucumber.Cli({
180
+ argv: argv.concat('--require', pathToSerenityListener, ...pathsToScenarios),
181
+ cwd: this.loader.cwd,
182
+ stdout: process.stdout,
183
+ }).run();
184
+ }
185
+ runWithCucumber0to1(argv, pathToSerenityListener, pathsToScenarios) {
186
+ return new Promise((resolve, reject) => {
187
+ this.loader.require('cucumber')
188
+ .Cli(argv.concat('--require', pathToSerenityListener, ...pathsToScenarios))
189
+ .run((wasSuccessful) => resolve());
190
+ });
191
+ }
192
+ }
193
+ /**
194
+ * @private
195
+ */
196
+ function cleanUpAndPassThrough(output) {
197
+ return (result) => {
198
+ return output.cleanUp()
199
+ .then(() => result);
200
+ };
201
+ }
202
+ /**
203
+ * @private
204
+ */
205
+ function cleanUpAndReThrow(output) {
206
+ return (error) => {
207
+ return output.cleanUp()
208
+ .then(() => {
209
+ throw error;
210
+ }, ignoredError => {
211
+ throw error;
212
+ });
213
+ };
214
+ }
215
+ //# sourceMappingURL=CucumberCLIAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CucumberCLIAdapter.js","sourceRoot":"","sources":["../../src/adapter/CucumberCLIAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,255 @@
1
+ /**
2
+ * Configuration options to be passed to [Cucumber CLI](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md).
3
+ * You can specify the options using either camelCase (i.e. `retryTagFilter`) or kebab-case (i.e. `retry-tag-filter`)
4
+ * as Serenity/JS will convert them to an appropriate format for you.
5
+ *
6
+ * @group Configuration
7
+ */
8
+ export interface CucumberConfig {
9
+ /**
10
+ * Paths to where your feature files are. Note that you don't need to specify the paths when
11
+ * using Serenity/JS with WebdriverIO or Protractor, as their respective adapters will do it for you.
12
+ *
13
+ * #### Learn more
14
+ * - [Cucumber docs: configuration](https://github.com/cucumber/cucumber-js/blob/main/docs/configuration.md)
15
+ */
16
+ paths?: string[];
17
+ /**
18
+ * Prepare a test run but don't run it
19
+ *
20
+ * #### Learn more
21
+ * - [Cucumber docs: configuration](https://github.com/cucumber/cucumber-js/blob/main/docs/configuration.md)
22
+ * - [Cucumber docs: dry run mode](https://github.com/cucumber/cucumber-js/blob/main/docs/dry_run.md)
23
+ *
24
+ * @version 8.x
25
+ */
26
+ dryRun?: boolean;
27
+ /**
28
+ * Stop running tests when a test fails
29
+ *
30
+ * #### Learn more
31
+ * - [Cucumber docs: configuration](https://github.com/cucumber/cucumber-js/blob/main/docs/configuration.md)
32
+ * - [Cucumber docs: fail fast](https://github.com/cucumber/cucumber-js/blob/main/docs/fail_fast.md)
33
+ *
34
+ * @version 8.x
35
+ */
36
+ failFast?: boolean;
37
+ /**
38
+ * Enable/disable colors in output. Cucumber 1.x only!
39
+ * For Cucumber 2.x and above use `formatOptions: { colorsEnabled: false }`
40
+ *
41
+ * **Note** For Cucumber 2.x and above use the [`CucumberConfig.formatOptions`](https://serenity-js.org/api/cucumber-adapter/interface/CucumberConfig/#formatOptions) instead.
42
+ *
43
+ * #### Disable colors in output in Cucumber 1.x
44
+ *
45
+ * ```ts
46
+ * colors: false
47
+ * ```
48
+ *
49
+ * #### Disable colors in output in Cucumber 2.x and above
50
+ *
51
+ * ```ts
52
+ * formatOptions: { colorsEnabled: false }
53
+ * ```
54
+ *
55
+ * #### Learn more
56
+ * - [Cucumber 1.x CLI options](https://github.com/cucumber/cucumber-js/blob/1.x/lib/cucumber/cli.js#L38)
57
+ *
58
+ * @version 1.x
59
+ */
60
+ colors?: boolean;
61
+ /**
62
+ * Step definitions and support files can be written in languages that transpile to JavaScript.
63
+ * To do set the `compiler` option to `<file_extension>:<module_name>`
64
+ *
65
+ * **NoteL** For Cucumber 4.x and above use the [`CucumberConfig.require`](https://serenity-js.org/api/cucumber-adapter/interface/CucumberConfig/#require) option instead.
66
+ *
67
+ * #### Enable TypeScript support in Cucumber 1.x - 3.x
68
+ * ```ts
69
+ * compiler: 'ts:ts-node/register'
70
+ * ```
71
+ *
72
+ * #### Learn more
73
+ * - [Cucumber 3.x documentation](https://github.com/cucumber/cucumber-js/blob/3.x/docs/cli.md#transpilers)
74
+ *
75
+ * @version 1.x - 3.x
76
+ */
77
+ compiler?: string;
78
+ /**
79
+ * Specify additional output formats, optionally supply PATH to redirect formatter output
80
+ *
81
+ * #### Learn more
82
+ * - [Cucumber output formats](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#formats)
83
+ */
84
+ format?: string[] | string;
85
+ /**
86
+ * Provide options for formatters
87
+ *
88
+ * #### Cucumber 1.x
89
+ * ```ts
90
+ * formatOptions: JSON.stringify({ option: 'value' })
91
+ * ```
92
+ *
93
+ * #### Learn more
94
+ * - [Cucumber format options](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#format-options)
95
+ */
96
+ formatOptions?: object | string;
97
+ /**
98
+ * Only execute the scenarios with name matching the expression.
99
+ *
100
+ * #### Learn more
101
+ * - [Cucumber docs: running specific features](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#running-specific-features)
102
+ */
103
+ name?: string[];
104
+ /**
105
+ * In order to store and reuse commonly used CLI options,
106
+ * you can add a `cucumber.js` file to your project root directory.
107
+ * The file should export an object where the key is the profile name
108
+ * and the value is a string of CLI options.
109
+ *
110
+ * The profile can be applied with `-p <NAME>` or `--profile <NAME>`.
111
+ * This will prepend the profile's CLI options to the ones provided by the command line.
112
+ * Multiple profiles can be specified at a time.
113
+ *
114
+ * If no profile is specified and a profile named default exists,
115
+ * it will be applied.
116
+ *
117
+ * #### Learn more
118
+ * - [Cucumber profiles](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#profiles)
119
+ */
120
+ profile?: string[];
121
+ /**
122
+ * The number of times to retry a failing scenario before marking it as failed.
123
+ *
124
+ * #### Cucumber 7.x
125
+ *
126
+ * ```ts
127
+ * retry: 3
128
+ * ```
129
+ *
130
+ * #### Learn more
131
+ * - [Cucumber docs: retry failing tests](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#retry-failing-tests)
132
+ *
133
+ * @version 7.x
134
+ */
135
+ retry?: number;
136
+ /**
137
+ * Relative path to an output file produced by Cucumber.js [`rerun` formatter](https://github.com/cucumber/cucumber-js/blob/master/features/rerun_formatter.feature).
138
+ *
139
+ * **Note:** that the name of the output file *must* start with an `@` symbol.
140
+ *
141
+ * #### Saving details of failed scenarios to `@rerun-output.txt`
142
+ *
143
+ * ```ts
144
+ * format: [ 'rerun:@rerun-output.txt' ]
145
+ * ```
146
+ *
147
+ * #### Re-running scenarios saved to `@rerun-output.txt`
148
+ * ```ts
149
+ * rerun: '@rerun-output.txt'
150
+ * ```
151
+ */
152
+ rerun?: string;
153
+ /**
154
+ * Only retry tests matching the given [tag expression](https://github.com/cucumber/cucumber/tree/master/tag-expressions).
155
+ *
156
+ * #### Cucumber 7.x
157
+ * ```ts
158
+ * retry: 3,
159
+ * retryTagFilter: '@flaky',
160
+ * ```
161
+ *
162
+ * #### Learn more
163
+ * - [Cucumber docs: retry failing tests](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#retry-failing-tests)
164
+ *
165
+ * @version 7.x
166
+ */
167
+ retryTagFilter?: string;
168
+ /**
169
+ * Require files or node modules before executing features
170
+ *
171
+ * #### Enable TypeScript support in Cucumber 4.x and above
172
+ * ```ts
173
+ * require: 'ts:ts-node/register'
174
+ * ```
175
+ * #### Learn more
176
+ * - [Cucumber docs: requiring support files](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#requiring-support-files)
177
+ */
178
+ require?: string[];
179
+ /**
180
+ * Paths to where your support code is.
181
+ *
182
+ * #### Learn more
183
+ * - [Cucumber docs: configuration](https://github.com/cucumber/cucumber-js/blob/main/docs/configuration.md)
184
+ *
185
+ * @version 8.x
186
+ */
187
+ import?: string[];
188
+ /**
189
+ * Names of transpilation modules to load, loaded via require()
190
+ *
191
+ * #### Learn more
192
+ * - [Cucumber docs: transpiling](https://github.com/cucumber/cucumber-js/blob/main/docs/transpiling.md)
193
+ *
194
+ * @version 8.x
195
+ */
196
+ requireModule?: string[];
197
+ /**
198
+ * Default language for your feature files
199
+ *
200
+ * #### Learn more
201
+ * - [Cucumber docs: configuration](https://github.com/cucumber/cucumber-js/blob/main/docs/configuration.md)
202
+ *
203
+ * @version 8.x
204
+ */
205
+ language?: string;
206
+ /**
207
+ * Only run scenarios that match the given tags.
208
+ *
209
+ * **Note**: Cucumber 1.x requires the `tags` option to be an array of Cucumber tags,
210
+ * while Cucumber 2.x and above uses a `string`
211
+ * with a [tag expression](https://github.com/cucumber/cucumber/tree/master/tag-expressions).
212
+ *
213
+ * #### Cucumber 1.x
214
+ * ```ts
215
+ * // Run all scenarios tagged with `@smoketest`, but not with `@wip`:
216
+ * tag: [ '@smoketest', '~@wip' ]
217
+ * ```
218
+ *
219
+ * #### Cucumber >= 2.x
220
+ * ```ts
221
+ * // Run all scenarios tagged with `@smoketest`, but not with `@wip`:
222
+ * tag: '@smoketest and not @wip'
223
+ * ```
224
+ *
225
+ * #### Learn more
226
+ *
227
+ * - [Cucumber 1.x docs: tags](https://github.com/cucumber/cucumber-js/blob/1.x/docs/cli.md#tags)
228
+ * - [Cucumber 2.x docs: tags](https://github.com/cucumber/cucumber-js/blob/2.x/docs/cli.md#tags)
229
+ * - [Cucumber docs: tag expressions](https://github.com/cucumber/cucumber/tree/master/tag-expressions)
230
+ */
231
+ tags?: string[] | string;
232
+ /**
233
+ * Fail if there are any undefined or pending steps
234
+ */
235
+ strict?: boolean;
236
+ /**
237
+ * Provide parameters that will be passed to the world constructor
238
+ *
239
+ * #### Specifying `worldParameters` as `string`
240
+ * ```ts
241
+ * worldParameters: JSON.stringify({ isDev: process.env.NODE_ENV !== 'production' })
242
+ * ```
243
+ *
244
+ * #### Specifying `worldParameters` as `object`
245
+ * ```ts
246
+ * worldParameters: { isDev: process.env.NODE_ENV !== 'production' }
247
+ * ```
248
+ *
249
+ * #### Learn more
250
+ *
251
+ * - [Cucumber docs: world parameters](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#world-parameters)
252
+ */
253
+ worldParameters?: object | string;
254
+ }
255
+ //# sourceMappingURL=CucumberConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CucumberConfig.d.ts","sourceRoot":"","sources":["../../src/adapter/CucumberConfig.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAE3B;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAE3B;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEhC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;;;;;;;;;OAaG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAEnB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAEzB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;;;;;;;;;;;;;OAgBG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACrC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CucumberConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CucumberConfig.js","sourceRoot":"","sources":["../../src/adapter/CucumberConfig.ts"],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Represents a Cucumber.js formatter
3
+ *
4
+ * ## Learn more
5
+ *
6
+ * - [Cucumber formatters](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#built-in-formatters)
7
+ *
8
+ * @group Integration
9
+ */
10
+ export declare class CucumberFormat {
11
+ readonly value: string;
12
+ readonly formatter: string;
13
+ readonly output: string;
14
+ /**
15
+ * @param value
16
+ * Cucumber format expression, like `pretty` or `json:out.json`
17
+ */
18
+ constructor(value: string);
19
+ /**
20
+ * See https://github.com/cucumber/cucumber-js/blob/master/src/cli/option_splitter.ts
21
+ *
22
+ * @param format
23
+ */
24
+ private static split;
25
+ }
26
+ //# sourceMappingURL=CucumberFormat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CucumberFormat.d.ts","sourceRoot":"","sources":["../../src/adapter/CucumberFormat.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,qBAAa,cAAc;aAQK,KAAK,EAAE,MAAM;IAPzC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B;;;OAGG;gBACyB,KAAK,EAAE,MAAM;IAMzC;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,KAAK;CAiBvB"}
@@ -0,0 +1,48 @@
1
+ import { ensure, isNotBlank, isString } from 'tiny-types';
2
+ /**
3
+ * Represents a Cucumber.js formatter
4
+ *
5
+ * ## Learn more
6
+ *
7
+ * - [Cucumber formatters](https://github.com/cucumber/cucumber-js/blob/master/docs/cli.md#built-in-formatters)
8
+ *
9
+ * @group Integration
10
+ */
11
+ export class CucumberFormat {
12
+ value;
13
+ formatter;
14
+ output;
15
+ /**
16
+ * @param value
17
+ * Cucumber format expression, like `pretty` or `json:out.json`
18
+ */
19
+ constructor(value) {
20
+ this.value = value;
21
+ [this.formatter, this.output] = CucumberFormat.split(ensure('format', value, isString(), isNotBlank()));
22
+ }
23
+ /**
24
+ * See https://github.com/cucumber/cucumber-js/blob/master/src/cli/option_splitter.ts
25
+ *
26
+ * @param format
27
+ */
28
+ static split(format) {
29
+ const parts = format.split(/([^A-Z]):(?!\\)/);
30
+ const result = parts.reduce((memo, part, i) => {
31
+ if (partNeedsRecombined(i)) {
32
+ memo.push(parts.slice(i, i + 2).join(''));
33
+ }
34
+ return memo;
35
+ }, []);
36
+ if (result.length === 1) {
37
+ result.push('');
38
+ }
39
+ return result;
40
+ }
41
+ }
42
+ /**
43
+ * @private
44
+ */
45
+ function partNeedsRecombined(i) {
46
+ return i % 2 === 0;
47
+ }
48
+ //# sourceMappingURL=CucumberFormat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CucumberFormat.js","sourceRoot":"","sources":["../../src/adapter/CucumberFormat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE1D;;;;;;;;GAQG;AACH,MAAM,OAAO,cAAc;IAQK;IAPZ,SAAS,CAAS;IAClB,MAAM,CAAS;IAE/B;;;OAGG;IACH,YAA4B,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;QACrC,CAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAE,GAAG,cAAc,CAAC,KAAK,CAClD,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CACpD,CAAC;IACN,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,KAAK,CAAC,MAAc;QAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAE9C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAc,EAAE,IAAY,EAAE,CAAS,EAAE,EAAE;YACpE,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9C,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,OAAO,MAA0B,CAAC;IACtC,CAAC;CACJ;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,CAAS;IAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC"}