vitest-cucumber-plugin 0.6.0 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/RELEASE_NOTES.md +2 -0
  2. package/dist/config.d.ts +11 -0
  3. package/dist/config.d.ts.map +1 -0
  4. package/dist/config.js +2 -0
  5. package/dist/config.js.map +1 -0
  6. package/dist/generate/example.d.ts +5 -0
  7. package/dist/generate/example.d.ts.map +1 -0
  8. package/{src → dist}/generate/example.js +7 -10
  9. package/dist/generate/example.js.map +1 -0
  10. package/dist/generate/examples.d.ts +5 -0
  11. package/dist/generate/examples.d.ts.map +1 -0
  12. package/dist/generate/examples.js +46 -0
  13. package/dist/generate/examples.js.map +1 -0
  14. package/dist/generate/feature.d.ts +10 -0
  15. package/dist/generate/feature.d.ts.map +1 -0
  16. package/dist/generate/feature.js +77 -0
  17. package/dist/generate/feature.js.map +1 -0
  18. package/dist/generate/index.d.ts +3 -0
  19. package/dist/generate/index.d.ts.map +1 -0
  20. package/dist/generate/index.js +3 -0
  21. package/dist/generate/index.js.map +1 -0
  22. package/dist/generate/rule.d.ts +5 -0
  23. package/dist/generate/rule.d.ts.map +1 -0
  24. package/{src → dist}/generate/rule.js +9 -12
  25. package/dist/generate/rule.js.map +1 -0
  26. package/dist/generate/scenario-outline.d.ts +5 -0
  27. package/dist/generate/scenario-outline.d.ts.map +1 -0
  28. package/dist/generate/scenario-outline.js +18 -0
  29. package/dist/generate/scenario-outline.js.map +1 -0
  30. package/dist/generate/tests.d.ts +4 -0
  31. package/dist/generate/tests.d.ts.map +1 -0
  32. package/{src → dist}/generate/tests.js +9 -9
  33. package/dist/generate/tests.js.map +1 -0
  34. package/dist/generate/util.d.ts +6 -0
  35. package/dist/generate/util.d.ts.map +1 -0
  36. package/{src → dist}/generate/util.js +5 -5
  37. package/dist/generate/util.js.map +1 -0
  38. package/dist/gherkin-lexer-shared.d.ts +6 -0
  39. package/dist/gherkin-lexer-shared.d.ts.map +1 -0
  40. package/dist/gherkin-lexer-shared.js +4 -0
  41. package/dist/gherkin-lexer-shared.js.map +1 -0
  42. package/dist/gherkin-lexer.d.ts +4 -0
  43. package/dist/gherkin-lexer.d.ts.map +1 -0
  44. package/dist/gherkin-lexer.js +68 -0
  45. package/dist/gherkin-lexer.js.map +1 -0
  46. package/{src → dist}/gherkin.js +1 -1
  47. package/{src → dist}/gherkin.umd.js +1 -1
  48. package/dist/hooks.d.ts +25 -0
  49. package/dist/hooks.d.ts.map +1 -0
  50. package/dist/hooks.js +94 -0
  51. package/dist/hooks.js.map +1 -0
  52. package/dist/index.d.ts +4 -0
  53. package/dist/index.d.ts.map +1 -0
  54. package/dist/index.js +4 -0
  55. package/dist/index.js.map +1 -0
  56. package/dist/logger.d.ts +5 -0
  57. package/dist/logger.d.ts.map +1 -0
  58. package/dist/logger.js +8 -0
  59. package/dist/logger.js.map +1 -0
  60. package/dist/parameterize.d.ts +3 -0
  61. package/dist/parameterize.d.ts.map +1 -0
  62. package/dist/parameterize.js +8 -0
  63. package/dist/parameterize.js.map +1 -0
  64. package/dist/parse.d.ts +3 -0
  65. package/dist/parse.d.ts.map +1 -0
  66. package/{src → dist}/parse.js +5 -9
  67. package/dist/parse.js.map +1 -0
  68. package/dist/state.d.ts +4 -0
  69. package/dist/state.d.ts.map +1 -0
  70. package/dist/state.js +2 -0
  71. package/dist/state.js.map +1 -0
  72. package/dist/statement.d.ts +71 -0
  73. package/dist/statement.d.ts.map +1 -0
  74. package/dist/statement.js +10 -0
  75. package/dist/statement.js.map +1 -0
  76. package/dist/steps.d.ts +20 -0
  77. package/dist/steps.d.ts.map +1 -0
  78. package/{src → dist}/steps.js +16 -23
  79. package/dist/steps.js.map +1 -0
  80. package/dist/tags.d.ts +5 -0
  81. package/dist/tags.d.ts.map +1 -0
  82. package/{src → dist}/tags.js +15 -28
  83. package/dist/tags.js.map +1 -0
  84. package/dist/vitest-cucumber-plugin.d.ts +13 -0
  85. package/dist/vitest-cucumber-plugin.d.ts.map +1 -0
  86. package/dist/vitest-cucumber-plugin.js +69 -0
  87. package/dist/vitest-cucumber-plugin.js.map +1 -0
  88. package/package.json +64 -34
  89. package/generate-parsers +0 -6
  90. package/rollup-gherkin.js +0 -12
  91. package/rollup-tags-expression.js +0 -11
  92. package/run-tests +0 -9
  93. package/src/generate/examples.js +0 -48
  94. package/src/generate/feature.js +0 -72
  95. package/src/generate/index.js +0 -15
  96. package/src/generate/scenario-outline.js +0 -21
  97. package/src/gherkin-lexer-shared.cjs +0 -4
  98. package/src/gherkin-lexer.js +0 -63
  99. package/src/gherkin.ne +0 -211
  100. package/src/hooks.js +0 -77
  101. package/src/index.js +0 -95
  102. package/src/logger.js +0 -14
  103. package/src/parameterize.js +0 -7
  104. package/src/tags-expression.ne +0 -43
  105. package/tests/background/features/background.feature +0 -25
  106. package/tests/background/features/step_definitions/steps.js +0 -30
  107. package/tests/background/features/support/hooks.js +0 -3
  108. package/tests/background/package-lock.json +0 -1204
  109. package/tests/background/package.json +0 -11
  110. package/tests/background/vite.config.js +0 -13
  111. package/tests/comments/features/is-it-friday.feature +0 -10
  112. package/tests/comments/features/step_definitions/stepdefs.js +0 -15
  113. package/tests/comments/package-lock.json +0 -1933
  114. package/tests/comments/package.json +0 -11
  115. package/tests/comments/vite.config.js +0 -9
  116. package/tests/data-tables/features/data-tables-escaping.feature +0 -27
  117. package/tests/data-tables/features/data-tables.feature +0 -44
  118. package/tests/data-tables/features/step_definitions/data-tables.js +0 -21
  119. package/tests/data-tables/package-lock.json +0 -1933
  120. package/tests/data-tables/package.json +0 -11
  121. package/tests/data-tables/vite.config.js +0 -13
  122. package/tests/doc-strings/features/doc-strings.feature +0 -21
  123. package/tests/doc-strings/features/step_definitions/doc-strings.js +0 -15
  124. package/tests/doc-strings/package-lock.json +0 -1933
  125. package/tests/doc-strings/package.json +0 -11
  126. package/tests/doc-strings/vite.config.js +0 -13
  127. package/tests/hooks/features/after-all.feature +0 -5
  128. package/tests/hooks/features/after.feature +0 -5
  129. package/tests/hooks/features/before-all.feature +0 -14
  130. package/tests/hooks/features/before-step.feature +0 -6
  131. package/tests/hooks/features/before.feature +0 -14
  132. package/tests/hooks/features/step_definitions/steps.js +0 -28
  133. package/tests/hooks/features/support/hooks.js +0 -75
  134. package/tests/hooks/features/support/tags-hooks.js +0 -11
  135. package/tests/hooks/features/tags.feature +0 -14
  136. package/tests/hooks/package-lock.json +0 -1204
  137. package/tests/hooks/package.json +0 -11
  138. package/tests/hooks/vite.config.js +0 -13
  139. package/tests/is-it-friday/features/is-it-friday.feature +0 -7
  140. package/tests/is-it-friday/features/step_definitions/stepdefs.js +0 -15
  141. package/tests/is-it-friday/package-lock.json +0 -1933
  142. package/tests/is-it-friday/package.json +0 -11
  143. package/tests/is-it-friday/vite.config.js +0 -13
  144. package/tests/is-it-friday-scenario-outline/features/is-it-friday.feature +0 -13
  145. package/tests/is-it-friday-scenario-outline/features/step_definitions/stepdefs.js +0 -15
  146. package/tests/is-it-friday-scenario-outline/package-lock.json +0 -1933
  147. package/tests/is-it-friday-scenario-outline/package.json +0 -11
  148. package/tests/is-it-friday-scenario-outline/vite.config.js +0 -9
  149. package/tests/is-it-friday-two-scenarios/features/is-it-friday.feature +0 -12
  150. package/tests/is-it-friday-two-scenarios/features/step_definitions/stepdefs.js +0 -19
  151. package/tests/is-it-friday-two-scenarios/package-lock.json +0 -1933
  152. package/tests/is-it-friday-two-scenarios/package.json +0 -11
  153. package/tests/is-it-friday-two-scenarios/vite.config.js +0 -9
  154. package/tests/is-it-friday-two-scenarios-multiple-feature-files/features/friday.feature +0 -7
  155. package/tests/is-it-friday-two-scenarios-multiple-feature-files/features/step_definitions/stepdefs.js +0 -19
  156. package/tests/is-it-friday-two-scenarios-multiple-feature-files/features/sunday.feature +0 -8
  157. package/tests/is-it-friday-two-scenarios-multiple-feature-files/package-lock.json +0 -1933
  158. package/tests/is-it-friday-two-scenarios-multiple-feature-files/package.json +0 -11
  159. package/tests/is-it-friday-two-scenarios-multiple-feature-files/vite.config.js +0 -9
  160. package/tests/keyword-aliases/features/scenario-outline.feature +0 -20
  161. package/tests/keyword-aliases/features/scenario.feature +0 -14
  162. package/tests/keyword-aliases/features/step_definitions/steps.js +0 -30
  163. package/tests/keyword-aliases/features/steps.feature +0 -28
  164. package/tests/keyword-aliases/features/support/hooks.js +0 -6
  165. package/tests/keyword-aliases/package-lock.json +0 -1933
  166. package/tests/keyword-aliases/package.json +0 -11
  167. package/tests/keyword-aliases/vite.config.js +0 -9
  168. package/tests/languages/features/en.feature +0 -8
  169. package/tests/languages/features/no.feature +0 -10
  170. package/tests/languages/features/step_definitions/en.js +0 -15
  171. package/tests/languages/features/step_definitions/no.js +0 -21
  172. package/tests/languages/package-lock.json +0 -1204
  173. package/tests/languages/package.json +0 -11
  174. package/tests/languages/vite.config.js +0 -13
  175. package/tests/rule/features/rule.feature +0 -14
  176. package/tests/rule/features/step_definitions/stepdefs.js +0 -19
  177. package/tests/rule/package-lock.json +0 -1933
  178. package/tests/rule/package.json +0 -11
  179. package/tests/rule/vite.config.js +0 -9
  180. package/tests/tags/features/skip.feature +0 -9
  181. package/tests/tags/features/step_definitions/steps.js +0 -30
  182. package/tests/tags/features/support/hooks.js +0 -6
  183. package/tests/tags/features/tags-scenario-outline.feature +0 -37
  184. package/tests/tags/features/tags.feature +0 -26
  185. package/tests/tags/package-lock.json +0 -1204
  186. package/tests/tags/package.json +0 -11
  187. package/tests/tags/vite.config.js +0 -12
  188. package/tests/vue/features/step_definitions/test.js +0 -25
  189. package/tests/vue/features/support/components.js +0 -19
  190. package/tests/vue/features/test.feature +0 -10
  191. package/tests/vue/package-lock.json +0 -2164
  192. package/tests/vue/package.json +0 -18
  193. package/tests/vue/src/test.vue +0 -10
  194. package/tests/vue/vite.config.js +0 -15
  195. /package/{src → dist}/gherkin-languages.json +0 -0
  196. /package/{src → dist}/tags-expression.js +0 -0
  197. /package/{src → dist}/tags-expression.umd.js +0 -0
package/RELEASE_NOTES.md CHANGED
@@ -1,3 +1,5 @@
1
+ * v0.6.2 : Fixed package.json files
2
+ * v0.6.1 : TypeScript rewrite & support
1
3
  * v0.6.0 : Language support
2
4
  * v0.5.6 : Fixed issue #25 which was preventing at symbols from being used in data tables
3
5
  * v0.5.5 : Changed dynamic import statements to static ones so that Vitest watch works correctly
@@ -0,0 +1,11 @@
1
+ import { Tags } from './statement.js';
2
+ import { LoggerOptions } from './logger.js';
3
+ interface VitestCucumberPluginConfig {
4
+ tagsFunction: (tags?: Tags) => boolean;
5
+ log: LoggerOptions;
6
+ stepDefinitions: {
7
+ include: string | string[];
8
+ };
9
+ }
10
+ export { VitestCucumberPluginConfig };
11
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,UAAU,0BAA0B;IAChC,YAAY,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC;IACvC,GAAG,EAAE,aAAa,CAAC;IACnB,eAAe,EAAE;QACb,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC9B,CAAC;CACL;AAED,OAAO,EAAE,0BAA0B,EAAE,CAAC"}
package/dist/config.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { Example } from '../statement.js';
2
+ import { VitestCucumberPluginConfig } from '../config.js';
3
+ declare const generateExample: (config: VitestCucumberPluginConfig, example: Example) => string;
4
+ export { generateExample, Example };
5
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../src/generate/example.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAE1D,QAAA,MAAM,eAAe,EAAE,CAAC,MAAM,EAAE,0BAA0B,EAAE,OAAO,EAAE,OAAO,KAAK,MAehF,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC"}
@@ -2,20 +2,17 @@ import { escape, shouldSkip } from './util.js';
2
2
  import { generateTests } from './tests.js';
3
3
  import _ from 'lodash/fp.js';
4
4
  import { log } from '../logger.js';
5
-
6
- export const generateExample = (config,example) => {
5
+ const generateExample = (config, example) => {
7
6
  log.debug(`generateExample config: ${JSON.stringify(config)} example: ${JSON.stringify(example)}`);
8
7
  var tests = '';
9
-
10
- const steps = _.has('background.steps',example) ? _.concat(example.background.steps,example.steps) : example.steps;
11
-
12
- tests += generateTests(steps,{},example.tags);
13
-
14
- const skip = shouldSkip(config,example.tags) ? '.skip' : '';
15
-
8
+ const steps = example.background ? _.concat(example.background.steps, example.steps) : example.steps;
9
+ tests += generateTests(steps, {}, example.tags);
10
+ const skip = shouldSkip(config, example.tags) ? '.skip' : '';
16
11
  const code = ` // tags : ${JSON.stringify(example.tags)}
17
12
  describe${skip}('${escape(example.type.name)}: ${escape(example.name)}', () => {${tests}
18
13
  });
19
14
  `;
20
15
  return code;
21
- }
16
+ };
17
+ export { generateExample };
18
+ //# sourceMappingURL=example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../../src/generate/example.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,CAAC,MAAM,cAAc,CAAC;AAC7B,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAInC,MAAM,eAAe,GAAqE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;IAC1G,GAAG,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACnG,IAAI,KAAK,GAAG,EAAE,CAAC;IAEf,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IAErG,KAAK,IAAI,aAAa,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAE7D,MAAM,IAAI,GAAG,eAAe,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;YAChD,IAAI,KAAK,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,KAAK;;CAExF,CAAC;IACE,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF,OAAO,EAAE,eAAe,EAAW,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Examples, StepStatement } from '../statement.js';
2
+ import { VitestCucumberPluginConfig } from '../config.js';
3
+ declare const generateExamples: (config: VitestCucumberPluginConfig, steps: Array<StepStatement>, examplesStatement: Examples) => string;
4
+ export { generateExamples };
5
+ //# sourceMappingURL=examples.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"examples.d.ts","sourceRoot":"","sources":["../../src/generate/examples.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AA6D1D,QAAA,MAAM,gBAAgB,EAAE,CACpB,MAAM,EAAE,0BAA0B,EAClC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,EAC3B,iBAAiB,EAAE,QAAQ,KAC1B,MAkBJ,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,46 @@
1
+ import { escape, shouldSkip } from './util.js';
2
+ import { generateTests } from './tests.js';
3
+ import _ from 'lodash/fp.js';
4
+ import { log } from '../logger.js';
5
+ const createParameterMap = (parameters, values) => {
6
+ const parameterMap = _.reduce((parameterMap, value) => {
7
+ return {
8
+ map: _.set(parameters[parameterMap.index], value, parameterMap.map),
9
+ index: parameterMap.index + 1,
10
+ };
11
+ }, { map: {}, index: 0 })(values);
12
+ return parameterMap.map;
13
+ };
14
+ const generateAllTests = (steps, parameters, parameterValues, tags) => {
15
+ parameters = parameters ?? [];
16
+ parameterValues = parameterValues ?? [];
17
+ tags = tags ?? [];
18
+ const allTests = _.reduce((allTests, values) => {
19
+ const parameterMap = createParameterMap(parameters, values);
20
+ log.debug(`parameterMap : ${JSON.stringify(parameterMap)}`);
21
+ const tests = generateTests(steps, parameterMap, tags, ' ');
22
+ return {
23
+ tests: allTests.tests +
24
+ `
25
+ describe('${allTests.index}',() => {${tests}
26
+ });`,
27
+ index: allTests.index + 1,
28
+ };
29
+ }, { tests: '', index: 0 })(parameterValues);
30
+ return allTests.tests;
31
+ };
32
+ const generateExamples = (config, steps, examplesStatement) => {
33
+ log.debug(`generateExamples steps:${JSON.stringify(steps)} examples: ${JSON.stringify(examplesStatement)}`);
34
+ const parameters = _.head(examplesStatement.dataTable);
35
+ const parameterValues = _.tail(examplesStatement.dataTable);
36
+ log.debug(`generateExamples parameters:${JSON.stringify(parameters)} parameterValues: ${JSON.stringify(parameterValues)}`);
37
+ const skip = shouldSkip(config, examplesStatement.tags) ? '.skip' : '';
38
+ const allTests = generateAllTests(steps, parameters, parameterValues, examplesStatement.tags);
39
+ const code = `
40
+ // tags : ${JSON.stringify(examplesStatement.tags)}
41
+ describe${skip}('${escape(examplesStatement.type.name)}: ${escape(examplesStatement.name)}', () => {${allTests}
42
+ });`;
43
+ return code;
44
+ };
45
+ export { generateExamples };
46
+ //# sourceMappingURL=examples.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"examples.js","sourceRoot":"","sources":["../../src/generate/examples.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { Feature } from '../statement.js';
2
+ import { VitestCucumberPluginConfig } from '../config.js';
3
+ interface GenerateFeatureOptions {
4
+ config: VitestCucumberPluginConfig;
5
+ feature: Feature;
6
+ featurePath: string;
7
+ }
8
+ declare const generateFeature: (options: GenerateFeatureOptions) => Promise<string>;
9
+ export { generateFeature };
10
+ //# sourceMappingURL=feature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature.d.ts","sourceRoot":"","sources":["../../src/generate/feature.ts"],"names":[],"mappings":"AAMA,OAAO,EAA6C,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAErF,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAS1D,UAAU,sBAAsB;IAC5B,MAAM,EAAE,0BAA0B,CAAC;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,QAAA,MAAM,eAAe,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,MAAM,CA2EzE,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,77 @@
1
+ import _ from 'lodash/fp.js';
2
+ import { log } from '../logger.js';
3
+ import { escape, shouldSkip } from './util.js';
4
+ import { glob } from 'glob';
5
+ import { generateExample } from './example.js';
6
+ import { generateRule } from './rule.js';
7
+ import { isStatementType } from '../statement.js';
8
+ import { generateScenarioOutline } from './scenario-outline.js';
9
+ import path from 'node:path';
10
+ const findJsFiles = async (options) => glob(options.include);
11
+ const generateFeature = async (options) => {
12
+ log.debug({ generateFeature: { options } });
13
+ const { config, feature, featurePath } = options;
14
+ const name = feature.name;
15
+ const statements = feature.statements;
16
+ const testStatements = _.reduce((testStatements, statement) => {
17
+ if (feature.background) {
18
+ statement = _.set('background', feature.background, statement);
19
+ }
20
+ statement = _.set('tags', _.concat(feature.tags, statement.tags), statement);
21
+ if (isStatementType(statement, 'example')) {
22
+ return testStatements + generateExample(config, statement);
23
+ }
24
+ else if (isStatementType(statement, 'scenarioOutline')) {
25
+ return testStatements + generateScenarioOutline(config, statement);
26
+ }
27
+ else if (isStatementType(statement, 'rule')) {
28
+ return testStatements + generateRule(config, statement);
29
+ }
30
+ return testStatements;
31
+ }, '')(statements);
32
+ const skip = shouldSkip(config, feature.tags) ? '.skip' : '';
33
+ const tagsStr = JSON.stringify(feature.tags);
34
+ const cwd = process.cwd();
35
+ const jsFilesImportReducer = (imports, file) => {
36
+ const absolutePath = `${cwd}/${file}`;
37
+ const relativePath = path.relative(path.dirname(featurePath), absolutePath);
38
+ return (imports +
39
+ `
40
+ import './${relativePath}';`);
41
+ };
42
+ const jsFiles = await findJsFiles(config.stepDefinitions);
43
+ log.debug({ featurePath, cwd, jsFiles });
44
+ const jsFilesImport = _.reduce(jsFilesImportReducer, '', jsFiles);
45
+ const code = `import { expect, test, describe, beforeAll, afterAll, beforeEach, afterEach } from 'vitest';
46
+ import {
47
+ Test,
48
+ applyBeforeAllHooks,
49
+ applyBeforeHooks,
50
+ applyBeforeStepHooks,
51
+ applyAfterAllHooks,
52
+ applyAfterHooks,
53
+ applyAfterStepHooks,
54
+ } from 'vitest-cucumber-plugin';
55
+ import { readdir } from 'node:fs/promises';
56
+ import { log, logConfig } from 'vitest-cucumber-plugin';${jsFilesImport}
57
+
58
+ logConfig(${JSON.stringify(config.log)});
59
+
60
+ var state = {};
61
+
62
+ beforeAll(async () => {
63
+ state = await applyBeforeAllHooks(state,${tagsStr});
64
+ });
65
+
66
+ afterAll(async () => {
67
+ state = await applyAfterAllHooks(state,${tagsStr});
68
+ });
69
+
70
+ // tags : ${tagsStr}
71
+ describe${skip}('${escape(feature.type.name)}: ${escape(name)}', () => {
72
+ ${testStatements}});
73
+ `;
74
+ return code;
75
+ };
76
+ export { generateFeature };
77
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature.js","sourceRoot":"","sources":["../../src/generate/feature.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { generateFeature } from './feature.js';
2
+ export { generateFeature };
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generate/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { generateFeature } from './feature.js';
2
+ export { generateFeature };
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generate/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Rule } from '../statement.js';
2
+ import { VitestCucumberPluginConfig } from '../config.js';
3
+ declare const generateRule: (config: VitestCucumberPluginConfig, rule: Rule) => string;
4
+ export { generateRule };
5
+ //# sourceMappingURL=rule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rule.d.ts","sourceRoot":"","sources":["../../src/generate/rule.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAE1D,QAAA,MAAM,YAAY,EAAE,CAAC,MAAM,EAAE,0BAA0B,EAAE,IAAI,EAAE,IAAI,KAAK,MAgBvE,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -1,22 +1,19 @@
1
1
  import _ from 'lodash/fp.js';
2
- import { generateExample } from './index.js';
3
2
  import { escape, shouldSkip } from './util.js';
4
3
  import { log } from '../logger.js';
5
-
6
- export const generateRule = (config,rule) => {
4
+ import { generateExample } from './example.js';
5
+ const generateRule = (config, rule) => {
7
6
  log.debug(`generateRule config: ${JSON.stringify(config)} rule: ${JSON.stringify(rule)}`);
8
-
9
- const examplesCode = _.reduce((examplesCode,example) => {
10
- return examplesCode + generateExample(config,example);
11
- },'')(rule.examples);
12
-
13
- const skip = shouldSkip(config,rule.tags) ? '.skip' : '';
7
+ const examplesCode = _.reduce((examplesCode, example) => {
8
+ return examplesCode + generateExample(config, example);
9
+ }, '')(rule.examples);
10
+ const skip = shouldSkip(config, rule.tags) ? '.skip' : '';
14
11
  const tagsStr = JSON.stringify(rule.tags);
15
-
16
12
  const code = ` // tags : ${tagsStr}
17
13
  describe${skip}('${escape(rule.type.name)}: ${escape(rule.name)}', () => {
18
14
  ${examplesCode}});
19
15
  `;
20
-
21
16
  return code;
22
- }
17
+ };
18
+ export { generateRule };
19
+ //# sourceMappingURL=rule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rule.js","sourceRoot":"","sources":["../../src/generate/rule.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,cAAc,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,eAAe,EAAW,MAAM,cAAc,CAAC;AAIxD,MAAM,YAAY,GAA+D,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;IAC9F,GAAG,CAAC,KAAK,CAAC,wBAAwB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE1F,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,YAAoB,EAAE,OAAgB,EAAE,EAAE;QACrE,OAAO,YAAY,GAAG,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEtB,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE1C,MAAM,IAAI,GAAG,eAAe,OAAO;YAC3B,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;EAC/D,YAAY;CACb,CAAC;IAEE,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { ScenarioOutline } from '../statement.js';
2
+ import { VitestCucumberPluginConfig } from '../config.js';
3
+ declare const generateScenarioOutline: (config: VitestCucumberPluginConfig, scenarioOutline: ScenarioOutline) => string;
4
+ export { generateScenarioOutline };
5
+ //# sourceMappingURL=scenario-outline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenario-outline.d.ts","sourceRoot":"","sources":["../../src/generate/scenario-outline.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAY,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAE1D,QAAA,MAAM,uBAAuB,EAAE,CAAC,MAAM,EAAE,0BAA0B,EAAE,eAAe,EAAE,eAAe,KAAK,MAmBxG,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,18 @@
1
+ import _ from 'lodash/fp.js';
2
+ import { generateExamples } from './examples.js';
3
+ import { escape, shouldSkip } from './util.js';
4
+ const generateScenarioOutline = (config, scenarioOutline) => {
5
+ const examplesStatements = _.reduce((examplesStatements, examplesStatement) => {
6
+ examplesStatement = _.set('tags', _.concat(scenarioOutline.tags, examplesStatement.tags), examplesStatement);
7
+ return examplesStatements + generateExamples(config, scenarioOutline.steps, examplesStatement);
8
+ }, '')(scenarioOutline.examples);
9
+ const skip = shouldSkip(config, scenarioOutline.tags) ? '.skip' : '';
10
+ const code = ` // tags : ${JSON.stringify(scenarioOutline.tags)}
11
+ describe${skip}('${escape(scenarioOutline.type.name)}: ${escape(scenarioOutline.name)}', () => {
12
+ ${examplesStatements}
13
+ });
14
+ `;
15
+ return code;
16
+ };
17
+ export { generateScenarioOutline };
18
+ //# sourceMappingURL=scenario-outline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenario-outline.js","sourceRoot":"","sources":["../../src/generate/scenario-outline.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,cAAc,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAI/C,MAAM,uBAAuB,GAAqF,CAC9G,MAAM,EACN,eAAe,EACjB,EAAE;IACA,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,kBAA0B,EAAE,iBAA2B,EAAE,EAAE;QAC5F,iBAAiB,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAAC,CAAC;QAE7G,OAAO,kBAAkB,GAAG,gBAAgB,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IACnG,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAEjC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAErE,MAAM,IAAI,GAAG,eAAe,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC;YACxD,IAAI,KAAK,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC;EACrF,kBAAkB;;CAEnB,CAAC;IAEE,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { StepStatement } from '../statement.js';
2
+ declare const generateTests: (steps: StepStatement[], parameterMap: Record<string, string>, tags?: string[], extraIndent?: string) => string;
3
+ export { generateTests };
4
+ //# sourceMappingURL=tests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../src/generate/tests.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,QAAA,MAAM,aAAa,EAAE,CACjB,KAAK,EAAE,aAAa,EAAE,EACtB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACpC,IAAI,CAAC,EAAE,MAAM,EAAE,EACf,WAAW,CAAC,EAAE,MAAM,KACnB,MAwBJ,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -2,8 +2,7 @@ import _ from 'lodash/fp.js';
2
2
  import { escape } from './util.js';
3
3
  import { parameterizeText } from '../parameterize.js';
4
4
  import { log } from '../logger.js';
5
-
6
- export const generateTests = (steps,parameterMap,tags,extraIndent) => {
5
+ const generateTests = (steps, parameterMap, tags, extraIndent) => {
7
6
  log.debug(`generateTests steps : ${JSON.stringify(steps)}`);
8
7
  const tagsStr = JSON.stringify(tags);
9
8
  const indent = extraIndent ? extraIndent : '';
@@ -13,16 +12,17 @@ ${indent} beforeEach(async () => { state = await applyBeforeStepHooks(state,$
13
12
  ${indent} afterAll(async () => { state = await applyAfterHooks(state,${tagsStr}); });
14
13
  ${indent} afterEach(async () => { state = await applyAfterStepHooks(state,${tagsStr}); });
15
14
  `;
16
-
17
15
  _.forEach((step) => {
18
- const parameterizedText = ( parameterMap ? parameterizeText(step.text,parameterMap) : step.text);
16
+ const parameterizedText = parameterMap ? parameterizeText(step.text, parameterMap) : step.text;
19
17
  const name = parameterizedText;
20
- const parameterizedStep = _.set('text',parameterizedText,step);
21
-
18
+ const parameterizedStep = _.set('text', parameterizedText, step);
22
19
  const stepString = JSON.stringify(parameterizedStep);
23
- tests = tests+`
20
+ tests =
21
+ tests +
22
+ `
24
23
  ${indent} test('${escape(step.type.name)} ${escape(name)}', () => { state = Test(state,${stepString}); });`;
25
- },steps);
26
-
24
+ }, steps);
27
25
  return tests;
28
26
  };
27
+ export { generateTests };
28
+ //# sourceMappingURL=tests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tests.js","sourceRoot":"","sources":["../../src/generate/tests.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,cAAc,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAGnC,MAAM,aAAa,GAKL,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;IACrD,GAAG,CAAC,KAAK,CAAC,yBAAyB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9C,IAAI,KAAK,GAAG;EACd,MAAM,oEAAoE,OAAO;EACjF,MAAM,yEAAyE,OAAO;EACtF,MAAM,kEAAkE,OAAO;EAC/E,MAAM,uEAAuE,OAAO;CACrF,CAAC;IAEE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACf,MAAM,iBAAiB,GAAG,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/F,MAAM,IAAI,GAAG,iBAAiB,CAAC;QAC/B,MAAM,iBAAiB,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;QAEjE,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACrD,KAAK;YACD,KAAK;gBACL;EACV,MAAM,aAAa,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,iCAAiC,UAAU,QAAQ,CAAC;IAC3G,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Tags } from '../statement.js';
2
+ import { VitestCucumberPluginConfig } from '../config.js';
3
+ declare const escape: (str: string) => string;
4
+ declare const shouldSkip: (config: VitestCucumberPluginConfig, tags?: Tags) => boolean;
5
+ export { escape, shouldSkip };
6
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/generate/util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAE1D,QAAA,MAAM,MAAM,GAAI,KAAK,MAAM,WAA6B,CAAC;AACzD,QAAA,MAAM,UAAU,GAAI,QAAQ,0BAA0B,EAAE,OAAO,IAAI,YAIlE,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC"}
@@ -1,9 +1,9 @@
1
- import _ from 'lodash/fp.js';
2
1
  import { log } from '../logger.js';
3
-
4
- export const escape = (str) => str.replace(/'/g,"\\'");
5
- export const shouldSkip = (config,tags) => {
2
+ const escape = (str) => str.replace(/'/g, "\\'");
3
+ const shouldSkip = (config, tags) => {
6
4
  const result = !config.tagsFunction(tags);
7
5
  log.debug(`shouldSkip? ${result} tags: ${JSON.stringify(tags)}`);
8
6
  return result;
9
- }
7
+ };
8
+ export { escape, shouldSkip };
9
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/generate/util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAInC,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACzD,MAAM,UAAU,GAAG,CAAC,MAAkC,EAAE,IAAW,EAAE,EAAE;IACnE,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC1C,GAAG,CAAC,KAAK,CAAC,eAAe,MAAM,UAAU,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjE,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ declare const _default: {
2
+ states: {};
3
+ language: string;
4
+ };
5
+ export default _default;
6
+ //# sourceMappingURL=gherkin-lexer-shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gherkin-lexer-shared.d.ts","sourceRoot":"","sources":["../src/gherkin-lexer-shared.ts"],"names":[],"mappings":";;;;AAGA,wBAAoC"}
@@ -0,0 +1,4 @@
1
+ let states = {};
2
+ let language = 'en';
3
+ export default { states, language };
4
+ //# sourceMappingURL=gherkin-lexer-shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gherkin-lexer-shared.js","sourceRoot":"","sources":["../src/gherkin-lexer-shared.ts"],"names":[],"mappings":"AAAA,IAAI,MAAM,GAAG,EAAE,CAAC;AAChB,IAAI,QAAQ,GAAG,IAAI,CAAC;AAEpB,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { VitestCucumberPluginConfig } from './config.js';
2
+ declare const gherkinLexerConfig: (options: VitestCucumberPluginConfig) => void;
3
+ export { gherkinLexerConfig };
4
+ //# sourceMappingURL=gherkin-lexer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gherkin-lexer.d.ts","sourceRoot":"","sources":["../src/gherkin-lexer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AA+DzD,QAAA,MAAM,kBAAkB,EAAE,CAAC,OAAO,EAAE,0BAA0B,KAAK,IAalE,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,68 @@
1
+ import _ from 'lodash/fp.js';
2
+ import gherkinLexerShared from './gherkin-lexer-shared.js';
3
+ import fs from 'fs';
4
+ const base = {
5
+ language: { match: /^#[ \t]*language:[ \t]*[a-z\-A-Z]+\n/, lineBreaks: true },
6
+ emptyLine: { match: /^[ \t]*(?:\#[^\n]+)?\n/, lineBreaks: true },
7
+ newline: { match: '\n', lineBreaks: true },
8
+ ws: /[ \t]+/,
9
+ at: '@',
10
+ colon: ':',
11
+ repeatStep: '*',
12
+ pipe: '|',
13
+ escapedPipe: '\\|',
14
+ escapedNewline: '\\n',
15
+ escapedBackSlash: '\\\\',
16
+ scenarioOutline: [],
17
+ docString: ['```', '"""'],
18
+ word: {
19
+ match: /[^ \t\n\:\|\@\*]+/,
20
+ },
21
+ };
22
+ const trimKeywords = () => _.map(_.trim);
23
+ const filterStars = () => _.filter((v) => v !== '*');
24
+ const cleanKeywords = (keywords) => filterStars()(trimKeywords()(keywords));
25
+ const createState = (languageKeywords) => {
26
+ let state = base;
27
+ if (!_.isArray(languageKeywords.scenarioOutline)) {
28
+ throw new Error(`Scenario Outline was not an array`);
29
+ }
30
+ state = _.set('scenarioOutline', cleanKeywords(languageKeywords.scenarioOutline), state);
31
+ let keywords = {};
32
+ let repeatStepKeys = ['and', 'but'];
33
+ const repeatStepReducer = (keywords, repeatStepKey) => {
34
+ const repeatStepKeywords = languageKeywords[repeatStepKey];
35
+ if (!_.isArray(repeatStepKeywords)) {
36
+ throw new Error(`${repeatStepKey} was not an array`);
37
+ }
38
+ return _.concat(keywords, cleanKeywords(repeatStepKeywords));
39
+ };
40
+ const repeatStepKeywords = _.reduce(repeatStepReducer, [])(repeatStepKeys);
41
+ let otherKeys = ['feature', 'examples', 'given', 'when', 'then', 'scenario', 'background', 'rule'];
42
+ const otherKeyReducer = (acc, key) => {
43
+ const otherKeyKeywords = languageKeywords[key];
44
+ if (!_.isArray(otherKeyKeywords)) {
45
+ throw new Error(`${key} was not an array`);
46
+ }
47
+ return _.set(key, cleanKeywords(otherKeyKeywords), acc);
48
+ };
49
+ const otherKeywords = _.reduce(otherKeyReducer, {})(otherKeys);
50
+ keywords = _.set('repeatStep', repeatStepKeywords, otherKeywords);
51
+ state = _.set(['word', 'rawKeywords'], keywords, state);
52
+ return state;
53
+ };
54
+ const gherkinLexerConfig = (options) => {
55
+ const gherkinLanguagesPath = new URL('./gherkin-languages.json', import.meta.url);
56
+ const gherkinLanguages = JSON.parse(fs.readFileSync(gherkinLanguagesPath).toString('utf-8'));
57
+ const language = _.getOr('en', 'language', options);
58
+ const languageKeys = _.keys(gherkinLanguages);
59
+ const languageKeyReducer = (acc, languageKey) => _.set(languageKey, createState(gherkinLanguages[languageKey]), acc);
60
+ const states = _.reduce(languageKeyReducer, {}, languageKeys);
61
+ if (!_.has(language, states)) {
62
+ throw new Error('unknown language "' + language + '"');
63
+ }
64
+ gherkinLexerShared.states = states;
65
+ gherkinLexerShared.language = language;
66
+ };
67
+ export { gherkinLexerConfig };
68
+ //# sourceMappingURL=gherkin-lexer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gherkin-lexer.js","sourceRoot":"","sources":["../src/gherkin-lexer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import require$$0 from 'lodash/fp.js';
2
2
  import require$$1 from 'moo';
3
- import require$$2 from './gherkin-lexer-shared.cjs';
3
+ import require$$2 from './gherkin-lexer-shared.js';
4
4
 
5
5
  function getDefaultExportFromCjs (x) {
6
6
  return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
@@ -6,7 +6,7 @@ function id(x) { return x[0]; }
6
6
  const fp = require('lodash/fp.js');
7
7
  const moo = require('moo');
8
8
 
9
- const gherkinLexerShared = require('./gherkin-lexer-shared.cjs');
9
+ const gherkinLexerShared = require('./gherkin-lexer-shared.js');
10
10
 
11
11
  const transformKeywords = (state) => fp.set(['word','type'],moo.keywords(state.word.rawKeywords),state);
12
12
 
@@ -0,0 +1,25 @@
1
+ import { State } from './state.js';
2
+ import { Tags } from './statement.js';
3
+ interface HookOptsObject {
4
+ name: string;
5
+ tags?: string;
6
+ }
7
+ type MaybePromise<T> = T | Promise<T>;
8
+ type HookFunction<S extends State = State, R extends State | undefined = undefined> = [R] extends [undefined] ? (state: S) => MaybePromise<void | object> : (state: S) => MaybePromise<R>;
9
+ type HookOpts = HookFunction | string | HookOptsObject;
10
+ type ApplyHooksFunction = (state: State, tags?: Tags) => Promise<State>;
11
+ type AddHookFunction = <S extends State = State, R extends State = State>(opts: HookOpts, f: HookFunction<S, R>) => void;
12
+ declare const BeforeAll: AddHookFunction;
13
+ declare const applyBeforeAllHooks: ApplyHooksFunction;
14
+ declare const Before: AddHookFunction;
15
+ declare const applyBeforeHooks: ApplyHooksFunction;
16
+ declare const BeforeStep: AddHookFunction;
17
+ declare const applyBeforeStepHooks: ApplyHooksFunction;
18
+ declare const AfterAll: AddHookFunction;
19
+ declare const applyAfterAllHooks: ApplyHooksFunction;
20
+ declare const After: AddHookFunction;
21
+ declare const applyAfterHooks: ApplyHooksFunction;
22
+ declare const AfterStep: AddHookFunction;
23
+ declare const applyAfterStepHooks: ApplyHooksFunction;
24
+ export { applyAfterStepHooks, AfterStep, applyAfterHooks, After, applyAfterAllHooks, AfterAll, applyBeforeStepHooks, BeforeStep, applyBeforeHooks, Before, applyBeforeAllHooks, BeforeAll, };
25
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,UAAU,cAAc;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAEtC,KAAK,YAAY,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,EAAE,CAAC,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,GACvG,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,CAAC,IAAI,GAAG,MAAM,CAAC,GACzC,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC;AAEpC,KAAK,QAAQ,GAAG,YAAY,GAAG,MAAM,GAAG,cAAc,CAAC;AACvD,KAAK,kBAAkB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;AACxE,KAAK,eAAe,GAAG,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,EAAE,CAAC,SAAS,KAAK,GAAG,KAAK,EACpE,IAAI,EAAE,QAAQ,EACd,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,KACpB,IAAI,CAAC;AA6FV,QAAA,MAAM,SAAS,EAAE,eAEhB,CAAC;AACF,QAAA,MAAM,mBAAmB,EAAE,kBAAkF,CAAC;AAE9G,QAAA,MAAM,MAAM,EAAE,eAEb,CAAC;AACF,QAAA,MAAM,gBAAgB,EAAE,kBAA+E,CAAC;AAExG,QAAA,MAAM,UAAU,EAAE,eAEjB,CAAC;AACF,QAAA,MAAM,oBAAoB,EAAE,kBAAmF,CAAC;AAEhH,QAAA,MAAM,QAAQ,EAAE,eAEf,CAAC;AACF,QAAA,MAAM,kBAAkB,EAAE,kBAAiF,CAAC;AAE5G,QAAA,MAAM,KAAK,EAAE,eAEZ,CAAC;AACF,QAAA,MAAM,eAAe,EAAE,kBAA8E,CAAC;AAEtG,QAAA,MAAM,SAAS,EAAE,eAEhB,CAAC;AACF,QAAA,MAAM,mBAAmB,EAAE,kBAAkF,CAAC;AAE9G,OAAO,EACH,mBAAmB,EACnB,SAAS,EACT,eAAe,EACf,KAAK,EACL,kBAAkB,EAClB,QAAQ,EACR,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EAChB,MAAM,EACN,mBAAmB,EACnB,SAAS,GACZ,CAAC"}