cucumber 2.2.0 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e99af93e987e5bd5b6424cda154b6f9ef1d4a834
4
- data.tar.gz: db6cd2d1d62695ef7dd72a6b9505e921bc8b7e84
3
+ metadata.gz: 9900efafec3a84381ff8bc24124ab4f91beb2ee7
4
+ data.tar.gz: db71624e341b3763ab8887a9c95ca49458ef8f27
5
5
  SHA512:
6
- metadata.gz: 965176d82959413e7551f10890c255ab09dafbb5a43ceb3072a81c89f6eb2775661506b6a8a1d188e596978c4d6ad654dd0859a5aafe058fcdfa707f5bfe6799
7
- data.tar.gz: 9a5627119ee9557b23a6cfd5107694af06f5a7f30fb566ce47076519fb0c664b9debba4f3cb609fef2f758c2fc177c16715b8820ae66aef78b64b3da2d436295
6
+ metadata.gz: 6f27f29e8ac78a8e4aeb9e95f157f876d9270f520fa033654f83afc3b5d78bb24783a50073c5c0a040a577c20d4e2538a79c5a5bb2b59d63abdb00e1a58f8666
7
+ data.tar.gz: 9c9b518017a6ca3138cf93d3809f92d15ad470232a020fa71051f69d7577d3c7cfaffcc86f0e3e9395c13ebc7b3d75343cd45cc1eb64af6bdf26f7a7777ffd7d
@@ -1,3 +1,5 @@
1
+ sudo: false
2
+
1
3
  rvm:
2
4
  - 2.2
3
5
  - 2.1
data/History.md CHANGED
@@ -1,9 +1,28 @@
1
- ## [In Git](https://github.com/cucumber/cucumber-ruby/compare/v2.1...master)
1
+ ## [In Git](https://github.com/cucumber/cucumber-ruby/compare/v2.3.0...master)
2
2
 
3
3
  ### New Features
4
4
 
5
5
  ### Bugfixes
6
6
 
7
+ ### Refactoring
8
+
9
+ ## [v2.3.0](https://github.com/cucumber/cucumber-ruby/compare/v2.2.0...v2.3.0)
10
+
11
+ ### New Features
12
+
13
+ * Update to Gherkin v3.2.0 (@brasmusson)
14
+
15
+ ### Bugfixes
16
+
17
+ ### Refactoring
18
+
19
+ ## [v2.2.0](https://github.com/cucumber/cucumber-ruby/compare/v2.1.0...v2.2.0)
20
+
21
+ Although this release is only bugfixes and refactorings, the extraction of the wire protocol is quite a significant change and
22
+ could cause breaking changes for users of undocumented APIs. Hence the minor version bump.
23
+
24
+ ### Bugfixes
25
+
7
26
  * Let the formatters output the value of printed variables at time of the call to `#puts` ([#918](https://github.com/cucumber/cucumber-ruby/pull/918) [#915](https://github.com/cucumber/cucumber-ruby/issues/915) @enkessler @brasmusson)
8
27
  * Fix Configuration.with_options merge direction ([#922](https://github.com/cucumber/cucumber-ruby/pull/922) @limhoff-r7)
9
28
  * Consistent line breaks / truncation in backtraces ([#941](https://github.com/cucumber/cucumber-ruby/pull/941) @tooky)
@@ -14,7 +33,7 @@
14
33
  * Remove wire protocol to plugin ([#878](https://github.com/cucumber/cucumber-ruby/pull/878) @mattwynne @tooky)
15
34
  * Remove event bus to separate gem ([#933](https://github.com/cucumber/cucumber-ruby/pull/933) @dg-ratiodata)
16
35
 
17
- ## [v2.1](https://github.com/cucumber/cucumber-ruby/compare/v2.0.2...v2.1)
36
+ ## [v2.1.0](https://github.com/cucumber/cucumber-ruby/compare/v2.0.2...v2.1.0)
18
37
 
19
38
  ### New Features
20
39
 
@@ -11,10 +11,10 @@ Gem::Specification.new do |s|
11
11
  s.platform = Gem::Platform::RUBY
12
12
  s.required_ruby_version = ">= 1.9.3"
13
13
 
14
- s.add_dependency 'cucumber-core', '~> 1.3.0'
14
+ s.add_dependency 'cucumber-core', '~> 1.4.0'
15
15
  s.add_dependency 'builder', '>= 2.1.2'
16
16
  s.add_dependency 'diff-lcs', '>= 1.1.3'
17
- s.add_dependency 'gherkin3', '~> 3.1.0'
17
+ s.add_dependency 'gherkin', '~> 3.2.0'
18
18
  s.add_dependency 'multi_json', '>= 1.7.5', '< 2.0'
19
19
  s.add_dependency 'multi_test', '>= 0.1.2'
20
20
  s.add_dependency 'cucumber-wire', '~> 0.0.1'
@@ -18,6 +18,7 @@ Feature: Formatter API methods
18
18
  Feature: Test
19
19
  Scenario: Test
20
20
  """
21
+ And a directory named "my/special"
21
22
  And a file named "features/support/custom_formatter.rb" with:
22
23
  """
23
24
  require 'cucumber/formatter/io'
@@ -117,11 +117,11 @@ module Cucumber
117
117
  opts.on("--i18n LANG",
118
118
  "List keywords for in a particular language",
119
119
  %{Run with "--i18n help" to see all languages}) do |lang|
120
- require 'gherkin3/dialect'
120
+ require 'gherkin/dialect'
121
121
 
122
122
  if lang == 'help'
123
123
  list_languages_and_exit
124
- elsif !::Gherkin3::DIALECTS.keys.include? lang
124
+ elsif !::Gherkin::DIALECTS.keys.include? lang
125
125
  indicate_invalid_language_and_exit(lang)
126
126
  else
127
127
  list_keywords_and_exit(lang)
@@ -397,8 +397,8 @@ TEXT
397
397
  end
398
398
 
399
399
  def list_keywords_and_exit(lang)
400
- require 'gherkin3/dialect'
401
- language = ::Gherkin3::Dialect.for(lang)
400
+ require 'gherkin/dialect'
401
+ language = ::Gherkin::Dialect.for(lang)
402
402
  data = Cucumber::MultilineArgument::DataTable.from(
403
403
  [["feature", to_keywords_string(language.feature_keywords)],
404
404
  ["background", to_keywords_string(language.background_keywords)],
@@ -420,10 +420,10 @@ TEXT
420
420
  end
421
421
 
422
422
  def list_languages_and_exit
423
- require 'gherkin3/dialect'
423
+ require 'gherkin/dialect'
424
424
  data = Cucumber::MultilineArgument::DataTable.from(
425
- ::Gherkin3::DIALECTS.keys.map do |key|
426
- [key, ::Gherkin3::DIALECTS[key].fetch('name'), ::Gherkin3::DIALECTS[key].fetch('native')]
425
+ ::Gherkin::DIALECTS.keys.map do |key|
426
+ [key, ::Gherkin::DIALECTS[key].fetch('name'), ::Gherkin::DIALECTS[key].fetch('native')]
427
427
  end)
428
428
  @out_stream.write(data.to_s({ color: false, prefixes: Hash.new('') }))
429
429
  Kernel.exit(0)
@@ -19,6 +19,7 @@ module Cucumber
19
19
  def ensure_file(path, name)
20
20
  raise "You *must* specify --out FILE for the #{name} formatter" unless String === path
21
21
  raise "I can't write #{name} to a directory - it has to be a file" if File.directory?(path)
22
+ raise "I can't write #{name} to a file in the non-existing directory #{File.dirname(path)}" if !File.directory?(File.dirname(path))
22
23
  ensure_io(path)
23
24
  end
24
25
 
@@ -157,9 +157,10 @@ module Cucumber
157
157
  end
158
158
 
159
159
  def create_doc_string_hash(doc_string)
160
+ content_type = doc_string.content_type ? doc_string.content_type : ""
160
161
  {
161
162
  value: doc_string.content,
162
- content_type: doc_string.content_type,
163
+ content_type: content_type,
163
164
  line: doc_string.location.line
164
165
  }
165
166
  end
@@ -1,5 +1,5 @@
1
- require 'gherkin3/token_scanner'
2
- require 'gherkin3/token_matcher'
1
+ require 'gherkin/token_scanner'
2
+ require 'gherkin/token_matcher'
3
3
 
4
4
  module Cucumber
5
5
  module Gherkin
@@ -8,8 +8,8 @@ module Cucumber
8
8
  @builder = builder
9
9
  end
10
10
  def parse(text)
11
- scanner = ::Gherkin3::TokenScanner.new(text)
12
- matcher = ::Gherkin3::TokenMatcher.new
11
+ scanner = ::Gherkin::TokenScanner.new(text)
12
+ matcher = ::Gherkin::TokenMatcher.new
13
13
  token = scanner.read
14
14
  until matcher.match_EOF(token) do
15
15
  if matcher.match_TableRow(token)
@@ -1,7 +1,7 @@
1
- require 'gherkin3/token_scanner'
2
- require 'gherkin3/token_matcher'
3
- require 'gherkin3/ast_builder'
4
- require 'gherkin3/parser'
1
+ require 'gherkin/token_scanner'
2
+ require 'gherkin/token_matcher'
3
+ require 'gherkin/ast_builder'
4
+ require 'gherkin/parser'
5
5
 
6
6
  module Cucumber
7
7
  module Gherkin
@@ -11,16 +11,16 @@ module Cucumber
11
11
  @language = language
12
12
  end
13
13
  def parse(text)
14
- ast_builder = ::Gherkin3::AstBuilder.new
15
- token_matcher = ::Gherkin3::TokenMatcher.new
14
+ ast_builder = ::Gherkin::AstBuilder.new
15
+ token_matcher = ::Gherkin::TokenMatcher.new
16
16
  token_matcher.send(:change_dialect, @language, nil) unless @language == 'en'
17
- context = ::Gherkin3::ParserContext.new(
18
- ::Gherkin3::TokenScanner.new(text),
17
+ context = ::Gherkin::ParserContext.new(
18
+ ::Gherkin::TokenScanner.new(text),
19
19
  token_matcher,
20
20
  [],
21
21
  []
22
22
  )
23
- parser = ::Gherkin3::Parser.new(ast_builder)
23
+ parser = ::Gherkin::Parser.new(ast_builder)
24
24
 
25
25
  parser.start_rule(context, :ScenarioDefinition)
26
26
  parser.start_rule(context, :Scenario)
@@ -37,8 +37,8 @@ module Cucumber
37
37
  attr_reader :current_world,
38
38
  :step_definitions
39
39
 
40
- all_keywords = ::Gherkin3::DIALECTS.keys.map do |dialect_name|
41
- dialect = ::Gherkin3::Dialect.for(dialect_name)
40
+ all_keywords = ::Gherkin::DIALECTS.keys.map do |dialect_name|
41
+ dialect = ::Gherkin::Dialect.for(dialect_name)
42
42
  dialect.given_keywords + dialect.when_keywords + dialect.then_keywords + dialect.and_keywords + dialect.but_keywords
43
43
  end
44
44
  Cucumber::Gherkin::I18n.code_keywords_for(all_keywords.flatten.uniq.sort).each do |adverb|
@@ -1 +1 @@
1
- 2.2.0
1
+ 2.3.0
@@ -87,7 +87,7 @@ module Cucumber
87
87
 
88
88
  it "displays the language table" do
89
89
  after_parsing '--i18n foo' do
90
- ::Gherkin3::DIALECTS.keys.map do |key|
90
+ ::Gherkin::DIALECTS.keys.map do |key|
91
91
  expect(@output_stream.string).to include("#{key}");
92
92
  end
93
93
  end
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.2.0
4
+ version: 2.3.0
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: 2016-01-08 00:00:00.000000000 Z
13
+ date: 2016-01-13 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.3.0
21
+ version: 1.4.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.3.0
28
+ version: 1.4.0
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: builder
31
31
  requirement: !ruby/object:Gem::Requirement
@@ -55,19 +55,19 @@ dependencies:
55
55
  - !ruby/object:Gem::Version
56
56
  version: 1.1.3
57
57
  - !ruby/object:Gem::Dependency
58
- name: gherkin3
58
+ name: gherkin
59
59
  requirement: !ruby/object:Gem::Requirement
60
60
  requirements:
61
61
  - - "~>"
62
62
  - !ruby/object:Gem::Version
63
- version: 3.1.0
63
+ version: 3.2.0
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
68
  - - "~>"
69
69
  - !ruby/object:Gem::Version
70
- version: 3.1.0
70
+ version: 3.2.0
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: multi_json
73
73
  requirement: !ruby/object:Gem::Requirement
@@ -864,132 +864,6 @@ rubyforge_project:
864
864
  rubygems_version: 2.2.2
865
865
  signing_key:
866
866
  specification_version: 4
867
- summary: cucumber-2.2.0
868
- test_files:
869
- - features/docs/api/list_step_defs_as_json.feature
870
- - features/docs/api/listen_for_events.feature
871
- - features/docs/api/run_cli_main_with_existing_runtime.feature
872
- - features/docs/cli/backtraces.feature
873
- - features/docs/cli/dry_run.feature
874
- - features/docs/cli/exclude_files.feature
875
- - features/docs/cli/execute_with_tag_filter.feature
876
- - features/docs/cli/fail_fast.feature
877
- - features/docs/cli/finding_steps.feature
878
- - features/docs/cli/randomize.feature
879
- - features/docs/cli/require.feature
880
- - features/docs/cli/run_scenarios_matching_name.feature
881
- - features/docs/cli/run_specific_scenarios.feature
882
- - features/docs/cli/showing_differences.feature
883
- - features/docs/cli/specifying_multiple_formatters.feature
884
- - features/docs/cli/strict_mode.feature
885
- - features/docs/defining_steps/nested_steps.feature
886
- - features/docs/defining_steps/nested_steps_i18n.feature
887
- - features/docs/defining_steps/nested_steps_with_second_arg.feature
888
- - features/docs/defining_steps/one_line_step_definitions.feature
889
- - features/docs/defining_steps/printing_messages.feature
890
- - features/docs/defining_steps/skip_scenario.feature
891
- - features/docs/defining_steps/snippets.feature
892
- - features/docs/defining_steps/table_diffing.feature
893
- - features/docs/defining_steps/transforms.feature
894
- - features/docs/exception_in_after_hook.feature
895
- - features/docs/exception_in_after_step_hook.feature
896
- - features/docs/exception_in_around_hook.feature
897
- - features/docs/exception_in_before_hook.feature
898
- - features/docs/extending_cucumber/custom_filter.feature
899
- - features/docs/extending_cucumber/custom_formatter.feature
900
- - features/docs/formatters/api_methods.feature
901
- - features/docs/formatters/debug_formatter.feature
902
- - features/docs/formatters/formatter_step_file_colon_line.feature
903
- - features/docs/formatters/html_formatter.feature
904
- - features/docs/formatters/json_formatter.feature
905
- - features/docs/formatters/junit_formatter.feature
906
- - features/docs/formatters/pretty_formatter.feature
907
- - features/docs/formatters/progress_formatter.feature
908
- - features/docs/formatters/rerun_formatter.feature
909
- - features/docs/formatters/usage_formatter.feature
910
- - features/docs/getting_started.feature
911
- - features/docs/gherkin/background.feature
912
- - features/docs/gherkin/doc_strings.feature
913
- - features/docs/gherkin/expand_option_for_outlines.feature
914
- - features/docs/gherkin/language_from_header.feature
915
- - features/docs/gherkin/language_help.feature
916
- - features/docs/gherkin/outlines.feature
917
- - features/docs/gherkin/unicode_table.feature
918
- - features/docs/gherkin/using_descriptions.feature
919
- - features/docs/gherkin/using_star_notation.feature
920
- - features/docs/iso-8859-1.feature
921
- - features/docs/post_configuration_hook.feature
922
- - features/docs/profiles.feature
923
- - features/docs/rake_task.feature
924
- - features/docs/raketask.feature
925
- - features/docs/work_in_progress.feature
926
- - features/docs/writing_support_code/after_hooks.feature
927
- - features/docs/writing_support_code/around_hooks.feature
928
- - features/docs/writing_support_code/before_hook.feature
929
- - features/docs/writing_support_code/hook_order.feature
930
- - features/docs/writing_support_code/load_path.feature
931
- - features/docs/writing_support_code/state.feature
932
- - features/docs/writing_support_code/tagged_hooks.feature
933
- - features/lib/step_definitions/aruba_steps.rb
934
- - features/lib/step_definitions/cucumber_steps.rb
935
- - features/lib/step_definitions/iso-8859-1_steps.rb
936
- - features/lib/step_definitions/json_steps.rb
937
- - features/lib/step_definitions/junit_steps.rb
938
- - features/lib/step_definitions/language_steps.rb
939
- - features/lib/step_definitions/profile_steps.rb
940
- - features/lib/step_definitions/ruby_steps.rb
941
- - features/lib/step_definitions/wire_steps.rb
942
- - features/lib/support/env.rb
943
- - features/lib/support/fake_wire_server.rb
944
- - features/lib/support/feature_factory.rb
945
- - features/lib/support/normalise_output.rb
946
- - spec/cucumber/cli/configuration_spec.rb
947
- - spec/cucumber/cli/main_spec.rb
948
- - spec/cucumber/cli/options_spec.rb
949
- - spec/cucumber/cli/profile_loader_spec.rb
950
- - spec/cucumber/cli/rerun_spec.rb
951
- - spec/cucumber/configuration_spec.rb
952
- - spec/cucumber/constantize_spec.rb
953
- - spec/cucumber/core_ext/instance_exec_spec.rb
954
- - spec/cucumber/file_specs_spec.rb
955
- - spec/cucumber/filters/activate_steps_spec.rb
956
- - spec/cucumber/filters/gated_receiver_spec.rb
957
- - spec/cucumber/filters/tag_limits/test_case_index_spec.rb
958
- - spec/cucumber/filters/tag_limits/verifier_spec.rb
959
- - spec/cucumber/filters/tag_limits_spec.rb
960
- - spec/cucumber/formatter/ansicolor_spec.rb
961
- - spec/cucumber/formatter/debug_spec.rb
962
- - spec/cucumber/formatter/duration_spec.rb
963
- - spec/cucumber/formatter/event_bus_report_spec.rb
964
- - spec/cucumber/formatter/fail_fast_spec.rb
965
- - spec/cucumber/formatter/html_spec.rb
966
- - spec/cucumber/formatter/interceptor_spec.rb
967
- - spec/cucumber/formatter/json_spec.rb
968
- - spec/cucumber/formatter/junit_spec.rb
969
- - spec/cucumber/formatter/legacy_api/adapter_spec.rb
970
- - spec/cucumber/formatter/pretty_spec.rb
971
- - spec/cucumber/formatter/progress_spec.rb
972
- - spec/cucumber/formatter/rerun_spec.rb
973
- - spec/cucumber/formatter/spec_helper.rb
974
- - spec/cucumber/hooks_spec.rb
975
- - spec/cucumber/multiline_argument/data_table_spec.rb
976
- - spec/cucumber/project_initializer_spec.rb
977
- - spec/cucumber/rake/forked_spec.rb
978
- - spec/cucumber/rb_support/rb_language_spec.rb
979
- - spec/cucumber/rb_support/rb_step_definition_spec.rb
980
- - spec/cucumber/rb_support/rb_transform_spec.rb
981
- - spec/cucumber/rb_support/rb_world_spec.rb
982
- - spec/cucumber/rb_support/snippet_spec.rb
983
- - spec/cucumber/running_test_case_spec.rb
984
- - spec/cucumber/runtime/for_programming_languages_spec.rb
985
- - spec/cucumber/runtime/support_code_spec.rb
986
- - spec/cucumber/runtime_spec.rb
987
- - spec/cucumber/sell_cucumbers.feature
988
- - spec/cucumber/step_argument_spec.rb
989
- - spec/cucumber/step_match_search_spec.rb
990
- - spec/cucumber/step_match_spec.rb
991
- - spec/cucumber/world/pending_spec.rb
992
- - spec/cucumber_spec.rb
993
- - spec/spec_helper.rb
994
- - spec/support/standard_step_actions.rb
867
+ summary: cucumber-2.3.0
868
+ test_files: []
995
869
  has_rdoc: