macros4cuke 0.5.06 → 0.5.07

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YTZhNThhYzQ3YzBlZjI4NjQwOGZkYzRlMTVkZTk4ODFjZTEzZjE1OQ==
4
+ NzQxMzNkYWU3ZTRhOGQ1M2MzZWRhMGVkZGFhNTgxODI1MjE2NWY3ZA==
5
5
  data.tar.gz: !binary |-
6
- ZDZjNzBjOGVjZGJlNTc3YjY3ZmYwMTI1OTkzYTk4MzRiOWQ2ODA5Ng==
6
+ NGM1ZmJjZTdiZGM0YWRiOTNjODIxZmUzMDZjODE0ODBiZWJhNjBiMA==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- MTFhZTcxYzVjOGJiMzlkODcyYzM0ZDk0YzEyYzQ5OWU4MjdkMzRiNjRlMWMx
10
- OGYyZDhlMmMxNDY2ZjZkNzNhYTJlMWI2N2EyZGU2Y2E1ZmQ4ZDhjNDVmMjhk
11
- OWUzZTJhYjY1NGFiMWY4YjRlZTk5MjExYzllZTMyZTBlMmEzMjY=
9
+ MWViOTM2OGI3ODcwYWRlN2M0YWQ1Mzg5MmViMGIwNTEzYjI4YTdlZTk1M2Qy
10
+ ZTA5MmYxZTIxYjAwMzY4OGY4OGRiYjY2MDhjMTZlODczZGJkMmZmMTA1MGQw
11
+ ZDkxM2IwMmU3NzQyN2U3OWVlNGViYmJjYWM2YTgwODA1NzY5NjQ=
12
12
  data.tar.gz: !binary |-
13
- MzNhYTViYTA2MDRkMWZkZjExYTk3Y2RlN2Q1Y2YwMGUzMWU4MWEwZDdkOWNm
14
- OTE3NzQ0Y2M2NzY3ZmE3ZmNmNzk0N2I1NTA3NWE5OTU1NmEwODBhYTM0ZTdh
15
- NWEyN2M1NjNiZWZhZGE5NDZhMzY0MGFmNzI1ODRlOTQ4YTlhZTE=
13
+ ZTgwM2M4OWM3MTQyMzA4ODljNTA0YzFjNjRmNWUyZDc1MzczMDI3NzA0NDA0
14
+ MWVlNDQ0MTA0NWI5MzI4NzBhYzdkYWFiMjcyMmRkY2FmZTYxZmNjYjM2Nzk4
15
+ ODUzZmMwOWVjYTMxZjI3OGY0NWIxNDEzZmMzZDQ5NDA5OWIxZTA=
data/.rubocop.yml CHANGED
@@ -12,8 +12,13 @@ CaseIndentation:
12
12
  IndentWhenRelativeTo: end
13
13
  IndentOneStep: true
14
14
 
15
+ # Rubocop enforces the use of is_a? instead of kind_of?
16
+ # Which is contrary to modelling practice.
17
+ ClassCheck:
18
+ Enabled: false
19
+
15
20
  ClassLength:
16
- Max: 200
21
+ Max: 250
17
22
  CountComments: false
18
23
 
19
24
  ConstantName:
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ### 0.5.06 / 2014-06-30
2
+ * [CHANGE] Multiple minor changes to please Rubocop 0.26.1
3
+ * [CHANGE] File `demo03.feature`: Added an example with scenario outline
4
+
1
5
  ### 0.5.06 / 2014-06-30
2
6
  * [CHANGE] Spec files upgraded to RSpec3.x.x
3
7
  * [CHANGE] File `Gemfile` updated with dependency on RSpec3
data/Gemfile CHANGED
@@ -1,7 +1,7 @@
1
1
  source 'https://rubygems.org'
2
2
  # Prevent Bundler to load the dependencies from our .gemspec file
3
3
 
4
- gem 'cucumber', [">= 0.5.0"]
4
+ gem 'cucumber', ['>= 0.5.0']
5
5
 
6
6
  group :development do
7
7
  gem 'rake', '>= 0.8.0'
@@ -32,4 +32,25 @@ Scenario: Using the macro with multiple arguments
32
32
  And I fill in "Password" with "cosmic"
33
33
  And I click "Submit"
34
34
  """
35
+
36
+ Scenario Outline: Using the macro in a scenario outline with argument values from example rows
37
+ # Macros work smoothly in scenario outlines.
38
+ # Their argument values can even be initialized from the example rows
39
+ # Here the macro is invoked. It argument values <user_id>, <pwd> comes from example rows below.
40
+ When I [enter my userid "<user_id>" and password "<pwd>"]
35
41
 
42
+ # The next step verifies that the steps from the macro were effectively executed.
43
+ Then I expect the following step trace:
44
+ """
45
+ Given I landed in the homepage
46
+ When I click "Sign in"
47
+ And I fill in "Username" with "<user_id>"
48
+ And I fill in "Password" with "<pwd>"
49
+ And I click "Submit"
50
+ """
51
+ Then I click "Sign out"
52
+
53
+ Examples:
54
+ |user_id | pwd |
55
+ |james007|goldeneye|
56
+ |ann |oneemous |
@@ -1,10 +1,10 @@
1
- # File: use_macros4cuke.rb
1
+ # File: macro_support.rb
2
2
  # Purpose: Add the support for macros in a Cucumber project.
3
3
  # This file is meant to be put next to the 'env.rb' file
4
4
  # of your Cucumber project.
5
5
 
6
6
 
7
- # Load modules, classes and step definitions from the macros4cuke gem
7
+ # Load modules and classes from the gem and also its step definitions
8
8
  require 'macros4cuke/cucumber'
9
9
 
10
10
 
@@ -3,7 +3,7 @@
3
3
 
4
4
  module Macros4Cuke # Module used as a namespace
5
5
  # The version number of the gem.
6
- Version = '0.5.06'
6
+ Version = '0.5.07'
7
7
 
8
8
  # Brief description of the gem.
9
9
  Description = 'Add your own macro-steps to Cucumber scenarios'
@@ -61,7 +61,7 @@ class FormattingService
61
61
  next unless accepted_notifications.include? msg
62
62
 
63
63
  # Assumption: all nil argument(s) are at the end
64
- arg_vector = visit_event[2..-1].reject { |an_arg| an_arg.nil? }
64
+ arg_vector = visit_event[2..-1].reject(&:nil?)
65
65
  fmt.send(msg, nesting_level, *arg_vector)
66
66
  end
67
67
  end
@@ -43,7 +43,8 @@ describe FormattingService do
43
43
  context 'Provided services:' do
44
44
  it 'should know its registered formatter(s)' do
45
45
  formatter1 = double('fake_one')
46
- expect(formatter1).to receive(:implements).once.and_return([:on_collection])
46
+ events = [:on_collection]
47
+ expect(formatter1).to receive(:implements).once.and_return(events)
47
48
  subject.register(formatter1)
48
49
  expect(subject.formatters.size).to eq(1)
49
50
 
@@ -202,7 +202,7 @@ SNIPPET
202
202
  instance = Engine.new sophisticated_template
203
203
  elements = instance.instance_variable_get(:@representation)
204
204
  sections = elements.select { |e| e.is_a?(Section) }
205
- names = sections.map { |e| e.to_s }
205
+ names = sections.map(&:to_s)
206
206
  expect(names).to eq(%w(<?address> <?birthdate> <?dummy>))
207
207
  end
208
208
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: macros4cuke
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.06
4
+ version: 0.5.07
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dimitri Geshef
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-30 00:00:00.000000000 Z
11
+ date: 2014-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cucumber
@@ -156,8 +156,7 @@ files:
156
156
  - features/README.md
157
157
  - features/step_definitions/demo_steps.rb
158
158
  - features/support/env.rb
159
- - features/support/my_formatter.rb
160
- - features/support/use_macros4cuke.rb
159
+ - features/support/macro_support.rb
161
160
  - spec/macros4cuke/application_spec.rb
162
161
  - spec/macros4cuke/cli/cmd-line_spec.rb
163
162
  - spec/macros4cuke/coll-walker-factory_spec.rb
@@ -1,25 +0,0 @@
1
- module Macros4Cuke # Module used as a namespace
2
-
3
- require 'pp'
4
-
5
- class MyFormatter
6
- attr_reader(:ostream)
7
-
8
- def initialize(_, io, _)
9
- @ostream = io
10
- end
11
-
12
-
13
- def step_name(_, step_match, _, _, _, _)
14
- pp step_match
15
- pp step_match.instance_variables
16
-
17
- # Returns a Cucumber::RbSupport::RbStepDefinition
18
- pp step_match.instance_variable_get(:@step_definition).class
19
- pp step_match.instance_variable_get(:@step_definition).object_id
20
- pp step_match.instance_variable_get(:@name_to_match)
21
- pp step_match.instance_variable_get(:@step_arguments)
22
- end
23
- end # class
24
-
25
- end # module