macros4cuke 0.3.37 → 0.3.38

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.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NGI3ZmQ3ZjBhZjE1MjY0ZTNkNmQ3YzVlZDdiZGUxMzJmZGViNzVhNA==
4
+ YTdkMzhjY2JkYzQ0MGE1YTMyNWVkZDZiYzliMTUxYzY1ZTU3OTdjZA==
5
5
  data.tar.gz: !binary |-
6
- OGM1ZTRjNzUyNGZmYTNhYmMxZDYwM2ViNGYxNDc3NTA1YWYzZDMzMA==
6
+ YmFlNzQ0ODQ1MTQ0MjY0MjkxN2JjNTRlOTFlN2E0ZTRkNWI0YmE2OA==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- MmQ3MjM3ZWU4MjVmZjg0NmMwOWQyYWRkMjBiNjMxYmYyZjdhNDI1NzhlMzRk
10
- ODAyMDdlM2NkOGZmZjVjM2YwMDE4NDMyNjVmNzNiMTAwMDMxNDM3NjZjZjQz
11
- YTFhZWRkZTFiZDlkNTQwNjhhYjVlYjJjYzg4YTUxMzc2MjA4OWY=
9
+ M2I5ZWJhNTRhMTU0MjM5ZmQ3YzcyNWEwZjMyYTliZmI3YmU5MmEwNjY4OWUz
10
+ MGM4NzE0MTMyNWQ4OGJjNjUyYzgzYWFlNTM2NzlhZjQ4YzM2NjNlMWMyMjA3
11
+ NjVhNmMwOWYxYzQ0ZWM5ZGE0MmZmMzQ2NmVhYmNhNTQ0MjUzNjA=
12
12
  data.tar.gz: !binary |-
13
- YWZjMWJkOThhMjIxMDVjNzYyNmI3ZTM0NzM1ZTQwYmQ1Nzk3ZmY4YWE3M2Y0
14
- ODQzMzk0YjZmZjM0MzJhNTU1MTQ3MmM4NWMxMzc4MDgzY2QyOWE4N2IwYmYz
15
- ZjRkZjE1ZTNmZTMyOTIzOTQxMWFhMTU2MDM3M2Q5OTlkNTU3ZTE=
13
+ NTI4MmIyN2UyMDgxODYxMmZlMWIzMzk5M2JlZDJkMTQzNDQzNThmNDhmYmU3
14
+ YzdhMmQzZGRmOGY3MGIwMDc1ZmNjM2ZmOTJmMDE5ZDIzYzNhYzYwNjRkMTU4
15
+ MjE5MjU2N2Q3NmE5YWYwNjhiZDAwZDhkOTUyODllY2JjNjc3YTk=
data/.rubocop.yml CHANGED
@@ -1,3 +1,9 @@
1
+ AllCops:
2
+ Excludes:
3
+ - examples/**
4
+ - spec/**
5
+
6
+
1
7
  AccessControl:
2
8
  Enabled: false
3
9
 
@@ -28,4 +34,5 @@ SpaceInsideBrackets:
28
34
  Enabled: false
29
35
 
30
36
  TrailingWhitespace:
31
- Enabled: false
37
+ Enabled: false
38
+
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ### 0.3.38 / 2013-07-15
2
+ * [FIX] In method AmbiguousArgumentValue#initialize: An method argument was not string-interpolated in the error message.
3
+ * [CHANGE] File 'macro-step_spec.rb' Test updated to cope with the previous fix.
4
+ * [CHANGE] Minor changes in code to please Rubocop 0.9.1
5
+ * [CHANGE] File `.rubocop.yml` : exclude /examples and /spec folders from Rubocop checks.
6
+
1
7
  ### 0.3.37 / 2013-06-27
2
8
  * [FIX] File `macros4cuke.gemspec`: added README.md in extra_rdoc_files option.
3
9
  * [CHANGE] File `README.md`: Re-formatting so that it is better rendered with darkfish (from YARD).
@@ -19,7 +19,7 @@ Scenario: Defining a macro to be used with multiple arguments in a table
19
19
  And I click "Submit"
20
20
  """
21
21
 
22
- Scenario: # Let's use the macro we created above
22
+ Scenario: Let's use the macro we created above
23
23
  # Here the macro is invoked. Actual value for the argument are passed in a table argument.
24
24
  When I [enter my credentials as]:
25
25
  |userid|guest|
@@ -18,7 +18,7 @@ Scenario: Defining a macro to be used with multiple arguments in a table
18
18
  And I click "Save"
19
19
  """
20
20
 
21
- Scenario: # Let's use the macro we created above
21
+ Scenario: Let's use the macro we created above
22
22
  # Here the macro is invoked. Actual value for the argument are passed in a table argument.
23
23
  When I [enter my profile as]:
24
24
  |location|Nowhere-City|
@@ -28,7 +28,7 @@ Scenario: An exception is forced by invoking the above macro with a triple quote
28
28
  When I generate a DataTableNotFound exception
29
29
 
30
30
 
31
- Scenario: # Let's use the macro-step WITHOUT the optional argument values.
31
+ Scenario: Let's use the macro-step WITHOUT the optional argument values.
32
32
  When I [fill in the form with]:
33
33
  |firstname|Alice|
34
34
  |lastname| Inn |
@@ -51,7 +51,7 @@ Scenario: # Let's use the macro-step WITHOUT the optional argument values.
51
51
  """
52
52
 
53
53
 
54
- Scenario: # Let's use the macro-step WITH the optional argument values.
54
+ Scenario: Let's use the macro-step WITH the optional argument values.
55
55
  # Redo, now with e-mail and comment
56
56
  When I [fill in the form with]:
57
57
  |firstname|Alice|
@@ -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.3.37'
6
+ Version = '0.3.38'
7
7
 
8
8
  # Brief description of the gem.
9
9
  Description = 'Macros for Cucumber'
@@ -17,8 +17,8 @@ module Macros4Cuke # Module used as a namespace
17
17
  # The root folder of Macros4Cuke.
18
18
  RootDir = begin
19
19
  require 'pathname' # Load Pathname class from standard library
20
- rootdir = Pathname(__FILE__).dirname.parent.parent.expand_path()
21
- rootdir.to_s() + '/' # Append trailing slash character to it
20
+ rootdir = Pathname(__FILE__).dirname.parent.parent.expand_path
21
+ rootdir.to_s + '/' # Append trailing slash character to it
22
22
  end
23
23
  end
24
24
  end # module
@@ -40,8 +40,9 @@ end # class
40
40
  # and that argument name does not appear in any sub-step.
41
41
  class AmbiguousArgumentValue < Macros4CukeError
42
42
  def initialize(anArgName, valuePhrase, valueTable)
43
- msg = "The macro argument '#{anArgName}' has value '#{valuePhrase}' and 'valueTable'."
44
- super(msg)
43
+ msg1 = "The macro argument '#{anArgName}' has value "
44
+ msg2 = "'#{valuePhrase}' and '#{valueTable}'."
45
+ super(msg1 + msg2)
45
46
  end
46
47
  end # class
47
48
 
@@ -60,7 +60,7 @@ public
60
60
  # Post-condition: we are back to the same situation as
61
61
  # no macro was ever defined.
62
62
  def clear()
63
- macro_steps.clear()
63
+ macro_steps.clear
64
64
  end
65
65
 
66
66
 
@@ -37,7 +37,7 @@ public
37
37
  # Multiple rows with same argument name are acceptable.
38
38
  def invoke_macro(aPhraseInstance, rawData = nil)
39
39
  # Generate a text rendition of the step to be executed.
40
- collection = MacroCollection.instance()
40
+ collection = MacroCollection.instance
41
41
  rendered_steps = collection.render_steps(aPhraseInstance, rawData)
42
42
 
43
43
  # Let Cucumber execute the sub-steps
@@ -49,7 +49,7 @@ public
49
49
  # After this, we are in the same situation when no macro-step
50
50
  # was ever defined.
51
51
  def clear_macros()
52
- MacroCollection.instance.clear()
52
+ MacroCollection.instance.clear
53
53
  end
54
54
 
55
55
  end # module
@@ -162,12 +162,12 @@ private
162
162
  # Return the validated row.
163
163
  # @param a_row [Array] A 2-elements Array (i.e. a couple) of the form:
164
164
  # [macro argument name, a value].
165
- # @param value [Hash] The pairs phrase argument name => value
166
- def validate_row(a_row, phrase_params)
165
+ # @param params [Hash] The pairs phrase argument name => value
166
+ def validate_row(a_row, params)
167
167
  (a_key, value) = a_row
168
168
  raise UnknownArgumentError.new(a_key) unless args.include? a_key
169
- if (phrase_args.include? a_key) && (phrase_params[a_key] != value)
170
- raise AmbiguousArgumentValue.new(a_key, phrase_params[a_key], value)
169
+ if (phrase_args.include? a_key) && (params[a_key] != value)
170
+ raise AmbiguousArgumentValue.new(a_key, params[a_key], value)
171
171
  end
172
172
 
173
173
  return a_row
@@ -236,7 +236,7 @@ private
236
236
  end
237
237
  end
238
238
 
239
- return thePhraseArgs.dup()
239
+ return thePhraseArgs.dup
240
240
  end
241
241
 
242
242
 
@@ -107,7 +107,7 @@ public
107
107
  when String
108
108
  actual_value
109
109
  else
110
- actual_value.to_s()
110
+ actual_value.to_s
111
111
  end
112
112
 
113
113
  return result
@@ -231,7 +231,7 @@ class Engine
231
231
  # Use concatenation (+) to work around Ruby bug!
232
232
  forbidden = ' !"#' + "$%&'()*+,-./:;<=>?[\\]^`{|}~"
233
233
  all_escaped = []
234
- forbidden.each_char() { |ch| all_escaped << Regexp.escape(ch) }
234
+ forbidden.each_char { |ch| all_escaped << Regexp.escape(ch) }
235
235
  pattern = all_escaped.join('|')
236
236
  Regexp.new(pattern)
237
237
  end
@@ -363,7 +363,7 @@ private
363
363
  end
364
364
 
365
365
  compiled_lines = raw_lines.map { |line| compile_line(line) }
366
- return compile_sections(compiled_lines.flatten())
366
+ return compile_sections(compiled_lines.flatten)
367
367
  end
368
368
 
369
369
  # Convert the array of raw entries (per line)
@@ -405,7 +405,7 @@ private
405
405
  # Otherwise, end the line with a eoline marker.
406
406
  def line_rep_ending(theLineRep)
407
407
  if theLineRep.last.is_a?(SectionEndMarker)
408
- section_end = theLineRep.pop()
408
+ section_end = theLineRep.pop
409
409
  theLineRep << EOLine.new
410
410
  theLineRep << section_end
411
411
  else
@@ -464,7 +464,7 @@ private
464
464
 
465
465
  when SectionEndMarker
466
466
  validate_section_end(element, open_sections)
467
- subResult << open_sections.pop()
467
+ subResult << open_sections.pop
468
468
 
469
469
  else
470
470
  if open_sections.empty?
@@ -483,15 +483,18 @@ private
483
483
  return compiled
484
484
  end
485
485
 
486
- # Validate the given end of section marker taking into account the open sections.
486
+ # Validate the given end of section marker taking into account
487
+ # the open sections.
487
488
  def validate_section_end(marker, sections)
489
+ msg_prefix = "End of section</#{marker.name}> "
490
+
488
491
  if sections.empty?
489
- msg = "End of section</#{marker.name}> found while no corresponding section is open."
490
- raise StandardError, msg
492
+ msg = 'found while no corresponding section is open.'
493
+ raise StandardError, msg_prefix + msg
491
494
  end
492
495
  if marker.name != sections.last.name
493
- msg = "End of section</#{marker.name}> doesn't match current section '#{sections.last.name}'."
494
- raise StandardError, msg
496
+ msg = "doesn't match current section '#{sections.last.name}'."
497
+ raise StandardError, msg_prefix + msg
495
498
  end
496
499
  end
497
500
 
@@ -120,7 +120,7 @@ SNIPPET
120
120
  it 'should complain when argument gets a value from phrase and table' do
121
121
  # Error case: there is no macro argument called <unknown>
122
122
  phrase = %Q|enter my credentials as "nobody"|
123
- msg = "The macro argument 'userid' has value 'nobody' and 'valueTable'."
123
+ msg = "The macro argument 'userid' has value 'nobody' and 'someone'."
124
124
  args = [ %w(userid someone), %w(password no-secret) ]
125
125
  expect { subject.expand(phrase, args) }.to raise_error(
126
126
  AmbiguousArgumentValue, msg)
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.3.37
4
+ version: 0.3.38
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dimitri Geshef
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-06-27 00:00:00.000000000 Z
11
+ date: 2013-07-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cucumber
@@ -80,7 +80,7 @@ dependencies:
80
80
  - - ! '>='
81
81
  - !ruby/object:Gem::Version
82
82
  version: 2.0.0
83
- description: Create your own macro-steps directly in Cucumber scenarios.
83
+ description: Expand Cucumber with macro-steps.
84
84
  email: famished.tiger@yahoo.com
85
85
  executables: []
86
86
  extensions: []