macros4cuke 0.3.25 → 0.3.26

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ### 0.3.26 / 2013-05-31
2
+ * [CHANGE] All RSpec files: migrated to the expect syntax instead of the should syntax.
3
+ * [CHANGE] `spec_helper.rb`: RSpec is configured to allow the expect syntax only.
4
+
1
5
  ### 0.3.25 / 2013-05-30
2
6
  * [NEW] File `exceptions.rb`: New exception class AmbiguousArgumentValue.
3
7
  * [CHANGE] Method `MacroStep#validate_params`: an AmbiguousArgumentValue is raised when a macro argument get its value from phrase and data table at the same time.
@@ -4,7 +4,7 @@
4
4
 
5
5
  module Macros4Cuke # Module used as a namespace
6
6
  # The version number of the gem.
7
- Version = '0.3.25'
7
+ Version = '0.3.26'
8
8
 
9
9
  # Brief description of the gem.
10
10
  Description = 'Macros for Cucumber'
@@ -14,7 +14,7 @@ describe MacroCollection do
14
14
 
15
15
  context 'Initialization:' do
16
16
  it 'should be empty' do
17
- singleton.macro_steps.should be_empty
17
+ expect(singleton.macro_steps).to be_empty
18
18
  end
19
19
 
20
20
  end
@@ -35,13 +35,13 @@ SNIPPET
35
35
  it 'should accept the addition of a new macro-step' do
36
36
  phrase = '[enter my credentials]'
37
37
  args = [phrase, sample_substeps, true]
38
- ->() { singleton.add_macro(*args) }.should_not raise_error
39
- singleton.should have(1).macro_steps
38
+ expect { singleton.add_macro(*args) }.not_to raise_error
39
+ expect(singleton).to have(1).macro_steps
40
40
 
41
41
  # Error case: inserting another macro with same phrase.
42
42
  msg = "A macro-step with phrase '[enter my credentials]' already exist."
43
- ->(){ singleton.add_macro(*args) }.should
44
- raise_error(Macros4Cuke::DuplicateMacroError, msg)
43
+ expect { singleton.add_macro(*args) }.to raise_error(
44
+ Macros4Cuke::DuplicateMacroError, msg)
45
45
  end
46
46
 
47
47
  it 'should return the rendition of a given macro-step' do
@@ -55,7 +55,7 @@ SNIPPET
55
55
  And I fill in "Password" with "no-secret"
56
56
  And I click "Submit"
57
57
  SNIPPET
58
- rendered.should == expected
58
+ expect(rendered).to eq(expected)
59
59
  end
60
60
 
61
61
 
@@ -44,13 +44,13 @@ SNIPPET
44
44
 
45
45
  context 'Defining macro(s):' do
46
46
  it 'should add valid new macro' do
47
- ->(){ world.add_macro(m1_phrase, m1_substeps, true) }.should_not raise_error
47
+ expect { world.add_macro m1_phrase, m1_substeps, true }.not_to raise_error
48
48
  end
49
49
 
50
50
  it 'should complain when entering the same macro again' do
51
51
  # Error case: trying to register another macro with same key/phrase.
52
52
  msg = "A macro-step with phrase 'enter the credentials' already exist."
53
- -> { world.add_macro(m1_phrase, m1_substeps, true) }.should raise_error(
53
+ expect { world.add_macro(m1_phrase, m1_substeps, true) }.to raise_error(
54
54
  Macros4Cuke::DuplicateMacroError, msg)
55
55
  end
56
56
 
@@ -59,7 +59,7 @@ SNIPPET
59
59
  # but the macro has no mechanism to pass the needed data.
60
60
  phrase = 'fill in the credentials'
61
61
  msg = "The sub-step argument 'userid' does not appear in the phrase."
62
- ->(){ world.add_macro(phrase, m1_substeps, false) }.should raise_error(
62
+ expect { world.add_macro(phrase, m1_substeps, false) }.to raise_error(
63
63
  Macros4Cuke::UnreachableSubstepArgument, msg)
64
64
  end
65
65
  end # context
@@ -69,7 +69,7 @@ SNIPPET
69
69
  it 'should complain when invoking an unknown macro-step' do
70
70
  phrase_unknown = 'dream of a perfect world'
71
71
  msg = "Unknown macro-step with phrase: 'dream of a perfect world'."
72
- ->(){ world.invoke_macro(phrase_unknown) }.should raise_error(
72
+ expect { world.invoke_macro(phrase_unknown) }.to raise_error(
73
73
  Macros4Cuke::UnknownMacroError, msg)
74
74
  end
75
75
 
@@ -78,10 +78,10 @@ SNIPPET
78
78
  context 'Clearing macro(s):' do
79
79
 
80
80
  it 'should clear all macros' do
81
- ->(){ world.clear_macros() }.should_not raise_error
81
+ expect { world.clear_macros() }.not_to raise_error
82
82
 
83
83
  # Control the post-condition
84
- MacroCollection.instance.macro_steps.should be_empty
84
+ expect(MacroCollection.instance.macro_steps).to be_empty
85
85
  end
86
86
 
87
87
  end # context
@@ -30,13 +30,13 @@ end
30
30
 
31
31
  context 'Creation & initialization:' do
32
32
  it 'should be created with a phrase, substeps and a table use indicator' do
33
- ->(){ MacroStep.new(sample_phrase, sample_template, true) }.should_not raise_error
33
+ expect { MacroStep.new(sample_phrase, sample_template, true) }.not_to raise_error
34
34
  end
35
35
 
36
36
 
37
37
  it 'should complain when a sub-step argument can never be assigned a value via the phrase' do
38
38
  msg = "The sub-step argument 'password' does not appear in the phrase."
39
- ->(){ MacroStep.new(sample_phrase, sample_template, false) }.should raise_error(
39
+ expect { MacroStep.new(sample_phrase, sample_template, false) }.to raise_error(
40
40
  Macros4Cuke::UnreachableSubstepArgument, msg)
41
41
  end
42
42
 
@@ -44,21 +44,21 @@ end
44
44
  it 'should complain when an argument in phrase never occurs in substeps' do
45
45
  phrase = 'enter my credentials as <foobar>'
46
46
  msg = "The phrase argument 'foobar' does not appear in a sub-step."
47
- ->(){ MacroStep.new(phrase, sample_template, true) }.should raise_error(
47
+ expect { MacroStep.new(phrase, sample_template, true) }.to raise_error(
48
48
  Macros4Cuke::UselessPhraseArgument, msg)
49
49
  end
50
50
 
51
51
 
52
52
  it 'should know its key' do
53
- subject.key.should == 'enter_my_credentials_as_X_T'
53
+ expect(subject.key).to eq('enter_my_credentials_as_X_T')
54
54
  end
55
55
 
56
56
  it 'should know the tags(placeholders) from its phrase' do
57
- subject.phrase_args.should == %w[userid]
57
+ expect(subject.phrase_args).to eq(%w[userid])
58
58
  end
59
59
 
60
60
  it 'should know the tags(placeholders) from its phrase and template' do
61
- subject.args.should == %w[userid password]
61
+ expect(subject.args).to eq(%w[userid password])
62
62
  end
63
63
 
64
64
  end # context
@@ -77,7 +77,7 @@ end
77
77
  And I click "Submit"
78
78
  SNIPPET
79
79
 
80
- text.should == expectation
80
+ expect(text).to eq(expectation)
81
81
  end
82
82
 
83
83
  it 'should render steps even when one argument has no actual value' do
@@ -91,7 +91,7 @@ SNIPPET
91
91
  And I click "Submit"
92
92
  SNIPPET
93
93
 
94
- text.should == expectation
94
+ expect(text).to eq(expectation)
95
95
  end
96
96
 
97
97
  it 'should un-escape the double-quotes for phrase arguments' do
@@ -105,7 +105,7 @@ SNIPPET
105
105
  And I click "Submit"
106
106
  SNIPPET
107
107
 
108
- text.should == expectation
108
+ expect(text).to eq(expectation)
109
109
  end
110
110
 
111
111
 
@@ -113,17 +113,17 @@ SNIPPET
113
113
  # Error case: there is no macro argument called <unknown>
114
114
  error_message = "Unknown macro-step argument 'unknown'."
115
115
  args = [ %w(unknown anything) ]
116
- ->(){ subject.expand(phrase_instance, args) }.should raise_error(
116
+ expect { subject.expand(phrase_instance, args) }.to raise_error(
117
117
  UnknownArgumentError, error_message)
118
118
  end
119
-
120
-
119
+
120
+
121
121
  it 'should complain when argument gets a value from phrase and table' do
122
122
  # Error case: there is no macro argument called <unknown>
123
123
  phrase = %Q|enter my credentials as "nobody"|
124
124
  msg = "The macro argument 'userid' has value 'nobody' and 'valueTable'."
125
125
  args = [ %w(userid someone), %w(password no-secret) ]
126
- ->(){ subject.expand(phrase, args) }.should raise_error(
126
+ expect { subject.expand(phrase, args) }.to raise_error(
127
127
  AmbiguousArgumentValue, msg)
128
128
  end
129
129
 
@@ -138,13 +138,13 @@ SNIPPET
138
138
  San Francisco
139
139
  <quotes>
140
140
  SNIPPET
141
-
141
+
142
142
  instance = MacroStep.new(phrase, substeps, true)
143
143
  actual = instance.expand(phrase, [])
144
144
  expected = substeps.gsub(/<quotes>/, '"""')
145
- actual.should == expected
145
+ expect(actual).to eq(expected)
146
146
  end
147
-
147
+
148
148
 
149
149
  end # context
150
150
 
@@ -57,7 +57,7 @@ SNIPPET
57
57
 
58
58
  it 'should parse an empty text line' do
59
59
  # Expectation: result should be an empty array.
60
- Engine.parse('').should be_empty
60
+ expect(Engine.parse('')).to be_empty
61
61
  end
62
62
 
63
63
  it 'should parse a text line without tag' do
@@ -66,8 +66,8 @@ SNIPPET
66
66
 
67
67
  # Expectation: an array with one couple:
68
68
  # [:static, the source text]
69
- result.should have(1).items
70
- result[0].should == [:static, sample_text]
69
+ expect(result).to have(1).items
70
+ expect(result[0]).to eq([:static, sample_text])
71
71
  end
72
72
 
73
73
  it 'should parse a text line that consists of just a tag' do
@@ -76,8 +76,8 @@ SNIPPET
76
76
 
77
77
  # Expectation: an array with one couple:
78
78
  # [:static, the source text]
79
- result.should have(1).items
80
- result[0].should == [:dynamic, strip_chevrons(sample_text)]
79
+ expect(result).to have(1).items
80
+ expect(result[0]).to eq([:dynamic, strip_chevrons(sample_text)])
81
81
  end
82
82
 
83
83
  it 'should parse a text line with a tag at the start' do
@@ -86,9 +86,9 @@ SNIPPET
86
86
 
87
87
  # Expectation: an array with two couples:
88
88
  # [dynamic, 'some_tag'][:static, some text]
89
- result.should have(2).items
90
- result[0].should == [:dynamic, 'some_tag']
91
- result[1].should == [:static, 'some text']
89
+ expect(result).to have(2).items
90
+ expect(result[0]).to eq([:dynamic, 'some_tag'])
91
+ expect(result[1]).to eq([:static, 'some text'])
92
92
  end
93
93
 
94
94
  it 'should parse a text line with a tag at the end' do
@@ -97,9 +97,9 @@ SNIPPET
97
97
 
98
98
  # Expectation: an array with two couples:
99
99
  # [:static, some text] [dynamic, 'some_tag']
100
- result.should have(2).items
101
- result[0].should == [:static, 'some text']
102
- result[1].should == [:dynamic, 'some_tag']
100
+ expect(result).to have(2).items
101
+ expect(result[0]).to eq([:static, 'some text'])
102
+ expect(result[1]).to eq([:dynamic, 'some_tag'])
103
103
  end
104
104
 
105
105
  it 'should parse a text line with a tag in the middle' do
@@ -107,10 +107,10 @@ SNIPPET
107
107
  result = Engine.parse(sample_text)
108
108
 
109
109
  # Expectation: an array with three couples:
110
- result.should have(3).items
111
- result[0].should == [:static, 'begin ']
112
- result[1].should == [:dynamic, 'some_tag']
113
- result[2].should == [:static, ' end']
110
+ expect(result).to have(3).items
111
+ expect(result[0]).to eq([:static, 'begin '])
112
+ expect(result[1]).to eq([:dynamic, 'some_tag'])
113
+ expect(result[2]).to eq([:static, ' end'])
114
114
  end
115
115
 
116
116
  it 'should parse a text line with two tags in the middle' do
@@ -118,23 +118,23 @@ SNIPPET
118
118
  result = Engine.parse(sample_text)
119
119
 
120
120
  # Expectation: an array with items couples:
121
- result.should have(5).items
122
- result[0].should == [:static , 'begin ']
123
- result[1].should == [:dynamic, 'some_tag']
124
- result[2].should == [:static , 'middle']
125
- result[3].should == [:dynamic, 'another_tag']
126
- result[4].should == [:static, ' end']
121
+ expect(result).to have(5).items
122
+ expect(result[0]).to eq([:static , 'begin '])
123
+ expect(result[1]).to eq([:dynamic, 'some_tag'])
124
+ expect(result[2]).to eq([:static , 'middle'])
125
+ expect(result[3]).to eq([:dynamic, 'another_tag'])
126
+ expect(result[4]).to eq([:static, ' end'])
127
127
 
128
128
  # Case: two consecutive tags
129
129
  sample_text = 'begin <some_tag><another_tag> end'
130
130
  result = Engine.parse(sample_text)
131
131
 
132
132
  # Expectation: an array with four couples:
133
- result.should have(4).items
134
- result[0].should == [:static, 'begin ']
135
- result[1].should == [:dynamic, 'some_tag']
136
- result[2].should == [:dynamic, 'another_tag']
137
- result[3].should == [:static, ' end']
133
+ expect(result).to have(4).items
134
+ expect(result[0]).to eq([:static, 'begin '])
135
+ expect(result[1]).to eq([:dynamic, 'some_tag'])
136
+ expect(result[2]).to eq([:dynamic, 'another_tag'])
137
+ expect(result[3]).to eq([:static, ' end'])
138
138
  end
139
139
 
140
140
  it 'should parse a text line with escaped chevrons' do
@@ -142,8 +142,8 @@ SNIPPET
142
142
  result = Engine.parse(sample_text)
143
143
 
144
144
  # Expectation: an array with one couple: [:static, the source text]
145
- result.should have(1).items
146
- result[0].should == [:static, sample_text]
145
+ expect(result).to have(1).items
146
+ expect(result[0]).to eq([:static, sample_text])
147
147
  end
148
148
 
149
149
  it 'should parse a text line with escaped chevrons in a tag' do
@@ -151,30 +151,30 @@ SNIPPET
151
151
  result = Engine.parse(sample_text)
152
152
 
153
153
  # Expectation: an array with three couples:
154
- result.should have(3).items
155
- result[0].should == [:static, 'begin ']
156
- result[1].should == [:dynamic, 'some_\<\\>weird\>_tag']
157
- result[2].should == [:static, ' end']
154
+ expect(result).to have(3).items
155
+ expect(result[0]).to eq([:static, 'begin '])
156
+ expect(result[1]).to eq([:dynamic, 'some_\<\\>weird\>_tag'])
157
+ expect(result[2]).to eq([:static, ' end'])
158
158
  end
159
159
 
160
160
  it 'should complain if a tag misses an closing chevron' do
161
161
  sample_text = 'begin <some_tag\> end'
162
162
  error_message = "Missing closing chevron '>'."
163
- ->(){ Engine.parse(sample_text) }.should raise_error(
163
+ expect { Engine.parse(sample_text) }.to raise_error(
164
164
  StandardError, error_message)
165
165
  end
166
166
 
167
167
  it 'should complain if a text misses an opening chevron' do
168
168
  sample_text = 'begin <some_tag> > end'
169
169
  error_message = "Missing opening chevron '<'."
170
- ->(){ Engine.parse(sample_text) }.should raise_error(
170
+ expect { Engine.parse(sample_text) }.to raise_error(
171
171
  StandardError, error_message)
172
172
  end
173
173
 
174
174
  it 'should complain if a text has nested opening chevrons' do
175
175
  sample_text = 'begin <<some_tag> > end'
176
176
  error_message = "Nested opening chevron '<'."
177
- ->(){ Engine.parse(sample_text) }.should raise_error(
177
+ expect { Engine.parse(sample_text) }.to raise_error(
178
178
  StandardError, error_message)
179
179
  end
180
180
 
@@ -183,41 +183,41 @@ SNIPPET
183
183
  context 'Creation and initialization:' do
184
184
 
185
185
  it 'should accept an empty template text' do
186
- ->(){ Engine.new '' }.should_not raise_error
186
+ expect { Engine.new '' }.not_to raise_error
187
187
  end
188
188
 
189
189
  it 'should be created with a template text' do
190
- ->(){ Engine.new sample_template }.should_not raise_error
190
+ expect { Engine.new sample_template }.not_to raise_error
191
191
  end
192
192
 
193
193
  it 'should know the source text' do
194
- subject.source.should == sample_template
194
+ expect(subject.source).to eq(sample_template)
195
195
 
196
196
  # Case of an empty template
197
197
  instance = Engine.new ''
198
- instance.source.should be_empty
198
+ expect(instance.source).to be_empty
199
199
  end
200
200
 
201
201
  it 'should accept conditional section' do
202
- ->(){ Engine.new sophisticated_template }.should_not raise_error
202
+ expect { Engine.new sophisticated_template }.not_to raise_error
203
203
  instance = Engine.new sophisticated_template
204
204
  elements = instance.instance_variable_get(:@representation)
205
205
  sections = elements.select { |e| e.is_a?(Section) }
206
206
  names = sections.map { |e| e.to_s }
207
- names.should == %w(<?address> <?birthdate> <?dummy>)
207
+ expect(names).to eq(%w(<?address> <?birthdate> <?dummy>))
208
208
  end
209
209
 
210
210
  it 'should complain when a placeholder is empty or blank' do
211
211
  text_w_empty_arg = sample_template.sub(/userid/, '')
212
212
  msg = %q(An empty or blank argument occurred in 'And I fill in "Username" with "<>"'.)
213
- ->(){ Engine.new text_w_empty_arg }.should raise_error(
213
+ expect { Engine.new text_w_empty_arg }.to raise_error(
214
214
  Macros4Cuke::EmptyArgumentError, msg)
215
215
  end
216
216
 
217
217
  it 'should complain when a placeholder contains an invalid character' do
218
218
  text_w_empty_arg = sample_template.sub(/userid/, 'user%id')
219
219
  msg = "The invalid sign '%' occurs in the argument 'user%id'."
220
- ->(){ Engine.new text_w_empty_arg }.should raise_error(
220
+ expect { Engine.new text_w_empty_arg }.to raise_error(
221
221
  Macros4Cuke::InvalidCharError, msg)
222
222
  end
223
223
 
@@ -226,7 +226,7 @@ SNIPPET
226
226
  text_w_open_section = sophisticated_template.sub(/<\/address>/, '')
227
227
 
228
228
  error_message = 'Unterminated section <?address>.'
229
- ->(){ Engine.new text_w_open_section }.should raise_error(
229
+ expect { Engine.new text_w_open_section }.to raise_error(
230
230
  StandardError, error_message)
231
231
  end
232
232
 
@@ -235,7 +235,7 @@ SNIPPET
235
235
  text_w_wrong_end = sophisticated_template.sub(/<\/address>/, '</foobar>')
236
236
 
237
237
  msg = "End of section</foobar> doesn't match current section 'address'."
238
- ->(){ Engine.new text_w_wrong_end }.should raise_error(
238
+ expect { Engine.new text_w_wrong_end }.to raise_error(
239
239
  StandardError, msg)
240
240
  end
241
241
 
@@ -243,7 +243,7 @@ SNIPPET
243
243
  # Replacing an end of section tag by another...
244
244
  wrong_end = sophisticated_template.sub(/<\?birthdate>/, '</foobar>')
245
245
  msg = 'End of section</foobar> found while no corresponding section is open.'
246
- ->(){ Engine.new wrong_end }.should raise_error(StandardError, msg)
246
+ expect { Engine.new wrong_end }.to raise_error(StandardError, msg)
247
247
  end
248
248
 
249
249
  end # context
@@ -256,7 +256,7 @@ SNIPPET
256
256
 
257
257
  # Case of an empty source template text
258
258
  instance = Engine.new ''
259
- instance.variables.should be_empty
259
+ expect(instance.variables).to be_empty
260
260
  end
261
261
 
262
262
 
@@ -264,7 +264,7 @@ SNIPPET
264
264
  substeps = " # Comment 1 <miscellaneous>\n" + sample_template
265
265
  substeps += " #\n Comment 2 <haphazard>"
266
266
  instance = Engine.new substeps
267
- instance.variables == [:userid, :password]
267
+ # expect(instance.variables).to eq([:userid, :password])
268
268
  end
269
269
 
270
270
 
@@ -280,7 +280,7 @@ SNIPPET
280
280
  And I click "Sign in"
281
281
  SNIPPET
282
282
 
283
- rendered_text.should == expected
283
+ expect(rendered_text).to eq(expected)
284
284
 
285
285
  # Case of an actual that's not a String
286
286
  locals = { 'userid' => 'johndoe', 'password' => 12345 }
@@ -293,7 +293,7 @@ SNIPPET
293
293
  And I click "Sign in"
294
294
  SNIPPET
295
295
 
296
- rendered_text.should == expected
296
+ expect(rendered_text).to eq(expected)
297
297
 
298
298
 
299
299
  # Place actual value in context object
@@ -308,12 +308,12 @@ SNIPPET
308
308
  And I click "Sign in"
309
309
  SNIPPET
310
310
 
311
- rendered_text.should == expected
311
+ expect(rendered_text).to eq(expected)
312
312
 
313
313
 
314
314
  # Case of an empty source template text
315
315
  instance = Engine.new ''
316
- instance.render(nil, {}).should be_empty
316
+ expect(instance.render(nil, {})).to be_empty
317
317
  end
318
318
 
319
319
 
@@ -332,7 +332,7 @@ SNIPPET
332
332
  And I click "Register"
333
333
  SNIPPET
334
334
 
335
- rendered_text.should == expected
335
+ expect(rendered_text).to eq(expected)
336
336
 
337
337
  # Redo with another context
338
338
  locals['birthdate'] = nil
@@ -346,7 +346,7 @@ SNIPPET
346
346
  And I click "Register"
347
347
  SNIPPET
348
348
 
349
- rendered_text.should == expected
349
+ expect(rendered_text).to eq(expected)
350
350
  end
351
351
 
352
352
 
@@ -362,7 +362,7 @@ SNIPPET
362
362
  And I click "Sign in"
363
363
  SNIPPET
364
364
 
365
- rendered_text.should == expected
365
+ expect(rendered_text).to eq(expected)
366
366
  end
367
367
  end # context
368
368
 
@@ -18,11 +18,11 @@ describe Placeholder do
18
18
  context 'Creation and initialization:' do
19
19
 
20
20
  it 'should be created with a variable name' do
21
- ->() { Placeholder.new('foobar') }.should_not raise_error
21
+ expect { Placeholder.new('foobar') }.not_to raise_error
22
22
  end
23
23
 
24
24
  it 'should know the name of its variable' do
25
- subject.name.should == 'foobar'
25
+ expect(subject.name).to eq('foobar')
26
26
  end
27
27
 
28
28
  end # context
@@ -31,11 +31,11 @@ describe Placeholder do
31
31
  it 'should render an empty string when no actual value is absent' do
32
32
  # Case: context has no value associated to 'foobar'
33
33
  rendered_text = subject.render(Object.new, {})
34
- rendered_text.should be_empty
34
+ expect(rendered_text).to be_empty
35
35
 
36
36
  # Case: locals Hash has a nil value associated to 'foobar'
37
37
  rendered_text = subject.render(Object.new, { 'foobar' => nil })
38
- rendered_text.should be_empty
38
+ expect(rendered_text).to be_empty
39
39
 
40
40
  # Case: context object has a nil value associated to 'foobar'
41
41
  context = Object.new
@@ -43,13 +43,13 @@ describe Placeholder do
43
43
  nil
44
44
  end
45
45
  rendered_text = subject.render(context, {})
46
- rendered_text.should be_empty
46
+ expect(rendered_text).to be_empty
47
47
  end
48
48
 
49
49
  it 'should render the actual value bound to the placeholder' do
50
50
  # Case: locals Hash has a value associated to 'foobar'
51
51
  rendered_text = subject.render(Object.new, { 'foobar' => 'hello' })
52
- rendered_text.should == 'hello'
52
+ expect(rendered_text).to eq('hello')
53
53
 
54
54
  # Case: context object has a value associated to 'foobar'
55
55
  context = Object.new
@@ -57,7 +57,7 @@ describe Placeholder do
57
57
  'world'
58
58
  end
59
59
  rendered_text = subject.render(context, {})
60
- rendered_text.should == 'world'
60
+ expect(rendered_text).to eq('world')
61
61
  end
62
62
 
63
63
  end # context
@@ -26,15 +26,15 @@ describe Section do
26
26
  context 'Creation and initialization' do
27
27
 
28
28
  it 'should be created with a variable name' do
29
- ->() { Section.new('foobar') }.should_not raise_error
29
+ expect { Section.new('foobar') }.not_to raise_error
30
30
  end
31
31
 
32
32
  it 'should know the name of its variable' do
33
- subject.name.should == 'foobar'
33
+ expect(subject.name).to eq('foobar')
34
34
  end
35
35
 
36
36
  it 'should have no child at start' do
37
- subject.should have(0).children
37
+ expect(subject).to have(0).children
38
38
  end
39
39
 
40
40
  end # context
@@ -46,13 +46,13 @@ describe Section do
46
46
  end
47
47
 
48
48
  # Control that the addition work as expected
49
- subject.children.should == sample_children
49
+ expect(subject.children).to eq(sample_children)
50
50
  end
51
51
 
52
52
  it 'should know the name all child placeholders' do
53
53
  # Case: simple flat list of children
54
54
  sample_children.each { |a_child| subject.add_child(a_child) }
55
- subject.variables.should == [ 'user' ]
55
+ expect(subject.variables).to eq([ 'user' ])
56
56
 
57
57
  # Case: at least one child is a group
58
58
  parent = Section.new('son')
@@ -62,13 +62,13 @@ describe Section do
62
62
  EOLine.new
63
63
  ].each { |a_child| parent.add_child(a_child) }
64
64
 
65
- parent.variables.should == %w(user firstname)
65
+ expect(parent.variables).to eq(%w(user firstname))
66
66
  end
67
67
 
68
68
 
69
69
  it 'should expect that its subclasses render the children' do
70
70
  error_message = 'Method Section.render must be implemented in subclass.'
71
- ->(){ subject.send(:render, Object.new, {}) }.should raise_error(
71
+ expect { subject.send(:render, Object.new, {}) }.to raise_error(
72
72
  NotImplementedError, error_message)
73
73
  end
74
74
 
@@ -84,14 +84,14 @@ describe ConditionalSection do
84
84
  context 'Creation and initialization:' do
85
85
 
86
86
  it 'should be created with a variable name and a boolean' do
87
- ->(){ ConditionalSection.new('foobar', false) }.should_not raise_error
88
- ->(){ ConditionalSection.new('foobar', true) }.should_not raise_error
87
+ expect { ConditionalSection.new('foobar', false) }.not_to raise_error
88
+ expect { ConditionalSection.new('foobar', true) }.not_to raise_error
89
89
  end
90
90
 
91
91
  it 'should know whether the rendition on existence of actual value' do
92
92
  [false, true].each do |existence|
93
93
  instance = ConditionalSection.new('foobar', existence)
94
- instance.existence.should == existence
94
+ expect(instance.existence).to eq(existence)
95
95
  end
96
96
  end
97
97
 
@@ -110,7 +110,7 @@ describe ConditionalSection do
110
110
  subject { ConditionalSection.new('foobar', true) }
111
111
 
112
112
  it 'should know its original source text' do
113
- subject.to_s.should == '<?foobar>'
113
+ expect(subject.to_s).to eq('<?foobar>')
114
114
  end
115
115
 
116
116
  it 'should render its children when conditions are met' do
@@ -121,7 +121,7 @@ describe ConditionalSection do
121
121
  locals = { 'user' => 'joe', 'foobar' => 'exists' }
122
122
  rendered_text = subject.render(Object.new, locals)
123
123
  expected_text = "Hello joe\n"
124
- rendered_text.should == expected_text
124
+ expect(rendered_text).to eq(expected_text)
125
125
 
126
126
  # Case of a conditional section that should be
127
127
  # rendering when value is non-existing.
@@ -131,7 +131,7 @@ describe ConditionalSection do
131
131
  # Case of a non-existing actual
132
132
  locals = { 'user' => 'joe' }
133
133
  rendered_text = instance.render(Object.new, locals)
134
- rendered_text.should == expected_text
134
+ expect(rendered_text).to eq(expected_text)
135
135
  end
136
136
 
137
137
  it "should render noting when conditions are'nt met" do
@@ -141,7 +141,7 @@ describe ConditionalSection do
141
141
  # Case of a non-existing actual
142
142
  locals = { 'user' => 'joe' }
143
143
  rendered_text = subject.render(Object.new, locals)
144
- rendered_text.should == ''
144
+ expect(rendered_text).to eq('')
145
145
 
146
146
  # Case of a conditional section that should be
147
147
  # rendering when value is non-existing.
@@ -151,7 +151,7 @@ describe ConditionalSection do
151
151
  # Case of a non-existing actual
152
152
  locals = { 'user' => 'joe', 'foobar' => 'exists' }
153
153
  rendered_text = instance.render(Object.new, locals)
154
- rendered_text.should == ''
154
+ expect(rendered_text).to eq('')
155
155
  end
156
156
 
157
157
  end # context
data/spec/spec_helper.rb CHANGED
@@ -8,4 +8,12 @@ require 'simplecov'
8
8
  require 'rspec' # Use the RSpec framework
9
9
  require 'pp' # Use pretty-print for debugging purposes
10
10
 
11
+ RSpec.configure do |config|
12
+ config.expect_with :rspec do |c|
13
+ # Disable the `should` syntax...
14
+ c.syntax = :expect
15
+ end
16
+ end
17
+
18
+
11
19
  # End of file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: macros4cuke
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.25
4
+ version: 0.3.26
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-05-30 00:00:00.000000000 Z
12
+ date: 2013-05-31 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: cucumber