update to 6.2.0
This commit is contained in:
parent
8815e2d49b
commit
f3aa494089
@ -1,24 +0,0 @@
|
|||||||
From e1170fbb7515309a5a27b7945c52f6a4c79e3abf Mon Sep 17 00:00:00 2001
|
|
||||||
From: baizg1107 <preloyalwhite@163.com>
|
|
||||||
Date: Wed, 2 Mar 2022 16:17:36 +0800
|
|
||||||
Subject: [PATCH] fix features incompative
|
|
||||||
|
|
||||||
---
|
|
||||||
features/timeouts.feature | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/features/timeouts.feature b/features/timeouts.feature
|
|
||||||
index f05fcd5..40d1f7c 100644
|
|
||||||
--- a/features/timeouts.feature
|
|
||||||
+++ b/features/timeouts.feature
|
|
||||||
@@ -52,6 +52,7 @@ Feature: Wire protocol timeouts
|
|
||||||
Scenario: Wired
|
|
||||||
Given we're all wired
|
|
||||||
Timed out calling wire server with message 'invoke' (Timeout::Error)
|
|
||||||
+ /usr/share/ruby/timeout.rb:112:in `timeout'
|
|
||||||
features/wired.feature:3:in `Given we're all wired'
|
|
||||||
|
|
||||||
Failing Scenarios:
|
|
||||||
--
|
|
||||||
2.27.0
|
|
||||||
|
|
||||||
Binary file not shown.
BIN
cucumber-wire-6.2.0.gem
Normal file
BIN
cucumber-wire-6.2.0.gem
Normal file
Binary file not shown.
@ -1,206 +0,0 @@
|
|||||||
From 51ff0156094757ad21b8f380e2427d5b366924fa Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Bj=C3=B6rn=20Rasmusson?= <B.Rasmusson@computer.org>
|
|
||||||
Date: Sun, 22 Jul 2018 21:23:34 +0200
|
|
||||||
Subject: [PATCH] Fixes to work with modern Cucucmber-Ruby
|
|
||||||
|
|
||||||
* Pass the registry all the way down to the step definitions.
|
|
||||||
* Move the class StepArgument from Cucumber-Ruby and update it to match
|
|
||||||
the expectations of Cucumber-Ruby when using cucumber-expressions.
|
|
||||||
---
|
|
||||||
features/step_matches_message.feature | 2 +-
|
|
||||||
lib/cucumber/wire/connections.rb | 5 +++--
|
|
||||||
lib/cucumber/wire/plugin.rb | 9 +++++----
|
|
||||||
lib/cucumber/wire/protocol.rb | 4 ++--
|
|
||||||
lib/cucumber/wire/protocol/requests.rb | 4 ++--
|
|
||||||
lib/cucumber/wire/request_handler.rb | 3 ++-
|
|
||||||
lib/cucumber/wire/step_argument.rb | 24 ++++++++++++++++++++++++
|
|
||||||
lib/cucumber/wire/step_definition.rb | 6 ++++--
|
|
||||||
spec/cucumber/wire/connections_spec.rb | 4 ++--
|
|
||||||
9 files changed, 45 insertions(+), 16 deletions(-)
|
|
||||||
create mode 100644 lib/cucumber/wire/step_argument.rb
|
|
||||||
|
|
||||||
diff --git a/features/step_matches_message.feature b/features/step_matches_message.feature
|
|
||||||
index b0051f8..afa70be 100644
|
|
||||||
--- a/features/step_matches_message.feature
|
|
||||||
+++ b/features/step_matches_message.feature
|
|
||||||
@@ -70,7 +70,7 @@ Feature: Step matches message
|
|
||||||
"""
|
|
||||||
-
|
|
||||||
|
|
||||||
- we.* # MyApp.MyClass:123
|
|
||||||
+ "we.*" # MyApp.MyClass:123
|
|
||||||
|
|
||||||
1 scenario (1 skipped)
|
|
||||||
1 step (1 skipped)
|
|
||||||
diff --git a/lib/cucumber/wire/connections.rb b/lib/cucumber/wire/connections.rb
|
|
||||||
index 7856fea..4e57a22 100644
|
|
||||||
--- a/lib/cucumber/wire/connections.rb
|
|
||||||
+++ b/lib/cucumber/wire/connections.rb
|
|
||||||
@@ -16,10 +16,11 @@ class Connections
|
|
||||||
attr_reader :connections
|
|
||||||
private :connections
|
|
||||||
|
|
||||||
- def initialize(connections, configuration)
|
|
||||||
+ def initialize(connections, configuration, registry)
|
|
||||||
raise ArgumentError unless connections
|
|
||||||
@connections = connections
|
|
||||||
@configuration = configuration
|
|
||||||
+ @registry = registry
|
|
||||||
end
|
|
||||||
|
|
||||||
def find_match(test_step)
|
|
||||||
@@ -30,7 +31,7 @@ def find_match(test_step)
|
|
||||||
end
|
|
||||||
|
|
||||||
def step_matches(step_name)
|
|
||||||
- connections.map{ |c| c.step_matches(step_name)}.flatten
|
|
||||||
+ connections.map{ |c| c.step_matches(step_name, @registry)}.flatten
|
|
||||||
end
|
|
||||||
|
|
||||||
def begin_scenario(test_case)
|
|
||||||
diff --git a/lib/cucumber/wire/plugin.rb b/lib/cucumber/wire/plugin.rb
|
|
||||||
index d1d6277..79843cd 100644
|
|
||||||
--- a/lib/cucumber/wire/plugin.rb
|
|
||||||
+++ b/lib/cucumber/wire/plugin.rb
|
|
||||||
@@ -5,15 +5,16 @@
|
|
||||||
module Cucumber
|
|
||||||
module Wire
|
|
||||||
class Plugin
|
|
||||||
- attr_reader :config
|
|
||||||
- private :config
|
|
||||||
+ attr_reader :config, :registry
|
|
||||||
+ private :config, :registry
|
|
||||||
|
|
||||||
- def initialize(config)
|
|
||||||
+ def initialize(config, registry)
|
|
||||||
@config = config
|
|
||||||
+ @registry = registry
|
|
||||||
end
|
|
||||||
|
|
||||||
def install
|
|
||||||
- connections = Connections.new(wire_files.map { |f| create_connection(f) }, @config)
|
|
||||||
+ connections = Connections.new(wire_files.map { |f| create_connection(f) }, config, registry)
|
|
||||||
config.filters << Filters::ActivateSteps.new(StepMatchSearch.new(connections.method(:step_matches), @config), @config)
|
|
||||||
config.filters << AddHooksFilter.new(connections) unless @config.dry_run?
|
|
||||||
config.register_snippet_generator Snippet::Generator.new(connections)
|
|
||||||
diff --git a/lib/cucumber/wire/protocol.rb b/lib/cucumber/wire/protocol.rb
|
|
||||||
index 328c728..738577e 100644
|
|
||||||
--- a/lib/cucumber/wire/protocol.rb
|
|
||||||
+++ b/lib/cucumber/wire/protocol.rb
|
|
||||||
@@ -3,8 +3,8 @@
|
|
||||||
module Cucumber
|
|
||||||
module Wire
|
|
||||||
module Protocol
|
|
||||||
- def step_matches(name_to_match)
|
|
||||||
- handler = Requests::StepMatches.new(self)
|
|
||||||
+ def step_matches(name_to_match, registry)
|
|
||||||
+ handler = Requests::StepMatches.new(self, registry)
|
|
||||||
handler.execute(name_to_match)
|
|
||||||
end
|
|
||||||
|
|
||||||
diff --git a/lib/cucumber/wire/protocol/requests.rb b/lib/cucumber/wire/protocol/requests.rb
|
|
||||||
index eff80b0..5e32d11 100644
|
|
||||||
--- a/lib/cucumber/wire/protocol/requests.rb
|
|
||||||
+++ b/lib/cucumber/wire/protocol/requests.rb
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
require 'cucumber/wire/request_handler'
|
|
||||||
-require 'cucumber/step_argument'
|
|
||||||
+require 'cucumber/wire/step_argument'
|
|
||||||
|
|
||||||
module Cucumber
|
|
||||||
module Wire
|
|
||||||
@@ -25,7 +25,7 @@ def handle_success(params)
|
|
||||||
private
|
|
||||||
|
|
||||||
def create_step_match(raw_step_match)
|
|
||||||
- step_definition = StepDefinition.new(@connection, raw_step_match)
|
|
||||||
+ step_definition = StepDefinition.new(@connection, raw_step_match, @registry)
|
|
||||||
step_args = raw_step_match['args'].map do |raw_arg|
|
|
||||||
StepArgument.new(raw_arg['pos'], raw_arg['val'])
|
|
||||||
end
|
|
||||||
diff --git a/lib/cucumber/wire/request_handler.rb b/lib/cucumber/wire/request_handler.rb
|
|
||||||
index ee8f2f1..118f9cd 100644
|
|
||||||
--- a/lib/cucumber/wire/request_handler.rb
|
|
||||||
+++ b/lib/cucumber/wire/request_handler.rb
|
|
||||||
@@ -1,9 +1,10 @@
|
|
||||||
module Cucumber
|
|
||||||
module Wire
|
|
||||||
class RequestHandler
|
|
||||||
- def initialize(connection)
|
|
||||||
+ def initialize(connection, registry = nil)
|
|
||||||
@connection = connection
|
|
||||||
@message = underscore(self.class.name.split('::').last)
|
|
||||||
+ @registry = registry
|
|
||||||
end
|
|
||||||
|
|
||||||
def execute(request_params = nil)
|
|
||||||
diff --git a/lib/cucumber/wire/step_argument.rb b/lib/cucumber/wire/step_argument.rb
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000..116ee3a
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/lib/cucumber/wire/step_argument.rb
|
|
||||||
@@ -0,0 +1,24 @@
|
|
||||||
+# frozen_string_literal: true
|
|
||||||
+require 'cucumber/cucumber_expressions/group'
|
|
||||||
+
|
|
||||||
+module Cucumber
|
|
||||||
+ module Wire
|
|
||||||
+ # Defines the location and value of a captured argument from the step
|
|
||||||
+ # text
|
|
||||||
+ class StepArgument
|
|
||||||
+ attr_reader :offset
|
|
||||||
+
|
|
||||||
+ def initialize(offset, val)
|
|
||||||
+ @offset, @value = offset, val
|
|
||||||
+ end
|
|
||||||
+
|
|
||||||
+ def value(_current_world)
|
|
||||||
+ @value
|
|
||||||
+ end
|
|
||||||
+
|
|
||||||
+ def group
|
|
||||||
+ CucumberExpressions::Group.new(@value, @offset, @offset + @value.length, [])
|
|
||||||
+ end
|
|
||||||
+ end
|
|
||||||
+ end
|
|
||||||
+end
|
|
||||||
diff --git a/lib/cucumber/wire/step_definition.rb b/lib/cucumber/wire/step_definition.rb
|
|
||||||
index 09a4f1d..b453cdc 100644
|
|
||||||
--- a/lib/cucumber/wire/step_definition.rb
|
|
||||||
+++ b/lib/cucumber/wire/step_definition.rb
|
|
||||||
@@ -3,12 +3,14 @@
|
|
||||||
module Cucumber
|
|
||||||
module Wire
|
|
||||||
class StepDefinition
|
|
||||||
- attr_reader :regexp_source, :location
|
|
||||||
+ attr_reader :regexp_source, :location, :registry, :expression
|
|
||||||
|
|
||||||
- def initialize(connection, data)
|
|
||||||
+ def initialize(connection, data, registry)
|
|
||||||
@connection = connection
|
|
||||||
+ @registry = registry
|
|
||||||
@id = data['id']
|
|
||||||
@regexp_source = data['regexp'] || "Unknown"
|
|
||||||
+ @expression = registry.create_expression(@regexp_source)
|
|
||||||
@location = Core::Ast::Location.from_file_colon_line(data['source'] || "unknown:0")
|
|
||||||
end
|
|
||||||
|
|
||||||
diff --git a/spec/cucumber/wire/connections_spec.rb b/spec/cucumber/wire/connections_spec.rb
|
|
||||||
index 449e19f..62c9f1a 100644
|
|
||||||
--- a/spec/cucumber/wire/connections_spec.rb
|
|
||||||
+++ b/spec/cucumber/wire/connections_spec.rb
|
|
||||||
@@ -9,12 +9,12 @@ module Wire
|
|
||||||
connection1 = double(step_matches: [:a, :b])
|
|
||||||
connection2 = double(step_matches: [:c])
|
|
||||||
|
|
||||||
- connections = Connections.new([connection1, connection2], double)
|
|
||||||
+ connections = Connections.new([connection1, connection2], double, double)
|
|
||||||
expect(connections.step_matches('')).to eq [:a, :b, :c]
|
|
||||||
end
|
|
||||||
|
|
||||||
it "copes with no connections" do
|
|
||||||
- connections = Connections.new([], double)
|
|
||||||
+ connections = Connections.new([], double, double)
|
|
||||||
expect(connections.step_matches('')).to eq []
|
|
||||||
end
|
|
||||||
end
|
|
||||||
@ -1,14 +1,13 @@
|
|||||||
%global gem_name cucumber-wire
|
%global gem_name cucumber-wire
|
||||||
%{?_with_bootstrap: %global bootstrap 1}
|
%{?_with_bootstrap: %global bootstrap 1}
|
||||||
Name: rubygem-%{gem_name}
|
Name: rubygem-%{gem_name}
|
||||||
Version: 0.0.1
|
Version: 6.2.0
|
||||||
Release: 2
|
Release: 1
|
||||||
Summary: Wire protocol for Cucumber
|
Summary: Wire protocol for Cucumber
|
||||||
License: MIT
|
License: MIT
|
||||||
URL: http://cucumber.io
|
URL: http://cucumber.io
|
||||||
Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem
|
Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem
|
||||||
Patch0: rubygem-cucumber-wire-0.0.1-Adapt-to-the-move-of-Location-to-Cucumber-Core-Test.patch
|
Source1: https://github.com/cucumber/cucumber-ruby-wire/archive/refs/tags/v%{version}.tar.gz
|
||||||
Patch1: 0001-fix-features-incompative.patch
|
|
||||||
BuildRequires: ruby(release) rubygems-devel ruby
|
BuildRequires: ruby(release) rubygems-devel ruby
|
||||||
%if ! 0%{?bootstrap}
|
%if ! 0%{?bootstrap}
|
||||||
BuildRequires: rubygem(aruba) rubygem(cucumber) rubygem(rspec) rubygem(did_you_mean)
|
BuildRequires: rubygem(aruba) rubygem(cucumber) rubygem(rspec) rubygem(did_you_mean)
|
||||||
@ -27,10 +26,13 @@ Obsoletes: %{name}-doc < %{version}-%{release}
|
|||||||
Documentation for %{name}.
|
Documentation for %{name}.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n %{gem_name}-%{version}
|
%setup -q -n %{gem_name}-%{version} -b1
|
||||||
%patch0 -p1
|
|
||||||
%patch1 -p1
|
%gemspec_remove_dep -g cucumber-cucumber-expressions "~> 14.0", ">= 14.0.0"
|
||||||
%gemspec_add_file 'lib/cucumber/wire/step_argument.rb'
|
%gemspec_add_dep -g cucumber-cucumber-expressions ">= 14.0"
|
||||||
|
|
||||||
|
%gemspec_remove_dep -g cucumber-messages "~> 17.1", ">= 17.1.1"
|
||||||
|
%gemspec_add_dep -g cucumber-messages ">= 17.0"
|
||||||
|
|
||||||
%build
|
%build
|
||||||
gem build ../%{gem_name}-%{version}.gemspec
|
gem build ../%{gem_name}-%{version}.gemspec
|
||||||
@ -44,8 +46,13 @@ cp -a .%{gem_dir}/* \
|
|||||||
|
|
||||||
%check
|
%check
|
||||||
pushd .%{gem_instdir}
|
pushd .%{gem_instdir}
|
||||||
LANG=C.UTF-8 rspec spec
|
|
||||||
RUBYOPT="-I$(pwd)/lib" cucumber
|
rspec -Ilib spec
|
||||||
|
|
||||||
|
ln -s %{_builddir}/cucumber-ruby-wire-6.2.0/features features
|
||||||
|
|
||||||
|
RUBYOPT="-I$(pwd)/lib" cucumber --format progress --publish-quiet
|
||||||
|
|
||||||
popd
|
popd
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -55,17 +62,19 @@ popd
|
|||||||
%{gem_libdir}
|
%{gem_libdir}
|
||||||
%exclude %{gem_cache}
|
%exclude %{gem_cache}
|
||||||
%{gem_spec}
|
%{gem_spec}
|
||||||
|
%license %{gem_instdir}/LICENSE
|
||||||
|
|
||||||
%files help
|
%files help
|
||||||
%doc %{gem_docdir}
|
%doc %{gem_docdir}
|
||||||
%{gem_instdir}/Gemfile
|
|
||||||
%doc %{gem_instdir}/README.md
|
%doc %{gem_instdir}/README.md
|
||||||
%{gem_instdir}/Rakefile
|
%doc %{gem_instdir}/CHANGELOG.md
|
||||||
%{gem_instdir}/cucumber-wire.gemspec
|
%doc %{gem_instdir}/CONTRIBUTING.md
|
||||||
%{gem_instdir}/features
|
|
||||||
%{gem_instdir}/spec
|
%{gem_instdir}/spec
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Jan 9 2023 liyanan <liyanan32@h-partners.com> - 6.2.0-1
|
||||||
|
- Update to 6.2.0
|
||||||
|
|
||||||
* Wed Mar 02 2022 baizhonggui <baizhonggui@huawei.com> - 0.0.1-2
|
* Wed Mar 02 2022 baizhonggui <baizhonggui@huawei.com> - 0.0.1-2
|
||||||
- Add support ruby 3.0 for fixing build error
|
- Add support ruby 3.0 for fixing build error
|
||||||
|
|
||||||
|
|||||||
BIN
v6.2.0.tar.gz
Normal file
BIN
v6.2.0.tar.gz
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user