hiptest-publisher 1.29.2 → 1.30.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (173) hide show
  1. checksums.yaml +5 -5
  2. data/config/locales/en.yml +7 -0
  3. data/lib/config/swift-xctest.conf +18 -0
  4. data/lib/hiptest-publisher.rb +1 -3
  5. data/lib/hiptest-publisher/client.rb +26 -4
  6. data/lib/hiptest-publisher/export_cache.rb +85 -0
  7. data/lib/hiptest-publisher/formatters/reporter.rb +4 -0
  8. data/lib/hiptest-publisher/handlebars_helper.rb +13 -4
  9. data/lib/hiptest-publisher/options_parser.rb +6 -0
  10. data/lib/templates/behat/actionword.hbs +1 -1
  11. data/lib/templates/behat/actionwords.hbs +2 -2
  12. data/lib/templates/behat/library.hbs +2 -2
  13. data/lib/templates/behat/libraryactionword.hbs +1 -1
  14. data/lib/templates/behave/actionword.hbs +2 -2
  15. data/lib/templates/behave/actionwords.hbs +2 -2
  16. data/lib/templates/behave/library.hbs +2 -2
  17. data/lib/templates/behave/libraryactionword.hbs +2 -2
  18. data/lib/templates/common/_gherkin_pattern.hbs +1 -1
  19. data/lib/templates/common/datatable.hbs +2 -2
  20. data/lib/templates/csharp/_body.hbs +1 -1
  21. data/lib/templates/csharp/actionwords.hbs +2 -2
  22. data/lib/templates/csharp/folder.hbs +1 -1
  23. data/lib/templates/csharp/ifthen.hbs +2 -2
  24. data/lib/templates/csharp/scenarios.hbs +1 -1
  25. data/lib/templates/csharp/template.hbs +1 -1
  26. data/lib/templates/csharp/tests.hbs +1 -1
  27. data/lib/templates/csharp/while.hbs +1 -1
  28. data/lib/templates/cucumber/actionwords.hbs +1 -1
  29. data/lib/templates/cucumber/groovy/step-definitions/_gherkin_pattern.hbs +1 -1
  30. data/lib/templates/cucumber/groovy/step-definitions/actionword.hbs +1 -1
  31. data/lib/templates/cucumber/groovy/step-definitions/actionwords.hbs +1 -1
  32. data/lib/templates/cucumber/groovy/step-definitions/library.hbs +1 -1
  33. data/lib/templates/cucumber/groovy/step-definitions/libraryactionword.hbs +1 -1
  34. data/lib/templates/cucumber/java/actionword.hbs +1 -1
  35. data/lib/templates/cucumber/java/actionwords.hbs +1 -1
  36. data/lib/templates/cucumber/javascript/actionword.hbs +1 -1
  37. data/lib/templates/cucumber/javascript/actionwords.hbs +1 -1
  38. data/lib/templates/cucumber/typescript/actionword.hbs +1 -1
  39. data/lib/templates/cucumber/typescript/actionwords.hbs +1 -1
  40. data/lib/templates/cucumber/typescript/library.hbs +1 -1
  41. data/lib/templates/cucumber/typescript/libraryactionword.hbs +1 -1
  42. data/lib/templates/gherkin/_gherkin_text.hbs +1 -1
  43. data/lib/templates/gherkin/_scenario.hbs +2 -2
  44. data/lib/templates/gherkin/datatable.hbs +1 -1
  45. data/lib/templates/gherkin/folder.hbs +3 -3
  46. data/lib/templates/gherkin/single_test.hbs +1 -1
  47. data/lib/templates/gherkin/template.hbs +1 -1
  48. data/lib/templates/groovy/_steps.hbs +1 -1
  49. data/lib/templates/groovy/actionwords.hbs +2 -2
  50. data/lib/templates/groovy/datatable.hbs +1 -1
  51. data/lib/templates/groovy/folder.hbs +2 -2
  52. data/lib/templates/groovy/libraries.hbs +3 -3
  53. data/lib/templates/groovy/library.hbs +2 -2
  54. data/lib/templates/groovy/scenarios.hbs +1 -1
  55. data/lib/templates/groovy/template.hbs +1 -1
  56. data/lib/templates/groovy/tests.hbs +1 -1
  57. data/lib/templates/java/_body.hbs +1 -1
  58. data/lib/templates/java/actionwords.hbs +2 -2
  59. data/lib/templates/java/espresso/folder.hbs +1 -1
  60. data/lib/templates/java/espresso/scenarios.hbs +1 -1
  61. data/lib/templates/java/espresso/tests.hbs +1 -1
  62. data/lib/templates/java/folder.hbs +1 -1
  63. data/lib/templates/java/ifthen.hbs +2 -2
  64. data/lib/templates/java/libraries.hbs +3 -3
  65. data/lib/templates/java/library.hbs +2 -2
  66. data/lib/templates/java/scenarios.hbs +1 -1
  67. data/lib/templates/java/template.hbs +1 -1
  68. data/lib/templates/java/testng/folder.hbs +1 -1
  69. data/lib/templates/java/testng/scenarios.hbs +1 -1
  70. data/lib/templates/java/testng/tests.hbs +1 -1
  71. data/lib/templates/java/tests.hbs +1 -1
  72. data/lib/templates/java/while.hbs +1 -1
  73. data/lib/templates/javascript/_body.hbs +2 -2
  74. data/lib/templates/javascript/actionwords.hbs +2 -2
  75. data/lib/templates/javascript/codeceptjs/actionword.hbs +1 -1
  76. data/lib/templates/javascript/codeceptjs/actionwords.hbs +1 -1
  77. data/lib/templates/javascript/es6/actionwords.hbs +2 -2
  78. data/lib/templates/javascript/folder.hbs +1 -1
  79. data/lib/templates/javascript/ifthen.hbs +2 -2
  80. data/lib/templates/javascript/jasmine/folder.hbs +1 -1
  81. data/lib/templates/javascript/jasmine/scenarios.hbs +1 -1
  82. data/lib/templates/javascript/jasmine/tests.hbs +1 -1
  83. data/lib/templates/javascript/mocha/folder.hbs +1 -1
  84. data/lib/templates/javascript/scenarios.hbs +1 -1
  85. data/lib/templates/javascript/template.hbs +1 -1
  86. data/lib/templates/javascript/tests.hbs +1 -1
  87. data/lib/templates/javascript/while.hbs +1 -1
  88. data/lib/templates/jbehave/_scenario.hbs +1 -1
  89. data/lib/templates/jbehave/folder.hbs +3 -3
  90. data/lib/templates/jbehave/single_test.hbs +1 -1
  91. data/lib/templates/jbehave/steps/_gherkin_pattern.hbs +1 -1
  92. data/lib/templates/jbehave/steps/actionword.hbs +1 -1
  93. data/lib/templates/jbehave/steps/actionwords.hbs +1 -1
  94. data/lib/templates/php/_body.hbs +1 -1
  95. data/lib/templates/php/actionwords.hbs +2 -2
  96. data/lib/templates/php/folder.hbs +1 -1
  97. data/lib/templates/php/ifthen.hbs +2 -2
  98. data/lib/templates/php/libraries.hbs +4 -4
  99. data/lib/templates/php/library.hbs +2 -2
  100. data/lib/templates/php/scenarios.hbs +1 -1
  101. data/lib/templates/php/template.hbs +1 -1
  102. data/lib/templates/php/tests.hbs +1 -1
  103. data/lib/templates/php/while.hbs +1 -1
  104. data/lib/templates/python/_body.hbs +1 -1
  105. data/lib/templates/python/actionwords.hbs +1 -1
  106. data/lib/templates/python/folder.hbs +1 -1
  107. data/lib/templates/python/libraries.hbs +4 -4
  108. data/lib/templates/python/library.hbs +1 -1
  109. data/lib/templates/python/scenarios.hbs +1 -1
  110. data/lib/templates/python/template.hbs +1 -1
  111. data/lib/templates/python/tests.hbs +1 -1
  112. data/lib/templates/python/unittest/actionwords.hbs +1 -1
  113. data/lib/templates/python/while.hbs +1 -1
  114. data/lib/templates/robotframework/_keyword_body.hbs +1 -1
  115. data/lib/templates/robotframework/_scenario.hbs +1 -1
  116. data/lib/templates/robotframework/actionwords.hbs +1 -1
  117. data/lib/templates/robotframework/datatable.hbs +1 -1
  118. data/lib/templates/robotframework/folder.hbs +16 -16
  119. data/lib/templates/robotframework/scenarios.hbs +15 -15
  120. data/lib/templates/robotframework/template.hbs +1 -1
  121. data/lib/templates/robotframework/tests.hbs +2 -2
  122. data/lib/templates/ruby/_body.hbs +1 -1
  123. data/lib/templates/ruby/actionwords.hbs +2 -2
  124. data/lib/templates/ruby/folder.hbs +1 -1
  125. data/lib/templates/ruby/ifthen.hbs +2 -2
  126. data/lib/templates/ruby/minitest/folder.hbs +1 -1
  127. data/lib/templates/ruby/minitest/scenarios.hbs +1 -1
  128. data/lib/templates/ruby/minitest/tests.hbs +1 -1
  129. data/lib/templates/ruby/scenarios.hbs +1 -1
  130. data/lib/templates/ruby/template.hbs +1 -1
  131. data/lib/templates/ruby/tests.hbs +1 -1
  132. data/lib/templates/ruby/while.hbs +1 -1
  133. data/lib/templates/seleniumide/call.hbs +1 -1
  134. data/lib/templates/seleniumide/single_test.hbs +1 -1
  135. data/lib/templates/seleniumide/tests.hbs +1 -1
  136. data/lib/templates/specflow/actionword.hbs +1 -1
  137. data/lib/templates/specflow/actionwords.hbs +2 -2
  138. data/lib/templates/swift/_body.hbs +11 -0
  139. data/lib/templates/swift/_item_as_def.hbs +5 -0
  140. data/lib/templates/swift/_scenario.hbs +7 -0
  141. data/lib/templates/swift/actionword.hbs +1 -0
  142. data/lib/templates/swift/actionwords.hbs +6 -0
  143. data/lib/templates/swift/argument.hbs +1 -0
  144. data/lib/templates/swift/assign.hbs +1 -0
  145. data/lib/templates/swift/binaryexpression.hbs +1 -0
  146. data/lib/templates/swift/call.hbs +2 -0
  147. data/lib/templates/swift/dataset.hbs +4 -0
  148. data/lib/templates/swift/dict.hbs +1 -0
  149. data/lib/templates/swift/field.hbs +1 -0
  150. data/lib/templates/swift/folder.hbs +23 -0
  151. data/lib/templates/swift/ifthen.hbs +7 -0
  152. data/lib/templates/swift/index.hbs +1 -0
  153. data/lib/templates/swift/list.hbs +1 -0
  154. data/lib/templates/swift/parameter.hbs +1 -0
  155. data/lib/templates/swift/parenthesis.hbs +1 -0
  156. data/lib/templates/swift/project.hbs +2 -0
  157. data/lib/templates/swift/property.hbs +1 -0
  158. data/lib/templates/swift/scenario.hbs +1 -0
  159. data/lib/templates/swift/scenarios.hbs +25 -0
  160. data/lib/templates/swift/single_scenario.hbs +24 -0
  161. data/lib/templates/swift/single_test.hbs +23 -0
  162. data/lib/templates/swift/step.hbs +1 -0
  163. data/lib/templates/swift/stringliteral.hbs +1 -0
  164. data/lib/templates/swift/symbol.hbs +1 -0
  165. data/lib/templates/swift/tag.hbs +1 -0
  166. data/lib/templates/swift/template.hbs +1 -0
  167. data/lib/templates/swift/test.hbs +1 -0
  168. data/lib/templates/swift/tests.hbs +25 -0
  169. data/lib/templates/swift/while.hbs +5 -0
  170. data/lib/templates/typescript/actionwords.hbs +1 -1
  171. data/lib/templates/typescript/libraries.hbs +4 -4
  172. data/lib/templates/typescript/library.hbs +1 -1
  173. metadata +73 -40
@@ -1 +1 @@
1
- {{#each treated_chunks}}{{#if this.is_variable?}}${{#curly}}{{{this.raw.children.name}}}{{/curly}}{{else}}{{{ escape_double_quotes this.raw.children.value }}}{{/if}}{{/each}}
1
+ {{#each treated_chunks as |treated_chunk|}}{{#if treated_chunk.is_variable?}}${{#curly}}{{{treated_chunk.raw.children.name}}}{{/curly}}{{else}}{{{ escape_double_quotes treated_chunk.raw.children.value }}}{{/if}}{{/each}}
@@ -2,6 +2,6 @@
2
2
  Resource{{tab}}keywords.txt
3
3
 
4
4
  *** Test Cases ***
5
- {{#each rendered_children.tests}}
6
- {{this}}
5
+ {{#each rendered_children.tests as |test|}}
6
+ {{test}}
7
7
  {{/each}}
@@ -3,7 +3,7 @@
3
3
  {{#comment '#'}}{{#if has_description?}}{{{ rendered_children.description }}}
4
4
  {{/if}}{{#if has_tags?}}Tags: {{{ join rendered_children.tags ' '}}}
5
5
  {{/if}}{{/comment}}
6
- {{#each rendered_children.body}}{{{this}}}
6
+ {{#each rendered_children.body as |step|}}{{{step}}}
7
7
  {{/each}}
8
8
  {{#if has_step?}}raise NotImplementedError{{/if}}
9
9
  {{/indent}}
@@ -1,6 +1,6 @@
1
1
  # encoding: UTF-8
2
2
 
3
- module Actionwords{{#indent}}{{#each rendered_children.actionwords}}
4
- {{{this}}}
3
+ module Actionwords{{#indent}}{{#each rendered_children.actionwords as |actionword|}}
4
+ {{{actionword}}}
5
5
  {{/each}}{{/indent}}
6
6
  end
@@ -9,7 +9,7 @@ include Actionwords
9
9
  {{> body}}
10
10
  end
11
11
 
12
- {{/unless}}{{#each rendered_children.scenarios}}{{{this}}}
12
+ {{/unless}}{{#each rendered_children.scenarios as |scenario|}}{{{scenario}}}
13
13
 
14
14
  {{/each}}
15
15
  {{/indent}}
@@ -1,7 +1,7 @@
1
1
  if ({{{ rendered_children.condition }}})
2
- {{#indent}}{{#each rendered_children.then}}{{{this}}}{{/each}}
2
+ {{#indent}}{{#each rendered_children.then as |then_statement|}}{{{then_statement}}}{{/each}}
3
3
  {{/indent}}
4
4
  {{#if has_else?}}else
5
- {{#indent}}{{#each rendered_children.else}}{{{this}}}{{/each}}
5
+ {{#indent}}{{#each rendered_children.else as |else_statement|}}{{{else_statement}}}{{/each}}
6
6
  {{/indent}}
7
7
  {{/if}}end
@@ -11,7 +11,7 @@ include Actionwords
11
11
  {{/indent}}
12
12
  end
13
13
 
14
- {{/unless}}{{#each rendered_children.scenarios}}{{{this}}}
14
+ {{/unless}}{{#each rendered_children.scenarios as |scenario|}}{{{scenario}}}
15
15
 
16
16
  {{/each}}
17
17
  {{/indent}}
@@ -6,7 +6,7 @@ require_relative 'actionwords'
6
6
  class Test{{{ camelize self_name }}} < MiniTest::Unit::TestCase
7
7
  include Actionwords
8
8
  {{#indent}}
9
- {{#each rendered_children.scenarios}}{{{this}}}
9
+ {{#each rendered_children.scenarios as |scenario|}}{{{scenario}}}
10
10
 
11
11
  {{/each}}
12
12
  {{/indent}}
@@ -6,7 +6,7 @@ require_relative 'actionwords'
6
6
  class Test{{{ camelize self_name }}} < MiniTest::Unit::TestCase
7
7
  include Actionwords
8
8
  {{#indent}}
9
- {{#each rendered_children.tests}}{{{this}}}
9
+ {{#each rendered_children.tests as |test|}}{{{test}}}
10
10
 
11
11
  {{/each}}
12
12
  {{/indent}}
@@ -5,7 +5,7 @@ require_relative 'actionwords'
5
5
  describe '{{{ escape_single_quotes self_name }}}' do
6
6
  include Actionwords
7
7
  {{#indent}}
8
- {{#each rendered_children.scenarios}}{{{this}}}
8
+ {{#each rendered_children.scenarios as |scenario|}}{{{scenario}}}
9
9
 
10
10
  {{/each}}
11
11
  {{/indent}}
@@ -1 +1 @@
1
- "{{#each treated_chunks}}{{#if this.is_variable?}}#{{#curly}}{{{this.raw.children.name}}}{{/curly}}{{else}}{{{ escape_double_quotes this.raw.children.value }}}{{/if}}{{/each}}"
1
+ "{{#each treated_chunks as |treated_chunk|}}{{#if treated_chunk.is_variable?}}#{{#curly}}{{{treated_chunk.raw.children.name}}}{{/curly}}{{else}}{{{ escape_double_quotes treated_chunk.raw.children.value }}}{{/if}}{{/each}}"
@@ -5,7 +5,7 @@ require_relative 'actionwords'
5
5
  describe '{{{ escape_single_quotes self_name }}}' do
6
6
  include Actionwords
7
7
  {{#indent}}
8
- {{#each rendered_children.tests}}{{{this}}}
8
+ {{#each rendered_children.tests as |test|}}{{{test}}}
9
9
 
10
10
  {{/each}}
11
11
  {{/indent}}
@@ -1,5 +1,5 @@
1
1
  while ({{{ rendered_children.condition }}}){{#indent}}
2
- {{#each rendered_children.body }}{{{this}}}
2
+ {{#each rendered_children.body as |step|}}{{{step}}}
3
3
  {{/each}}
4
4
  {{/indent}}
5
5
  end
@@ -1,6 +1,6 @@
1
1
  <tr>{{#indent}}
2
2
  <td>{{{ rendered_children.actionword}}}</td>
3
- {{#each rendered_children.all_arguments}}{{{ this }}}
3
+ {{#each rendered_children.all_arguments as |argument|}}{{{ argument }}}
4
4
  {{/each}}
5
5
  {{/indent}}
6
6
  </tr>
@@ -17,7 +17,7 @@
17
17
  {{/indent}}
18
18
  </thead>
19
19
  <tbody>{{#indent}}
20
- {{#each rendered_children.body}}{{{ this }}}
20
+ {{#each rendered_children.body as |step|}}{{{ step }}}
21
21
  {{/each}}{{/indent}}
22
22
  </tbody>
23
23
  {{/indent}}
@@ -7,7 +7,7 @@
7
7
  <table>{{#indent}}
8
8
  <tbody>{{#indent}}
9
9
  <tr><td><b>Suite Of Tests</b></td></tr>
10
- {{#each rendered_children.tests}}{{{this}}}
10
+ {{#each rendered_children.tests as |test|}}{{{test}}}
11
11
  {{/each}}
12
12
  {{/indent}}
13
13
  </tbody>
@@ -1,6 +1,6 @@
1
1
  {{#if rendered_children.gherkin_annotation }}[Given("{{#escape_double_quotes}}{{> gherkin_pattern}}{{/escape_double_quotes}}"), When("{{#escape_double_quotes}}{{> gherkin_pattern}}{{/escape_double_quotes}}"), Then("{{#escape_double_quotes}}{{> gherkin_pattern}}{{/escape_double_quotes}}")]
2
2
  public void {{{ camelize_upper rendered_children.name }}}({{#if has_parameters?}}{{{join rendered_children.parameters_ordered_by_pattern ', '}}}{{/if}}) {{#curly}}{{#indent}}
3
- {{{ context.call_prefix }}}.{{ camelize_upper rendered_children.name }}({{#if has_parameters?}}{{#join raw_parameter_names ', '}}{{{camelize_lower this}}}{{/join}}{{/if}});
3
+ {{{ context.call_prefix }}}.{{ camelize_upper rendered_children.name }}({{#if has_parameters?}}{{#join raw_parameter_names ', ' as |param|}}{{{camelize_lower param}}}{{/join}}{{/if}});
4
4
  {{/indent}}
5
5
  {{/curly}}
6
6
  {{/if}}
@@ -6,8 +6,8 @@ using TechTalk.SpecFlow;
6
6
  public class StepDefinitions {{#curly}}{{#indent}}
7
7
 
8
8
  public Actionwords {{{ context.call_prefix }}} = new Actionwords();
9
- {{#each rendered_children.actionwords}}
10
- {{{this}}}{{/each}}
9
+ {{#each rendered_children.actionwords as |actionword|}}
10
+ {{{actionword}}}{{/each}}
11
11
  {{/indent}}
12
12
  {{/curly}}
13
13
  {{/indent}}
@@ -0,0 +1,11 @@
1
+ {{#clear_empty_lines}}
2
+ {{#indent}}
3
+ {{#comment '//'}}{{#if has_description?}}{{{ rendered_children.description }}}
4
+ {{/if}}{{#if has_tags?}}Tags: {{{ join rendered_children.tags ' '}}}
5
+ {{/if}}{{/comment}}
6
+
7
+ {{#each rendered_children.body as |step|}}{{{step}}}
8
+ {{/each}}
9
+ {{#if has_step?}}raise NotImplementedError{{/if}}
10
+ {{/indent}}
11
+ {{/clear_empty_lines}}
@@ -0,0 +1,5 @@
1
+ func {{ underscore rendered_children.name }}({{#if has_parameters?}}{{{ join rendered_children.parameters ', '}}}{{/if}}) {{#curly}}{{#indent}}
2
+ {{> body}}
3
+
4
+ {{/indent}}
5
+ {{/curly}}
@@ -0,0 +1,7 @@
1
+ {{#if has_datasets?}}
2
+ {{> item_as_def}}
3
+ {{{ rendered_children.datatable }}}{{else}}func test{{{ camelize rendered_children.name }}}{{#if rendered_children.uid}}Uid{{{ normalize rendered_children.uid}}}{{/if}}() {{#curly}}{{#indent}}
4
+ {{> body}}
5
+ {{/indent}}
6
+ {{/curly}}
7
+ {{/if}}
@@ -0,0 +1 @@
1
+ {{> item_as_def}}
@@ -0,0 +1,6 @@
1
+ import XCTest
2
+
3
+ extension XCUIApplication {{#curly}}{{#indent}}
4
+ {{#each rendered_children.actionwords as |actionword|}}
5
+ {{{actionword}}}
6
+ {{/each}}{{/indent}}{{/curly}}
@@ -0,0 +1 @@
1
+ {{{downcase rendered_children.name }}}: {{{escape_new_line rendered_children.value }}}
@@ -0,0 +1 @@
1
+ {{{ rendered_children.to }}} = {{{ rendered_children.value }}}
@@ -0,0 +1 @@
1
+ {{{ rendered_children.left }}} {{{ rendered_children.operator }}} {{{ rendered_children.right }}}
@@ -0,0 +1,2 @@
1
+ {{#if has_annotation? }}{{#comment '//'}}{{{ rendered_children.gherkin_text }}}{{/comment}}
2
+ {{/if}}app.{{{ underscore rendered_children.actionword }}}({{#if has_arguments?}}{{{ join rendered_children.all_arguments ', '}}}{{/if}})
@@ -0,0 +1,4 @@
1
+ func {{{camelize rendered_children.name}}}{{#if rendered_children.test_snapshot_uid}}{{{rendered_children.test_snapshot_uid}}}{{/if}}() {{#curly}}{{#indent}}
2
+ {{{ underscore scenario_name }}}({{{ join rendered_children.arguments ', ' }}})
3
+ {{/indent}}
4
+ {{/curly}}
@@ -0,0 +1 @@
1
+ {{#curly}}{{{ join rendered_children.items ', '}}}{{/curly}}
@@ -0,0 +1 @@
1
+ {{{ rendered_children.base }}}.{{{ rendered_children.name }}}
@@ -0,0 +1,23 @@
1
+ import XCTest
2
+
3
+ class {{{ clear_extension context.filename }}}: XCTestCase {{#curly}}
4
+ {{#indent}}
5
+ var app: XCUIApplication!
6
+
7
+ override func setUp() {{#curly}}{{#indent}}
8
+ super.setUp()
9
+
10
+ // Since UI tests are more expensive to run, it's usually a good idea to exit if a failure was encountered
11
+ continueAfterFailure = false
12
+
13
+ app = XCUIApplication()
14
+
15
+ // We send a command line argument to our app, to enable it to reset its state
16
+ app.launchArguments.append("--uitesting")
17
+ {{/indent}}
18
+ {{/curly}}
19
+ {{#each rendered_children.scenarios as |scenario|}}{{{scenario}}}
20
+
21
+ {{/each}}
22
+ {{/indent}}
23
+ {{/curly}}
@@ -0,0 +1,7 @@
1
+ if ({{{ rendered_children.condition }}}) {{#curly}}
2
+ {{#indent}}{{#each rendered_children.then as |then_statement|}}{{{then_statement}}}{{/each}}
3
+ {{/indent}}
4
+ {{/curly}}{{#if has_else?}} else {{#curly}}
5
+ {{#indent}}{{#each rendered_children.else as |else_statement|}}{{{else_statement}}}{{/each}}
6
+ {{/indent}}
7
+ {{/curly}}{{/if}}
@@ -0,0 +1 @@
1
+ {{{ rendered_children.base }}}[{{{ rendered_children.expression }}}]
@@ -0,0 +1 @@
1
+ [{{{ join rendered_children.items ', '}}}]
@@ -0,0 +1 @@
1
+ {{{ downcase rendered_children.name }}}: String{{#if has_default_value?}} = {{{ rendered_children.default }}}{{/if}}
@@ -0,0 +1 @@
1
+ ({{{ rendered_children.content }}})
@@ -0,0 +1,2 @@
1
+ name: {{{ rendered_children.name }}}
2
+ description: {{{ rendered_children.description }}}
@@ -0,0 +1 @@
1
+ {{{ rendered_children.key }}}: {{{ rendered_children.value }}}
@@ -0,0 +1 @@
1
+ {{> scenario}}
@@ -0,0 +1,25 @@
1
+ import XCTest
2
+
3
+ class {{{ clear_extension context.filename }}}: XCTestCase {{#curly}}
4
+ {{#indent}}
5
+ var app: XCUIApplication!
6
+
7
+ override func setUp() {{#curly}}{{#indent}}
8
+ super.setUp()
9
+
10
+ // Since UI tests are more expensive to run, it's usually a good idea to exit if a failure was encountered
11
+ continueAfterFailure = false
12
+
13
+ app = XCUIApplication()
14
+
15
+ // We send a command line argument to our app, to enable it to reset its state
16
+ app.launchArguments.append("--uitesting")
17
+ app.launch()
18
+ {{/indent}}
19
+ {{/curly}}
20
+
21
+ {{#each rendered_children.scenarios as |scenario|}}{{{scenario}}}
22
+
23
+ {{/each}}
24
+ {{/indent}}
25
+ {{/curly}}
@@ -0,0 +1,24 @@
1
+ import XCTest
2
+
3
+ class {{{ clear_extension context.filename }}}: XCTestCase {{#curly}}
4
+ {{#indent}}
5
+ var app: XCUIApplication!
6
+
7
+ override func setUp() {{#curly}}{{#indent}}
8
+ super.setUp()
9
+
10
+ // Since UI tests are more expensive to run, it's usually a good idea to exit if a failure was encountered
11
+ continueAfterFailure = false
12
+
13
+ app = XCUIApplication()
14
+
15
+ // We send a command line argument to our app, to enable it to reset its state
16
+ app.launchArguments.append("--uitesting")
17
+ app.launch()
18
+ {{/indent}}
19
+ {{/curly}}
20
+
21
+ {{> scenario}}
22
+
23
+ {{/indent}}
24
+ {{/curly}}
@@ -0,0 +1,23 @@
1
+ import XCTest
2
+
3
+ class {{{ clear_extension context.filename }}}: XCTestCase {{#curly}}
4
+ {{#indent}}
5
+ var app: XCUIApplication!
6
+
7
+ override func setUp() {{#curly}}{{#indent}}
8
+ super.setUp()
9
+
10
+ // Since UI tests are more expensive to run, it's usually a good idea to exit if a failure was encountered
11
+ continueAfterFailure = false
12
+
13
+ app = XCUIApplication()
14
+
15
+ // We send a command line argument to our app, to enable it to reset its state
16
+ app.launchArguments.append("--uitesting")
17
+
18
+ app.launch()
19
+ {{/indent}}
20
+ {{/curly}}
21
+ {{> scenario}}
22
+ {{/indent}}
23
+ {{/curly}}
@@ -0,0 +1 @@
1
+ {{#comment '//'}}TODO: Implement {{{rendered_children.key}}}: {{{rendered_children.value}}}{{/comment}}
@@ -0,0 +1 @@
1
+ "{{ rendered_children.value }}"
@@ -0,0 +1 @@
1
+ {{rendered_children.delimiter}}{{to_string rendered_children.value }}{{rendered_children.delimiter}}
@@ -0,0 +1 @@
1
+ {{{ rendered_children.key }}}{{#if has_value?}}:{{{rendered_children.value}}}{{/if}}
@@ -0,0 +1 @@
1
+ "{{#each treated_chunks as |treated_chunk|}}{{#if treated_chunk.is_variable?}}#{{#curly}}{{{treated_chunk.raw.children.name}}}{{/curly}}{{else}}{{{ escape_double_quotes treated_chunk.raw.children.value }}}{{/if}}{{/each}}"
@@ -0,0 +1 @@
1
+ {{> scenario}}
@@ -0,0 +1,25 @@
1
+ import XCTest
2
+
3
+ class {{{ clear_extension context.filename }}}: XCTestCase {{#curly}}
4
+ {{#indent}}
5
+ var app: XCUIApplication!
6
+
7
+ override func setUp() {{#curly}}{{#indent}}
8
+ super.setUp()
9
+
10
+ // Since UI tests are more expensive to run, it's usually a good idea to exit if a failure was encountered
11
+ continueAfterFailure = false
12
+
13
+ app = XCUIApplication()
14
+
15
+ // We send a command line argument to our app, to enable it to reset its state
16
+ app.launchArguments.append("--uitesting")
17
+ app.launch()
18
+ {{/indent}}
19
+ {{/curly}}
20
+
21
+ {{#each rendered_children.tests as |test|}}{{{test}}}
22
+
23
+ {{/each}}
24
+ {{/indent}}
25
+ {{/curly}}
@@ -0,0 +1,5 @@
1
+ while ({{{ rendered_children.condition }}}) {{#curly}}{{#indent}}
2
+ {{#each rendered_children.body as |step|}}{{{step}}}
3
+ {{/each}}
4
+ {{/indent}}
5
+ {{/curly}}
@@ -2,6 +2,6 @@ import { TableDefinition } from "cucumber";
2
2
  {{#if uses_library?}}import { ActionwordLibrary } from "./actionword_library";{{/if}}
3
3
 
4
4
  export class ActionWords{{#if uses_library?}} extends ActionwordLibrary{{/if}} {{#curly}}{{#indent}}
5
- {{#each rendered_children.actionwords}}{{{this}}}
5
+ {{#each rendered_children.actionwords as |actionword|}}{{{actionword}}}
6
6
  {{/each}}{{/indent}}
7
7
  {{/curly}}
@@ -1,9 +1,9 @@
1
- {{#each library_names}}import { {{camelize this}}Library } from "./{{downcase this}}_library"
1
+ {{#each library_names as |library_name|}}import { {{camelize library_name}}Library } from "./{{downcase library_name}}_library"
2
2
  {{/each}}
3
3
 
4
- export class ActionwordLibrary {{#curly}}{{#indent}}{{#each library_names}}
5
- get{{camelize this}}Library() {{#curly}}{{#indent}}
6
- return new {{camelize this}}Library(){{/indent}}
4
+ export class ActionwordLibrary {{#curly}}{{#indent}}{{#each library_names as |library_name|}}
5
+ get{{camelize library_name}}Library() {{#curly}}{{#indent}}
6
+ return new {{camelize library_name}}Library(){{/indent}}
7
7
  {{/curly}}
8
8
  {{/each}}{{/indent}}
9
9
  {{/curly}}