cucumber 2.99.0 → 3.0.0.pre.1

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 (214) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +22 -10
  3. data/CONTRIBUTING.md +13 -0
  4. data/Gemfile +11 -4
  5. data/History.md +19 -1
  6. data/README.md +1 -1
  7. data/cucumber.gemspec +2 -2
  8. data/cucumber.yml +2 -2
  9. data/features/docs/api/listen_for_events.feature +7 -6
  10. data/features/docs/cli/help.feature +8 -0
  11. data/features/docs/cli/retry_failing_tests.feature +51 -16
  12. data/features/docs/defining_steps/nested_steps_i18n.feature +2 -0
  13. data/features/docs/defining_steps/printing_messages.feature +0 -1
  14. data/features/docs/defining_steps/skip_scenario.feature +0 -34
  15. data/features/docs/extending_cucumber/custom_formatter.feature +2 -30
  16. data/features/docs/formatters/summary_formatter.feature +34 -0
  17. data/features/docs/gherkin/unicode_table.feature +1 -1
  18. data/features/docs/post_configuration_hook.feature +0 -16
  19. data/features/docs/writing_support_code/world.feature +129 -0
  20. data/features/lib/step_definitions/aruba_steps.rb +1 -0
  21. data/features/lib/step_definitions/cli_steps.rb +4 -0
  22. data/features/lib/step_definitions/cucumber_steps.rb +1 -0
  23. data/features/lib/step_definitions/iso-8859-1_steps.rb +1 -0
  24. data/features/lib/step_definitions/json_steps.rb +1 -0
  25. data/features/lib/step_definitions/junit_steps.rb +1 -0
  26. data/features/lib/step_definitions/language_steps.rb +1 -0
  27. data/features/lib/step_definitions/profile_steps.rb +1 -0
  28. data/features/lib/step_definitions/retry_steps.rb +32 -12
  29. data/features/lib/step_definitions/ruby_steps.rb +1 -0
  30. data/features/lib/step_definitions/wire_steps.rb +1 -0
  31. data/features/lib/support/env.rb +2 -1
  32. data/features/lib/support/fake_wire_server.rb +1 -0
  33. data/features/lib/support/feature_factory.rb +1 -0
  34. data/features/lib/support/normalise_output.rb +1 -0
  35. data/gem_tasks/contributors.rake +1 -0
  36. data/gem_tasks/cov.rake +1 -0
  37. data/gem_tasks/cucumber.rake +1 -0
  38. data/gem_tasks/downloads.rb +1 -0
  39. data/gem_tasks/environment.rake +1 -0
  40. data/gem_tasks/examples.rake +2 -1
  41. data/gem_tasks/fix_cr_lf.rake +2 -1
  42. data/gem_tasks/flog.rake +2 -1
  43. data/gem_tasks/rspec.rake +1 -0
  44. data/gem_tasks/sass.rake +2 -1
  45. data/lib/autotest/cucumber.rb +1 -0
  46. data/lib/autotest/cucumber_mixin.rb +1 -0
  47. data/lib/autotest/cucumber_rails.rb +1 -0
  48. data/lib/autotest/cucumber_rails_rspec.rb +1 -0
  49. data/lib/autotest/cucumber_rails_rspec2.rb +1 -0
  50. data/lib/autotest/cucumber_rspec.rb +1 -0
  51. data/lib/autotest/cucumber_rspec2.rb +1 -0
  52. data/lib/autotest/discover.rb +1 -0
  53. data/lib/cucumber.rb +1 -13
  54. data/lib/cucumber/cli/configuration.rb +3 -6
  55. data/lib/cucumber/cli/main.rb +2 -1
  56. data/lib/cucumber/cli/options.rb +239 -173
  57. data/lib/cucumber/cli/profile_loader.rb +1 -0
  58. data/lib/cucumber/cli/rerun_file.rb +1 -0
  59. data/lib/cucumber/configuration.rb +40 -19
  60. data/lib/cucumber/constantize.rb +1 -0
  61. data/lib/cucumber/core_ext/instance_exec.rb +1 -0
  62. data/lib/cucumber/core_ext/string.rb +1 -0
  63. data/lib/cucumber/deprecate.rb +1 -0
  64. data/lib/cucumber/encoding.rb +1 -0
  65. data/lib/cucumber/errors.rb +3 -1
  66. data/lib/cucumber/events.rb +13 -3
  67. data/lib/cucumber/events/step_definition_registered.rb +24 -0
  68. data/lib/cucumber/events/step_match.rb +4 -1
  69. data/lib/cucumber/events/test_run_finished.rb +12 -0
  70. data/lib/cucumber/file_specs.rb +1 -0
  71. data/lib/cucumber/filters.rb +2 -0
  72. data/lib/cucumber/filters/activate_steps.rb +2 -1
  73. data/lib/cucumber/filters/apply_after_hooks.rb +1 -0
  74. data/lib/cucumber/filters/apply_after_step_hooks.rb +1 -0
  75. data/lib/cucumber/filters/apply_around_hooks.rb +1 -0
  76. data/lib/cucumber/filters/apply_before_hooks.rb +1 -0
  77. data/lib/cucumber/filters/gated_receiver.rb +1 -0
  78. data/lib/cucumber/filters/prepare_world.rb +1 -0
  79. data/lib/cucumber/filters/quit.rb +1 -0
  80. data/lib/cucumber/filters/randomizer.rb +1 -0
  81. data/lib/cucumber/filters/retry.rb +3 -3
  82. data/lib/cucumber/filters/tag_limits.rb +1 -0
  83. data/lib/cucumber/filters/tag_limits/test_case_index.rb +1 -0
  84. data/lib/cucumber/filters/tag_limits/verifier.rb +1 -0
  85. data/lib/cucumber/formatter/ansicolor.rb +1 -0
  86. data/lib/cucumber/formatter/backtrace_filter.rb +3 -2
  87. data/lib/cucumber/formatter/console.rb +61 -52
  88. data/lib/cucumber/formatter/console_counts.rb +57 -0
  89. data/lib/cucumber/formatter/console_issues.rb +37 -0
  90. data/lib/cucumber/formatter/debug.rb +1 -0
  91. data/lib/cucumber/formatter/duration.rb +1 -0
  92. data/lib/cucumber/formatter/duration_extractor.rb +1 -0
  93. data/lib/cucumber/formatter/fail_fast.rb +4 -2
  94. data/lib/cucumber/formatter/fanout.rb +1 -0
  95. data/lib/cucumber/formatter/hook_query_visitor.rb +1 -0
  96. data/lib/cucumber/formatter/html.rb +6 -5
  97. data/lib/cucumber/formatter/ignore_missing_messages.rb +1 -0
  98. data/lib/cucumber/formatter/interceptor.rb +1 -0
  99. data/lib/cucumber/formatter/io.rb +1 -0
  100. data/lib/cucumber/formatter/json.rb +15 -13
  101. data/lib/cucumber/formatter/json_pretty.rb +1 -0
  102. data/lib/cucumber/formatter/junit.rb +13 -11
  103. data/lib/cucumber/formatter/legacy_api/adapter.rb +28 -32
  104. data/lib/cucumber/formatter/legacy_api/ast.rb +1 -0
  105. data/lib/cucumber/formatter/legacy_api/results.rb +1 -0
  106. data/lib/cucumber/formatter/legacy_api/runtime_facade.rb +1 -0
  107. data/lib/cucumber/formatter/pretty.rb +7 -1
  108. data/lib/cucumber/formatter/progress.rb +56 -13
  109. data/lib/cucumber/formatter/rerun.rb +15 -18
  110. data/lib/cucumber/formatter/stepdefs.rb +1 -0
  111. data/lib/cucumber/formatter/steps.rb +1 -0
  112. data/lib/cucumber/formatter/summary.rb +43 -20
  113. data/lib/cucumber/formatter/unicode.rb +1 -0
  114. data/lib/cucumber/formatter/usage.rb +26 -21
  115. data/lib/cucumber/gherkin/data_table_parser.rb +1 -0
  116. data/lib/cucumber/gherkin/formatter/ansi_escapes.rb +1 -0
  117. data/lib/cucumber/gherkin/formatter/escaping.rb +1 -0
  118. data/lib/cucumber/gherkin/i18n.rb +1 -0
  119. data/lib/cucumber/gherkin/steps_parser.rb +1 -0
  120. data/lib/cucumber/hooks.rb +1 -0
  121. data/lib/cucumber/load_path.rb +1 -0
  122. data/lib/cucumber/multiline_argument.rb +1 -2
  123. data/lib/cucumber/multiline_argument/data_table.rb +3 -1
  124. data/lib/cucumber/multiline_argument/doc_string.rb +1 -0
  125. data/lib/cucumber/platform.rb +1 -0
  126. data/lib/cucumber/project_initializer.rb +2 -1
  127. data/lib/cucumber/rake/task.rb +1 -0
  128. data/lib/cucumber/rb_support/rb_dsl.rb +11 -9
  129. data/lib/cucumber/rb_support/rb_hook.rb +1 -0
  130. data/lib/cucumber/rb_support/rb_language.rb +19 -8
  131. data/lib/cucumber/rb_support/rb_step_definition.rb +1 -0
  132. data/lib/cucumber/rb_support/rb_transform.rb +1 -0
  133. data/lib/cucumber/rb_support/rb_world.rb +42 -20
  134. data/lib/cucumber/rb_support/snippet.rb +2 -1
  135. data/lib/cucumber/rspec/disable_option_parser.rb +1 -0
  136. data/lib/cucumber/rspec/doubles.rb +1 -0
  137. data/lib/cucumber/running_test_case.rb +1 -25
  138. data/lib/cucumber/runtime.rb +15 -10
  139. data/lib/cucumber/runtime/after_hooks.rb +1 -0
  140. data/lib/cucumber/runtime/before_hooks.rb +1 -0
  141. data/lib/cucumber/runtime/for_programming_languages.rb +1 -0
  142. data/lib/cucumber/runtime/step_hooks.rb +1 -0
  143. data/lib/cucumber/runtime/support_code.rb +1 -0
  144. data/lib/cucumber/runtime/user_interface.rb +1 -0
  145. data/lib/cucumber/step_argument.rb +1 -0
  146. data/lib/cucumber/step_definition_light.rb +1 -0
  147. data/lib/cucumber/step_definitions.rb +1 -0
  148. data/lib/cucumber/step_match.rb +1 -0
  149. data/lib/cucumber/step_match_search.rb +1 -0
  150. data/lib/cucumber/term/ansicolor.rb +1 -0
  151. data/lib/cucumber/unit.rb +1 -0
  152. data/lib/cucumber/version +1 -1
  153. data/lib/simplecov_setup.rb +1 -0
  154. data/spec/cucumber/cli/configuration_spec.rb +1 -0
  155. data/spec/cucumber/cli/main_spec.rb +1 -0
  156. data/spec/cucumber/cli/options_spec.rb +1 -0
  157. data/spec/cucumber/cli/profile_loader_spec.rb +1 -0
  158. data/spec/cucumber/cli/rerun_spec.rb +1 -0
  159. data/spec/cucumber/configuration_spec.rb +1 -0
  160. data/spec/cucumber/constantize_spec.rb +1 -0
  161. data/spec/cucumber/core_ext/instance_exec_spec.rb +1 -0
  162. data/spec/cucumber/file_specs_spec.rb +1 -0
  163. data/spec/cucumber/filters/activate_steps_spec.rb +9 -6
  164. data/spec/cucumber/filters/gated_receiver_spec.rb +1 -0
  165. data/spec/cucumber/filters/retry_spec.rb +27 -21
  166. data/spec/cucumber/filters/tag_limits/test_case_index_spec.rb +1 -0
  167. data/spec/cucumber/filters/tag_limits/verifier_spec.rb +1 -0
  168. data/spec/cucumber/filters/tag_limits_spec.rb +1 -0
  169. data/spec/cucumber/formatter/ansicolor_spec.rb +1 -0
  170. data/spec/cucumber/formatter/console_counts_spec.rb +14 -0
  171. data/spec/cucumber/formatter/debug_spec.rb +1 -0
  172. data/spec/cucumber/formatter/duration_spec.rb +1 -0
  173. data/spec/cucumber/formatter/fail_fast_spec.rb +5 -5
  174. data/spec/cucumber/formatter/html_spec.rb +6 -1
  175. data/spec/cucumber/formatter/interceptor_spec.rb +1 -0
  176. data/spec/cucumber/formatter/json_spec.rb +29 -28
  177. data/spec/cucumber/formatter/junit_spec.rb +1 -0
  178. data/spec/cucumber/formatter/legacy_api/adapter_spec.rb +8 -3
  179. data/spec/cucumber/formatter/pretty_spec.rb +1 -0
  180. data/spec/cucumber/formatter/progress_spec.rb +2 -1
  181. data/spec/cucumber/formatter/rerun_spec.rb +70 -64
  182. data/spec/cucumber/formatter/spec_helper.rb +8 -7
  183. data/spec/cucumber/hooks_spec.rb +1 -0
  184. data/spec/cucumber/multiline_argument/data_table_spec.rb +1 -0
  185. data/spec/cucumber/project_initializer_spec.rb +2 -1
  186. data/spec/cucumber/rake/forked_spec.rb +1 -0
  187. data/spec/cucumber/rake/task_spec.rb +1 -0
  188. data/spec/cucumber/rb_support/rb_language_spec.rb +81 -3
  189. data/spec/cucumber/rb_support/rb_step_definition_spec.rb +1 -0
  190. data/spec/cucumber/rb_support/rb_transform_spec.rb +1 -0
  191. data/spec/cucumber/rb_support/rb_world_spec.rb +2 -1
  192. data/spec/cucumber/rb_support/snippet_spec.rb +1 -0
  193. data/spec/cucumber/running_test_case_spec.rb +1 -0
  194. data/spec/cucumber/runtime/for_programming_languages_spec.rb +1 -0
  195. data/spec/cucumber/runtime/support_code_spec.rb +1 -0
  196. data/spec/cucumber/runtime_spec.rb +1 -0
  197. data/spec/cucumber/step_argument_spec.rb +1 -0
  198. data/spec/cucumber/step_match_search_spec.rb +1 -0
  199. data/spec/cucumber/step_match_spec.rb +1 -0
  200. data/spec/cucumber/world/pending_spec.rb +1 -0
  201. data/spec/spec_helper.rb +1 -0
  202. data/spec/support/standard_step_actions.rb +1 -0
  203. metadata +24 -23
  204. data/lib/cucumber/ast.rb +0 -13
  205. data/lib/cucumber/events/after_test_case.rb +0 -25
  206. data/lib/cucumber/events/after_test_step.rb +0 -30
  207. data/lib/cucumber/events/before_test_case.rb +0 -18
  208. data/lib/cucumber/events/before_test_step.rb +0 -23
  209. data/lib/cucumber/events/bus.rb +0 -86
  210. data/lib/cucumber/events/finished_testing.rb +0 -9
  211. data/lib/cucumber/formatter/event_bus_report.rb +0 -38
  212. data/spec/cucumber/events/bus_spec.rb +0 -94
  213. data/spec/cucumber/formatter/event_bus_report_spec.rb +0 -88
  214. data/spec/cucumber_spec.rb +0 -39
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'cucumber/running_test_case'
2
3
  require 'cucumber/core'
3
4
  require 'cucumber/core/gherkin/writer'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  module Cucumber
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  module Cucumber
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
 
3
4
  module Cucumber
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
  require 'cucumber/step_argument'
3
4
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'cucumber/step_match_search'
2
3
  require 'cucumber/rb_support/rb_dsl'
3
4
  require 'cucumber/rb_support/rb_language'
@@ -1,4 +1,5 @@
1
1
  # encoding: utf-8
2
+ # frozen_string_literal: true
2
3
  require 'spec_helper'
3
4
  require 'cucumber/rb_support/rb_step_definition'
4
5
  require 'cucumber/rb_support/rb_language'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'spec_helper'
2
3
  require 'cucumber/rb_support/rb_language'
3
4
  require 'cucumber/configuration'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  ENV['CUCUMBER_COLORS'] = nil
2
3
  $:.unshift(File.dirname(__FILE__))
3
4
 
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  # Filter that activates steps with obvious pass / fail behaviour
2
3
  class StandardStepActions < Cucumber::Core::Filter.new
3
4
  def test_case(test_case)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.99.0
4
+ version: 3.0.0.pre.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aslak Hellesøy
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2017-09-27 00:00:00.000000000 Z
13
+ date: 2016-09-02 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: cucumber-core
@@ -18,14 +18,14 @@ dependencies:
18
18
  requirements:
19
19
  - - "~>"
20
20
  - !ruby/object:Gem::Version
21
- version: 1.5.0
21
+ version: '2.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - "~>"
27
27
  - !ruby/object:Gem::Version
28
- version: 1.5.0
28
+ version: '2.0'
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: builder
31
31
  requirement: !ruby/object:Gem::Requirement
@@ -586,6 +586,7 @@ files:
586
586
  - features/docs/cli/execute_with_tag_filter.feature
587
587
  - features/docs/cli/fail_fast.feature
588
588
  - features/docs/cli/finding_steps.feature
589
+ - features/docs/cli/help.feature
589
590
  - features/docs/cli/randomize.feature
590
591
  - features/docs/cli/require.feature
591
592
  - features/docs/cli/retry_failing_tests.feature
@@ -617,6 +618,7 @@ files:
617
618
  - features/docs/formatters/pretty_formatter.feature
618
619
  - features/docs/formatters/progress_formatter.feature
619
620
  - features/docs/formatters/rerun_formatter.feature
621
+ - features/docs/formatters/summary_formatter.feature
620
622
  - features/docs/formatters/usage_formatter.feature
621
623
  - features/docs/getting_started.feature
622
624
  - features/docs/gherkin/background.feature
@@ -643,7 +645,9 @@ files:
643
645
  - features/docs/writing_support_code/state.feature
644
646
  - features/docs/writing_support_code/tagged_hooks.feature
645
647
  - features/docs/writing_support_code/transforms.feature
648
+ - features/docs/writing_support_code/world.feature
646
649
  - features/lib/step_definitions/aruba_steps.rb
650
+ - features/lib/step_definitions/cli_steps.rb
647
651
  - features/lib/step_definitions/cucumber_steps.rb
648
652
  - features/lib/step_definitions/iso-8859-1_steps.rb
649
653
  - features/lib/step_definitions/json_steps.rb
@@ -678,7 +682,6 @@ files:
678
682
  - lib/autotest/cucumber_rspec2.rb
679
683
  - lib/autotest/discover.rb
680
684
  - lib/cucumber.rb
681
- - lib/cucumber/ast.rb
682
685
  - lib/cucumber/cli/configuration.rb
683
686
  - lib/cucumber/cli/main.rb
684
687
  - lib/cucumber/cli/options.rb
@@ -692,13 +695,9 @@ files:
692
695
  - lib/cucumber/encoding.rb
693
696
  - lib/cucumber/errors.rb
694
697
  - lib/cucumber/events.rb
695
- - lib/cucumber/events/after_test_case.rb
696
- - lib/cucumber/events/after_test_step.rb
697
- - lib/cucumber/events/before_test_case.rb
698
- - lib/cucumber/events/before_test_step.rb
699
- - lib/cucumber/events/bus.rb
700
- - lib/cucumber/events/finished_testing.rb
698
+ - lib/cucumber/events/step_definition_registered.rb
701
699
  - lib/cucumber/events/step_match.rb
700
+ - lib/cucumber/events/test_run_finished.rb
702
701
  - lib/cucumber/file_specs.rb
703
702
  - lib/cucumber/filters.rb
704
703
  - lib/cucumber/filters/activate_steps.rb
@@ -717,12 +716,13 @@ files:
717
716
  - lib/cucumber/formatter/ansicolor.rb
718
717
  - lib/cucumber/formatter/backtrace_filter.rb
719
718
  - lib/cucumber/formatter/console.rb
719
+ - lib/cucumber/formatter/console_counts.rb
720
+ - lib/cucumber/formatter/console_issues.rb
720
721
  - lib/cucumber/formatter/cucumber.css
721
722
  - lib/cucumber/formatter/cucumber.sass
722
723
  - lib/cucumber/formatter/debug.rb
723
724
  - lib/cucumber/formatter/duration.rb
724
725
  - lib/cucumber/formatter/duration_extractor.rb
725
- - lib/cucumber/formatter/event_bus_report.rb
726
726
  - lib/cucumber/formatter/fail_fast.rb
727
727
  - lib/cucumber/formatter/fanout.rb
728
728
  - lib/cucumber/formatter/hook_query_visitor.rb
@@ -793,7 +793,6 @@ files:
793
793
  - spec/cucumber/configuration_spec.rb
794
794
  - spec/cucumber/constantize_spec.rb
795
795
  - spec/cucumber/core_ext/instance_exec_spec.rb
796
- - spec/cucumber/events/bus_spec.rb
797
796
  - spec/cucumber/file_specs_spec.rb
798
797
  - spec/cucumber/filters/activate_steps_spec.rb
799
798
  - spec/cucumber/filters/gated_receiver_spec.rb
@@ -802,9 +801,9 @@ files:
802
801
  - spec/cucumber/filters/tag_limits/verifier_spec.rb
803
802
  - spec/cucumber/filters/tag_limits_spec.rb
804
803
  - spec/cucumber/formatter/ansicolor_spec.rb
804
+ - spec/cucumber/formatter/console_counts_spec.rb
805
805
  - spec/cucumber/formatter/debug_spec.rb
806
806
  - spec/cucumber/formatter/duration_spec.rb
807
- - spec/cucumber/formatter/event_bus_report_spec.rb
808
807
  - spec/cucumber/formatter/fail_fast_spec.rb
809
808
  - spec/cucumber/formatter/html_spec.rb
810
809
  - spec/cucumber/formatter/interceptor_spec.rb
@@ -834,10 +833,9 @@ files:
834
833
  - spec/cucumber/step_match_search_spec.rb
835
834
  - spec/cucumber/step_match_spec.rb
836
835
  - spec/cucumber/world/pending_spec.rb
837
- - spec/cucumber_spec.rb
838
836
  - spec/spec_helper.rb
839
837
  - spec/support/standard_step_actions.rb
840
- homepage: http://cukes.info
838
+ homepage: https://cucumber.io/
841
839
  licenses:
842
840
  - MIT
843
841
  metadata: {}
@@ -853,15 +851,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
853
851
  version: 1.9.3
854
852
  required_rubygems_version: !ruby/object:Gem::Requirement
855
853
  requirements:
856
- - - ">="
854
+ - - ">"
857
855
  - !ruby/object:Gem::Version
858
- version: '0'
856
+ version: 1.3.1
859
857
  requirements: []
860
858
  rubyforge_project:
861
- rubygems_version: 2.5.1
859
+ rubygems_version: 2.2.2
862
860
  signing_key:
863
861
  specification_version: 4
864
- summary: cucumber-2.99.0
862
+ summary: cucumber-3.0.0.pre.1
865
863
  test_files:
866
864
  - features/docs/api/list_step_defs_as_json.feature
867
865
  - features/docs/api/listen_for_events.feature
@@ -872,6 +870,7 @@ test_files:
872
870
  - features/docs/cli/execute_with_tag_filter.feature
873
871
  - features/docs/cli/fail_fast.feature
874
872
  - features/docs/cli/finding_steps.feature
873
+ - features/docs/cli/help.feature
875
874
  - features/docs/cli/randomize.feature
876
875
  - features/docs/cli/require.feature
877
876
  - features/docs/cli/retry_failing_tests.feature
@@ -903,6 +902,7 @@ test_files:
903
902
  - features/docs/formatters/pretty_formatter.feature
904
903
  - features/docs/formatters/progress_formatter.feature
905
904
  - features/docs/formatters/rerun_formatter.feature
905
+ - features/docs/formatters/summary_formatter.feature
906
906
  - features/docs/formatters/usage_formatter.feature
907
907
  - features/docs/getting_started.feature
908
908
  - features/docs/gherkin/background.feature
@@ -929,7 +929,9 @@ test_files:
929
929
  - features/docs/writing_support_code/state.feature
930
930
  - features/docs/writing_support_code/tagged_hooks.feature
931
931
  - features/docs/writing_support_code/transforms.feature
932
+ - features/docs/writing_support_code/world.feature
932
933
  - features/lib/step_definitions/aruba_steps.rb
934
+ - features/lib/step_definitions/cli_steps.rb
933
935
  - features/lib/step_definitions/cucumber_steps.rb
934
936
  - features/lib/step_definitions/iso-8859-1_steps.rb
935
937
  - features/lib/step_definitions/json_steps.rb
@@ -951,7 +953,6 @@ test_files:
951
953
  - spec/cucumber/configuration_spec.rb
952
954
  - spec/cucumber/constantize_spec.rb
953
955
  - spec/cucumber/core_ext/instance_exec_spec.rb
954
- - spec/cucumber/events/bus_spec.rb
955
956
  - spec/cucumber/file_specs_spec.rb
956
957
  - spec/cucumber/filters/activate_steps_spec.rb
957
958
  - spec/cucumber/filters/gated_receiver_spec.rb
@@ -960,9 +961,9 @@ test_files:
960
961
  - spec/cucumber/filters/tag_limits/verifier_spec.rb
961
962
  - spec/cucumber/filters/tag_limits_spec.rb
962
963
  - spec/cucumber/formatter/ansicolor_spec.rb
964
+ - spec/cucumber/formatter/console_counts_spec.rb
963
965
  - spec/cucumber/formatter/debug_spec.rb
964
966
  - spec/cucumber/formatter/duration_spec.rb
965
- - spec/cucumber/formatter/event_bus_report_spec.rb
966
967
  - spec/cucumber/formatter/fail_fast_spec.rb
967
968
  - spec/cucumber/formatter/html_spec.rb
968
969
  - spec/cucumber/formatter/interceptor_spec.rb
@@ -992,6 +993,6 @@ test_files:
992
993
  - spec/cucumber/step_match_search_spec.rb
993
994
  - spec/cucumber/step_match_spec.rb
994
995
  - spec/cucumber/world/pending_spec.rb
995
- - spec/cucumber_spec.rb
996
996
  - spec/spec_helper.rb
997
997
  - spec/support/standard_step_actions.rb
998
+ has_rdoc:
@@ -1,13 +0,0 @@
1
- require 'cucumber/multiline_argument'
2
-
3
- module Cucumber
4
- module Ast
5
- def self.const_missing(const_name)
6
- if const_name == :Table
7
- warn "`Cucumber::Ast::Table` has been deprecated. Use `Cucumber::MultilineArgument::DataTable` instead."
8
- return Cucumber::MultilineArgument::DataTable
9
- end
10
- raise "`Cucumber::Ast` no longer exists. These classes have moved into the `Cucumber::Core::Ast` namespace, but may not have the same API."
11
- end
12
- end
13
- end
@@ -1,25 +0,0 @@
1
- module Cucumber
2
- module Events
3
-
4
- # Event fired after a test case has finished executing
5
- class AfterTestCase
6
-
7
- # The test case that was just executed.
8
- #
9
- # @return [Cucumber::Core::Test::Case]
10
- attr_reader :test_case
11
-
12
- # The result of executing the test case.
13
- #
14
- # @return [Cucumber::Core::Test::Result]
15
- attr_reader :result
16
-
17
- # @private
18
- def initialize(test_case, result)
19
- @test_case, @result = test_case, result
20
- end
21
-
22
- end
23
-
24
- end
25
- end
@@ -1,30 +0,0 @@
1
- module Cucumber
2
- module Events
3
-
4
- # Event fired after each test step has been executed
5
- class AfterTestStep
6
-
7
- # The test case currently being executed.
8
- #
9
- # @return [Cucumber::Core::Test::Case]
10
- attr_reader :test_case
11
-
12
- # The test step that was just executed.
13
- #
14
- # @return [Cucumber::Core::Test::Step]
15
- attr_reader :test_step
16
-
17
- # The result of executing the test step.
18
- #
19
- # @return [Cucumber::Core::Test::Result]
20
- attr_reader :result
21
-
22
- # @private
23
- def initialize(test_case, test_step, result)
24
- @test_case, @test_step, @result = test_case, test_step, result
25
- end
26
-
27
- end
28
-
29
- end
30
- end
@@ -1,18 +0,0 @@
1
- module Cucumber
2
- module Events
3
-
4
- # Event fired before a test case is executed
5
- class BeforeTestCase
6
-
7
- # The test case about to be executed.
8
- #
9
- # @return [Cucumber::Core::Test::Case]
10
- attr_reader :test_case
11
-
12
- # @private
13
- def initialize(test_case)
14
- @test_case = test_case
15
- end
16
- end
17
- end
18
- end
@@ -1,23 +0,0 @@
1
- module Cucumber
2
- module Events
3
-
4
- # Event fired before a test step is executed
5
- class BeforeTestStep
6
-
7
- # The test case currently being executed.
8
- #
9
- # @return [Cucumber::Core::Test::Case]
10
- attr_reader :test_case
11
-
12
- # The test step about to be executed.
13
- #
14
- # @return [Cucumber::Core::Test::Step]
15
- attr_reader :test_step
16
-
17
- # @private
18
- def initialize(test_case, test_step)
19
- @test_case, @test_step = test_case, test_step
20
- end
21
- end
22
- end
23
- end
@@ -1,86 +0,0 @@
1
- module Cucumber
2
- module Events
3
-
4
- # Event bus
5
- #
6
- # Implements and in-process pub-sub events broadcaster allowing multiple observers
7
- # to subscribe to different events that fire as your tests are executed.
8
- #
9
- # @private
10
- class Bus
11
-
12
- def initialize(default_namespace)
13
- @default_namespace = default_namespace.to_s
14
- @handlers = {}
15
- end
16
-
17
- # Register for an event
18
- def register(event_id, handler_object = nil, &handler_proc)
19
- handler = handler_proc || handler_object
20
- raise ArgumentError.new("Please pass either an object or a handler block") unless handler
21
- event_class = parse_event_id(event_id)
22
- handlers_for(event_class) << handler
23
- end
24
-
25
- # Broadcast an event
26
- def notify(event)
27
- handlers_for(event.class).each { |handler| handler.call(event) }
28
- end
29
-
30
- private
31
-
32
- def handlers_for(event_class)
33
- @handlers[event_class.to_s] ||= []
34
- end
35
-
36
- def parse_event_id(event_id)
37
- case event_id
38
- when Class
39
- return event_id
40
- when String
41
- constantize(event_id)
42
- else
43
- constantize("#{@default_namespace}::#{camel_case(event_id)}")
44
- end
45
- end
46
-
47
- def camel_case(underscored_name)
48
- underscored_name.to_s.split("_").map { |word| word.upcase[0] + word[1..-1] }.join
49
- end
50
-
51
- # Thanks ActiveSupport
52
- # (Only needed to support Ruby 1.9.3 and JRuby)
53
- def constantize(camel_cased_word)
54
- names = camel_cased_word.split('::')
55
-
56
- # Trigger a built-in NameError exception including the ill-formed constant in the message.
57
- Object.const_get(camel_cased_word) if names.empty?
58
-
59
- # Remove the first blank element in case of '::ClassName' notation.
60
- names.shift if names.size > 1 && names.first.empty?
61
-
62
- names.inject(Object) do |constant, name|
63
- if constant == Object
64
- constant.const_get(name)
65
- else
66
- candidate = constant.const_get(name)
67
- next candidate if constant.const_defined?(name, false)
68
- next candidate unless Object.const_defined?(name)
69
-
70
- # Go down the ancestors to check if it is owned directly. The check
71
- # stops when we reach Object or the end of ancestors tree.
72
- constant = constant.ancestors.inject do |const, ancestor|
73
- break const if ancestor == Object
74
- break ancestor if ancestor.const_defined?(name, false)
75
- const
76
- end
77
-
78
- # owner is in Object, so raise
79
- constant.const_get(name, false)
80
- end
81
- end
82
- end
83
-
84
- end
85
- end
86
- end