kosmas58-cucumber 0.3.9.4 → 0.3.11.3

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.
Files changed (38) hide show
  1. data/History.txt +45 -7
  2. data/Manifest.txt +403 -0
  3. data/cucumber.yml +4 -3
  4. data/examples/dos_line_endings/features/dos_line_endings.feature +9 -9
  5. data/features/drb_server_integration.feature +114 -0
  6. data/features/html_formatter/a.html +129 -1574
  7. data/features/junit_formatter.feature +11 -2
  8. data/features/step_definitions/cucumber_steps.rb +15 -2
  9. data/features/support/env.rb +35 -1
  10. data/gem_tasks/features.rake +7 -2
  11. data/lib/cucumber/ast/table.rb +6 -6
  12. data/lib/cucumber/cli/configuration.rb +32 -8
  13. data/lib/cucumber/cli/drb_client.rb +20 -0
  14. data/lib/cucumber/cli/main.rb +9 -0
  15. data/lib/cucumber/formatter/color_io.rb +2 -2
  16. data/lib/cucumber/formatter/console.rb +6 -1
  17. data/lib/cucumber/formatter/cucumber.css +106 -48
  18. data/lib/cucumber/formatter/cucumber.sass +121 -31
  19. data/lib/cucumber/formatter/html.rb +14 -3
  20. data/lib/cucumber/formatter/junit.rb +1 -2
  21. data/lib/cucumber/rake/task.rb +1 -1
  22. data/lib/cucumber/version.rb +2 -2
  23. data/rails_generators/cucumber/cucumber_generator.rb +15 -5
  24. data/rails_generators/cucumber/templates/cucumber.rake +5 -5
  25. data/rails_generators/cucumber/templates/de/paths.rb +3 -3
  26. data/rails_generators/cucumber/templates/de/webrat_steps.rb +11 -3
  27. data/rails_generators/cucumber/templates/env.rb +10 -3
  28. data/rails_generators/cucumber/templates/spork_env.rb +36 -0
  29. data/spec/cucumber/cli/configuration_spec.rb +56 -1
  30. data/spec/cucumber/cli/drb_client_spec.rb +43 -0
  31. data/spec/cucumber/cli/main_spec.rb +70 -19
  32. data/spec/spec_helper.rb +2 -0
  33. metadata +8 -9
  34. data/spec/cucumber/formatter/html/cucumber.css +0 -37
  35. data/spec/cucumber/formatter/html/cucumber.js +0 -13
  36. data/spec/cucumber/formatter/html/index.html +0 -45
  37. data/spec/cucumber/formatter/html/jquery-1.3.min.js +0 -19
  38. data/spec/cucumber/formatter/html/jquery.uitableedit.js +0 -100
data/History.txt CHANGED
@@ -1,11 +1,48 @@
1
- == 0.3.10 (In Git)
1
+ == 0.3.12 (In Git)
2
2
 
3
- This release has some minor bugfixes related to RSpec and Rails interop.
3
+ === Bugfixes
4
+ * CLI issues correct exit code when using --drb. Requires Spork version >= 0.5.1. (#355 Ben Mabey)
5
+ * Make sure script/generate cucumber --spork uses the cucumber Rails environment (Philippe Lafoucrière)
6
+
7
+ === Changed Features
8
+ * The data returned from Table#hashes and similar methods are frozen. Dup if you need to modify. (Aslak Hellesøy)
9
+
10
+ == 0.3.11 2009-06-05
11
+
12
+ This release just fixes a tiny bug in the formatter to fix an incompatibility
13
+ with the latest RedMine release. It should have been included in 0.3.10, but
14
+ was forgotten.
15
+
16
+ === Bugfixes
17
+ * Formatter API was broken in 0.3.9 (Roman Chernyatchik)
18
+
19
+ == 0.3.10 2009-06-05
20
+
21
+ The Spork Release!
22
+
23
+ This release has an exciting new feature - a new --drb switch! This magic switch lets you run your
24
+ features much faster than before, because you can eliminate the startup time for your code. This is
25
+ thanks to a brand new gem called Spork by Tim Harper and Ben Mabey. (You can find out more about Spork
26
+ here: http://github.com/timcharper/spork/tree/master). You can start Spork and have it preload your
27
+ application in a separate process. Spork listens for DRb connections, and when you run cucumber with
28
+ --drb the features will run inside the Spork server instead. Spork provides two simple hooks for preloading
29
+ your application - one for framework/stable code (Spork.prefork) and one for the code that *you* write and
30
+ change often (Spork.each_run). Keep in mind that all World, Before, and other Cucumber hooks need to be
31
+ in the Spork.each_run block. Using Spork works great for Ruby on Rails, which can take a while to load,
32
+ but --drb and Spork aren't tied to Rails at all. The new --drb switch also works great alongside autotest
33
+ (just add --drb to your autotest profile in cucumber.yml), so now you can get even faster feedback.
34
+
35
+ Cucumber's built-in cucumber generator now has a new --spork switch, so when you bootstrap your Rails
36
+ application for cucumber, you can have spork configuration set up out of the box. (It's just a
37
+ slightly different env.rb.)
38
+
39
+ Although Spork was in mind when the --drb switch was added it is important to realize that all that was added
40
+ to Cucumber was a DRb client. Any DRb server that adheres to this protocol can be used with Cucumber's --drb
41
+ switch. While Spork is geared towards removing the load time to give you a faster feedback loop you could
42
+ just as easily use this client with a server that distributes your features to run in parallel. Someone just
43
+ needs to write such a server. ;)
4
44
 
5
- TODO: Maybe always require all steps under features/ even if a deeper feature is run?
6
- People ask about this all the time. People could still override with -r, but there would
7
- be less confusion about the default cases. Need to find out what part of the doco recommends
8
- deeper structures. Selenium? Others?
45
+ This release also has some minor bugfixes related to RSpec and Rails interop.
9
46
 
10
47
  === Bugfixes
11
48
  * RSpec's be_* matchers did not work in 0.3.9 and probably earlier versions. Now they do. (Aslak Hellesøy)
@@ -13,7 +50,8 @@ deeper structures. Selenium? Others?
13
50
  * The Rails cucumber generator will no longer declare gem dependencies on rspec if you use --testunit. (Aslak Hellesøy)
14
51
 
15
52
  === New features
16
- * Added a Ast::Feature#name method for convenience
53
+ * Spork support via --drb. (Ben Mabey)
54
+ * Added a Ast::Feature#name method for convenience. (Aslak Hellesøy)
17
55
 
18
56
  === Changed features
19
57
  * The HTML formatter wraps examples in a div, and distinguishes between Scenario and Scenario Outline. (Aslak Hellesøy)
data/Manifest.txt CHANGED
@@ -0,0 +1,403 @@
1
+ History.txt
2
+ License.txt
3
+ Manifest.txt
4
+ README.txt
5
+ Rakefile
6
+ bin/cucumber
7
+ config/hoe.rb
8
+ config/requirements.rb
9
+ cucumber.yml
10
+ examples/cs/README.textile
11
+ examples/cs/Rakefile
12
+ examples/cs/compile.bat
13
+ examples/cs/features/addition.feature
14
+ examples/cs/features/step_definitons/calculator_steps.rb
15
+ examples/cs/src/demo/Calculator.cs
16
+ examples/dos_line_endings/Rakefile
17
+ examples/dos_line_endings/features/dos_line_endings.feature
18
+ examples/i18n/README.textile
19
+ examples/i18n/Rakefile
20
+ examples/i18n/ar/Rakefile
21
+ examples/i18n/ar/features/addition.feature
22
+ examples/i18n/ar/features/step_definitons/calculator_steps.rb
23
+ examples/i18n/ar/lib/calculator.rb
24
+ examples/i18n/bg/Rakefile
25
+ examples/i18n/bg/features/addition.feature
26
+ examples/i18n/bg/features/consecutive_calculations.feature
27
+ examples/i18n/bg/features/division.feature
28
+ examples/i18n/bg/features/step_definitons/calculator_steps.rb
29
+ examples/i18n/bg/features/support/env.rb
30
+ examples/i18n/bg/features/support/world.rb
31
+ examples/i18n/bg/lib/calculator.rb
32
+ examples/i18n/cat/Rakefile
33
+ examples/i18n/cat/features/step_definitons/calculator_steps.rb
34
+ examples/i18n/cat/features/suma.feature
35
+ examples/i18n/cat/lib/calculadora.rb
36
+ examples/i18n/da/Rakefile
37
+ examples/i18n/da/features/step_definitons/kalkulator_steps.rb
38
+ examples/i18n/da/features/summering.feature
39
+ examples/i18n/da/lib/kalkulator.rb
40
+ examples/i18n/de/Rakefile
41
+ examples/i18n/de/features/addition.feature
42
+ examples/i18n/de/features/division.feature
43
+ examples/i18n/de/features/step_definitons/calculator_steps.rb
44
+ examples/i18n/de/lib/calculator.rb
45
+ examples/i18n/en-lol/Rakefile
46
+ examples/i18n/en-lol/features/step_definitions/cucumbrz_steps.rb
47
+ examples/i18n/en-lol/features/stuffing.feature
48
+ examples/i18n/en-lol/features/support/env.rb
49
+ examples/i18n/en-lol/lib/basket.rb
50
+ examples/i18n/en-lol/lib/belly.rb
51
+ examples/i18n/en/Rakefile
52
+ examples/i18n/en/features/addition.feature
53
+ examples/i18n/en/features/division.feature
54
+ examples/i18n/en/features/step_definitons/calculator_steps.rb
55
+ examples/i18n/en/lib/calculator.rb
56
+ examples/i18n/es/Rakefile
57
+ examples/i18n/es/features/adicion.feature
58
+ examples/i18n/es/features/step_definitons/calculador_steps.rb
59
+ examples/i18n/es/lib/calculador.rb
60
+ examples/i18n/et/Rakefile
61
+ examples/i18n/et/features/jagamine.feature
62
+ examples/i18n/et/features/liitmine.feature
63
+ examples/i18n/et/features/step_definitions/kalkulaator_steps.rb
64
+ examples/i18n/et/lib/kalkulaator.rb
65
+ examples/i18n/fi/Rakefile
66
+ examples/i18n/fi/features/jakolasku.feature
67
+ examples/i18n/fi/features/step_definitons/laskin_steps.rb
68
+ examples/i18n/fi/features/yhteenlasku.feature
69
+ examples/i18n/fi/lib/laskin.rb
70
+ examples/i18n/fr/Rakefile
71
+ examples/i18n/fr/features/addition.feature
72
+ examples/i18n/fr/features/step_definitions/calculatrice_steps.rb
73
+ examples/i18n/fr/lib/calculatrice.rb
74
+ examples/i18n/he/Rakefile
75
+ examples/i18n/he/features/addition.feature
76
+ examples/i18n/he/features/division.feature
77
+ examples/i18n/he/features/step_definitons/calculator_steps.rb
78
+ examples/i18n/he/lib/calculator.rb
79
+ examples/i18n/hu/Rakefile
80
+ examples/i18n/hu/features/addition.feature
81
+ examples/i18n/hu/features/division.feature
82
+ examples/i18n/hu/features/step_definitons/calculator_steps.rb
83
+ examples/i18n/hu/lib/calculator.rb
84
+ examples/i18n/id/Rakefile
85
+ examples/i18n/id/features/addition.feature
86
+ examples/i18n/id/features/division.feature
87
+ examples/i18n/id/features/step_definitons/calculator_steps.rb
88
+ examples/i18n/id/lib/calculator.rb
89
+ examples/i18n/it/Rakefile
90
+ examples/i18n/it/features/somma.feature
91
+ examples/i18n/it/features/step_definitons/calcolatrice_steps.rb
92
+ examples/i18n/it/lib/calcolatrice.rb
93
+ examples/i18n/ja/Rakefile
94
+ examples/i18n/ja/features/addition.feature
95
+ examples/i18n/ja/features/division.feature
96
+ examples/i18n/ja/features/step_definitons/calculator_steps.rb
97
+ examples/i18n/ja/lib/calculator.rb
98
+ examples/i18n/ko/Rakefile
99
+ examples/i18n/ko/features/addition.feature
100
+ examples/i18n/ko/features/division.feature
101
+ examples/i18n/ko/features/step_definitons/calculator_steps.rb
102
+ examples/i18n/ko/lib/calculator.rb
103
+ examples/i18n/lt/Rakefile
104
+ examples/i18n/lt/features/addition.feature
105
+ examples/i18n/lt/features/division.feature
106
+ examples/i18n/lt/features/step_definitons/calculator_steps.rb
107
+ examples/i18n/lt/lib/calculator.rb
108
+ examples/i18n/lv/Rakefile
109
+ examples/i18n/lv/features/addition.feature
110
+ examples/i18n/lv/features/division.feature
111
+ examples/i18n/lv/features/step_definitons/calculator_steps.rb
112
+ examples/i18n/lv/lib/calculator.rb
113
+ examples/i18n/no/Rakefile
114
+ examples/i18n/no/features/step_definitons/kalkulator_steps.rb
115
+ examples/i18n/no/features/summering.feature
116
+ examples/i18n/no/features/support/env.rb
117
+ examples/i18n/no/lib/kalkulator.rb
118
+ examples/i18n/pl/Rakefile
119
+ examples/i18n/pl/features/addition.feature
120
+ examples/i18n/pl/features/division.feature
121
+ examples/i18n/pl/features/step_definitons/calculator_steps.rb
122
+ examples/i18n/pl/features/support/env.rb
123
+ examples/i18n/pl/lib/calculator.rb
124
+ examples/i18n/pt/Rakefile
125
+ examples/i18n/pt/features/adicao.feature
126
+ examples/i18n/pt/features/step_definitions/calculadora_steps.rb
127
+ examples/i18n/pt/features/support/env.rb
128
+ examples/i18n/pt/lib/calculadora.rb
129
+ examples/i18n/ro/Rakefile
130
+ examples/i18n/ro/features/step_definitons/calculator_steps.rb
131
+ examples/i18n/ro/features/suma.feature
132
+ examples/i18n/ro/lib/calculator.rb
133
+ examples/i18n/ru/Rakefile
134
+ examples/i18n/ru/features/addition.feature
135
+ examples/i18n/ru/features/consecutive_calculations.feature
136
+ examples/i18n/ru/features/division.feature
137
+ examples/i18n/ru/features/step_definitons/calculator_steps.rb
138
+ examples/i18n/ru/features/support/env.rb
139
+ examples/i18n/ru/features/support/world.rb
140
+ examples/i18n/ru/lib/calculator.rb
141
+ examples/i18n/se/Rakefile
142
+ examples/i18n/se/features/step_definitons/kalkulator_steps.rb
143
+ examples/i18n/se/features/summering.feature
144
+ examples/i18n/se/lib/kalkulator.rb
145
+ examples/i18n/sk/Rakefile
146
+ examples/i18n/sk/features/addition.feature
147
+ examples/i18n/sk/features/division.feature
148
+ examples/i18n/sk/features/step_definitons/calculator_steps.rb
149
+ examples/i18n/sk/lib/calculator.rb
150
+ examples/i18n/zh-CN/Rakefile
151
+ examples/i18n/zh-CN/features/addition.feature
152
+ examples/i18n/zh-CN/features/step_definitons/calculator_steps.rb
153
+ examples/i18n/zh-CN/lib/calculator.rb
154
+ examples/i18n/zh-TW/Rakefile
155
+ examples/i18n/zh-TW/features/addition.feature
156
+ examples/i18n/zh-TW/features/division.feature
157
+ examples/i18n/zh-TW/features/step_definitons/calculator_steps.rb
158
+ examples/i18n/zh-TW/lib/calculator.rb
159
+ examples/java/README.textile
160
+ examples/java/build.xml
161
+ examples/java/features/hello.feature
162
+ examples/java/features/step_definitons/hello_steps.rb
163
+ examples/java/features/step_definitons/tree_steps.rb
164
+ examples/java/features/tree.feature
165
+ examples/java/src/cucumber/demo/Hello.java
166
+ examples/junit/features/one_passing_one_failing.feature
167
+ examples/junit/features/pending.feature
168
+ examples/junit/features/step_definitions/steps.rb
169
+ examples/pure_java/README.textile
170
+ examples/selenium/Rakefile
171
+ examples/selenium/features/search.feature
172
+ examples/selenium/features/step_definitons/search_steps.rb
173
+ examples/selenium/features/support/env.rb
174
+ examples/selenium_webrat/Rakefile
175
+ examples/selenium_webrat/config.ru
176
+ examples/selenium_webrat/features/search.feature
177
+ examples/selenium_webrat/features/step_definitons/search_steps.rb
178
+ examples/selenium_webrat/features/support/env.rb
179
+ examples/self_test/README.textile
180
+ examples/self_test/Rakefile
181
+ examples/self_test/features/background/background_tagged_before_on_outline.feature
182
+ examples/self_test/features/background/background_with_name.feature
183
+ examples/self_test/features/background/failing_background.feature
184
+ examples/self_test/features/background/failing_background_after_success.feature
185
+ examples/self_test/features/background/multiline_args_background.feature
186
+ examples/self_test/features/background/passing_background.feature
187
+ examples/self_test/features/background/pending_background.feature
188
+ examples/self_test/features/background/scenario_outline_failing_background.feature
189
+ examples/self_test/features/background/scenario_outline_passing_background.feature
190
+ examples/self_test/features/call_undefined_step_from_step_def.feature
191
+ examples/self_test/features/failing_expectation.feature
192
+ examples/self_test/features/lots_of_undefined.feature
193
+ examples/self_test/features/multiline_name.feature
194
+ examples/self_test/features/outline_sample.feature
195
+ examples/self_test/features/sample.feature
196
+ examples/self_test/features/search_sample.feature
197
+ examples/self_test/features/step_definitions/sample_steps.rb
198
+ examples/self_test/features/support/env.rb
199
+ examples/self_test/features/tons_of_cukes.feature
200
+ examples/self_test/features/undefined_multiline_args.feature
201
+ examples/sinatra/Rakefile
202
+ examples/sinatra/app.rb
203
+ examples/sinatra/features/add.feature
204
+ examples/sinatra/features/step_definitions/add_steps.rb
205
+ examples/sinatra/features/support/env.rb
206
+ examples/sinatra/views/add.erb
207
+ examples/sinatra/views/layout.erb
208
+ examples/test_unit/Rakefile
209
+ examples/test_unit/features/step_definitions/test_unit_steps.rb
210
+ examples/test_unit/features/test_unit.feature
211
+ examples/tickets/Rakefile
212
+ examples/tickets/features/172.feature
213
+ examples/tickets/features/177/1.feature
214
+ examples/tickets/features/177/2.feature
215
+ examples/tickets/features/177/3.feature
216
+ examples/tickets/features/180.feature
217
+ examples/tickets/features/229/tagged_hooks.feature
218
+ examples/tickets/features/229/tagged_hooks.rb
219
+ examples/tickets/features/236.feature
220
+ examples/tickets/features/241.feature
221
+ examples/tickets/features/246.feature
222
+ examples/tickets/features/248.feature
223
+ examples/tickets/features/270/back.feature
224
+ examples/tickets/features/270/back.steps.rb
225
+ examples/tickets/features/272/hooks.feature
226
+ examples/tickets/features/272/hooks_steps.rb
227
+ examples/tickets/features/279/py_string_indent.feature
228
+ examples/tickets/features/279/py_string_indent.steps.rb
229
+ examples/tickets/features/279/wrong.feature_
230
+ examples/tickets/features/301/filter_background_tagged_hooks.feature
231
+ examples/tickets/features/301/filter_background_tagged_hooks_steps.rb
232
+ examples/tickets/features/306/only_background.feature
233
+ examples/tickets/features/lib/eatting_machine.rb
234
+ examples/tickets/features/lib/pantry.rb
235
+ examples/tickets/features/scenario_outline.feature
236
+ examples/tickets/features/step_definitons/246_steps.rb
237
+ examples/tickets/features/step_definitons/248_steps.rb
238
+ examples/tickets/features/step_definitons/scenario_outline_steps.rb
239
+ examples/tickets/features/step_definitons/tickets_steps.rb
240
+ examples/tickets/features/tickets.feature
241
+ examples/watir/README.textile
242
+ examples/watir/Rakefile
243
+ examples/watir/features/search.feature
244
+ examples/watir/features/step_definitons/search_steps.rb
245
+ examples/watir/features/support/env.rb
246
+ features/after_block_exceptions.feature
247
+ features/after_step_block_exceptions.feature
248
+ features/background.feature
249
+ features/cucumber_cli.feature
250
+ features/cucumber_cli_diff_disabled.feature
251
+ features/cucumber_cli_outlines.feature
252
+ features/custom_formatter.feature
253
+ features/drb_server_integration.feature
254
+ features/exclude_files.feature
255
+ features/expand.feature
256
+ features/html_formatter.feature
257
+ features/html_formatter/a.html
258
+ features/junit_formatter.feature
259
+ features/multiline_names.feature
260
+ features/rake_task.feature
261
+ features/report_called_undefined_steps.feature
262
+ features/snippet.feature
263
+ features/step_definitions/cucumber_steps.rb
264
+ features/step_definitions/extra_steps.rb
265
+ features/support/env.rb
266
+ features/usage.feature
267
+ features/work_in_progress.feature
268
+ gem_tasks/deployment.rake
269
+ gem_tasks/environment.rake
270
+ gem_tasks/features.rake
271
+ gem_tasks/fix_cr_lf.rake
272
+ gem_tasks/flog.rake
273
+ gem_tasks/gemspec.rake
274
+ gem_tasks/rspec.rake
275
+ gem_tasks/sass.rake
276
+ gem_tasks/yard.rake
277
+ lib/autotest/cucumber.rb
278
+ lib/autotest/cucumber_mixin.rb
279
+ lib/autotest/cucumber_rails.rb
280
+ lib/autotest/cucumber_rails_rspec.rb
281
+ lib/autotest/cucumber_rspec.rb
282
+ lib/autotest/discover.rb
283
+ lib/cucumber.rb
284
+ lib/cucumber/ast.rb
285
+ lib/cucumber/ast/background.rb
286
+ lib/cucumber/ast/comment.rb
287
+ lib/cucumber/ast/examples.rb
288
+ lib/cucumber/ast/feature.rb
289
+ lib/cucumber/ast/feature_element.rb
290
+ lib/cucumber/ast/features.rb
291
+ lib/cucumber/ast/outline_table.rb
292
+ lib/cucumber/ast/py_string.rb
293
+ lib/cucumber/ast/scenario.rb
294
+ lib/cucumber/ast/scenario_outline.rb
295
+ lib/cucumber/ast/step.rb
296
+ lib/cucumber/ast/step_collection.rb
297
+ lib/cucumber/ast/step_invocation.rb
298
+ lib/cucumber/ast/table.rb
299
+ lib/cucumber/ast/tags.rb
300
+ lib/cucumber/ast/visitor.rb
301
+ lib/cucumber/broadcaster.rb
302
+ lib/cucumber/cli/configuration.rb
303
+ lib/cucumber/cli/drb_client.rb
304
+ lib/cucumber/cli/language_help_formatter.rb
305
+ lib/cucumber/cli/main.rb
306
+ lib/cucumber/core_ext/exception.rb
307
+ lib/cucumber/core_ext/instance_exec.rb
308
+ lib/cucumber/core_ext/proc.rb
309
+ lib/cucumber/core_ext/string.rb
310
+ lib/cucumber/formatter/ansicolor.rb
311
+ lib/cucumber/formatter/color_io.rb
312
+ lib/cucumber/formatter/console.rb
313
+ lib/cucumber/formatter/cucumber.css
314
+ lib/cucumber/formatter/cucumber.sass
315
+ lib/cucumber/formatter/duration.rb
316
+ lib/cucumber/formatter/html.rb
317
+ lib/cucumber/formatter/junit.rb
318
+ lib/cucumber/formatter/pretty.rb
319
+ lib/cucumber/formatter/profile.rb
320
+ lib/cucumber/formatter/progress.rb
321
+ lib/cucumber/formatter/rerun.rb
322
+ lib/cucumber/formatter/tag_cloud.rb
323
+ lib/cucumber/formatter/unicode.rb
324
+ lib/cucumber/formatter/usage.rb
325
+ lib/cucumber/formatters/unicode.rb
326
+ lib/cucumber/languages.yml
327
+ lib/cucumber/parser.rb
328
+ lib/cucumber/parser/feature.rb
329
+ lib/cucumber/parser/feature.tt
330
+ lib/cucumber/parser/i18n.tt
331
+ lib/cucumber/parser/table.rb
332
+ lib/cucumber/parser/table.tt
333
+ lib/cucumber/parser/treetop_ext.rb
334
+ lib/cucumber/platform.rb
335
+ lib/cucumber/rails/rspec.rb
336
+ lib/cucumber/rails/world.rb
337
+ lib/cucumber/rake/task.rb
338
+ lib/cucumber/rspec_neuter.rb
339
+ lib/cucumber/step_definition.rb
340
+ lib/cucumber/step_match.rb
341
+ lib/cucumber/step_mother.rb
342
+ lib/cucumber/version.rb
343
+ lib/cucumber/world.rb
344
+ rails_generators/cucumber/USAGE
345
+ rails_generators/cucumber/cucumber_generator.rb
346
+ rails_generators/cucumber/templates/cucumber
347
+ rails_generators/cucumber/templates/cucumber.rake
348
+ rails_generators/cucumber/templates/cucumber_environment.rb
349
+ rails_generators/cucumber/templates/env.rb
350
+ rails_generators/cucumber/templates/spork_env.rb
351
+ rails_generators/cucumber/templates/en/paths.rb
352
+ rails_generators/cucumber/templates/en/webrat_steps.rb
353
+ rails_generators/cucumber/templates/de/paths.rb
354
+ rails_generators/cucumber/templates/de/webrat_steps.rb
355
+ rails_generators/feature/USAGE
356
+ rails_generators/feature/feature_generator.rb
357
+ rails_generators/feature/templates/feature.erb
358
+ rails_generators/feature/templates/steps.erb
359
+ spec/cucumber/ast/background_spec.rb
360
+ spec/cucumber/ast/feature_element_spec.rb
361
+ spec/cucumber/ast/feature_factory.rb
362
+ spec/cucumber/ast/feature_spec.rb
363
+ spec/cucumber/ast/py_string_spec.rb
364
+ spec/cucumber/ast/scenario_outline_spec.rb
365
+ spec/cucumber/ast/scenario_spec.rb
366
+ spec/cucumber/ast/step_collection_spec.rb
367
+ spec/cucumber/ast/step_spec.rb
368
+ spec/cucumber/ast/table_spec.rb
369
+ spec/cucumber/ast/visitor_spec.rb
370
+ spec/cucumber/broadcaster_spec.rb
371
+ spec/cucumber/cli/configuration_spec.rb
372
+ spec/cucumber/cli/drb_client_spec.rb
373
+ spec/cucumber/cli/main_spec.rb
374
+ spec/cucumber/core_ext/proc_spec.rb
375
+ spec/cucumber/core_ext/string_spec.rb
376
+ spec/cucumber/formatter/ansicolor_spec.rb
377
+ spec/cucumber/formatter/color_io_spec.rb
378
+ spec/cucumber/formatter/duration_spec.rb
379
+ spec/cucumber/formatter/progress_spec.rb
380
+ spec/cucumber/parser/feature_parser_spec.rb
381
+ spec/cucumber/parser/table_parser_spec.rb
382
+ spec/cucumber/rails/stubs/mini_rails.rb
383
+ spec/cucumber/rails/stubs/test_help.rb
384
+ spec/cucumber/rails/world_spec.rb
385
+ spec/cucumber/sell_cucumbers.feature
386
+ spec/cucumber/step_definition_spec.rb
387
+ spec/cucumber/step_mother_spec.rb
388
+ spec/cucumber/treetop_parser/empty_feature.feature
389
+ spec/cucumber/treetop_parser/empty_scenario.feature
390
+ spec/cucumber/treetop_parser/empty_scenario_outline.feature
391
+ spec/cucumber/treetop_parser/fit_scenario.feature
392
+ spec/cucumber/treetop_parser/given_scenario.feature
393
+ spec/cucumber/treetop_parser/invalid_scenario_outlines.feature
394
+ spec/cucumber/treetop_parser/multiline_steps.feature
395
+ spec/cucumber/treetop_parser/multiple_tables.feature
396
+ spec/cucumber/treetop_parser/scenario_outline.feature
397
+ spec/cucumber/treetop_parser/spaces.feature
398
+ spec/cucumber/treetop_parser/test_dos.feature
399
+ spec/cucumber/treetop_parser/with_comments.feature
400
+ spec/cucumber/treetop_parser/with_tags.feature
401
+ spec/cucumber/world/pending_spec.rb
402
+ spec/spec.opts
403
+ spec/spec_helper.rb
data/cucumber.yml CHANGED
@@ -1,3 +1,4 @@
1
- default: --format progress pretty features --tags ~@pending
2
- html: --format progress html --out=doc/features_report.html features
3
- performance: --format profile features
1
+ default: --format progress features --tags ~@proposed,~@in_progress
2
+ html: --format progress features html --out=doc/features_report.html --tags ~@proposed,~@in_progress
3
+ performance: --format profile features --tags ~@proposed,~@in_progress
4
+ wip: --tags @in_progress --wip features
@@ -1,9 +1,9 @@
1
- Feature: DOS line endings
2
- In order to have less bug reports
3
- As a windows developer
4
- I want to write features with DOS line endigs
5
-
6
- Scenario: Just lots of DOS
7
- Given I am on DOS
8
- And Any version of Windows is really just DOS
9
- Then Windows still sucks
1
+ Feature: DOS line endings
2
+ In order to have less bug reports
3
+ As a windows developer
4
+ I want to write features with DOS line endigs
5
+
6
+ Scenario: Just lots of DOS
7
+ Given I am on DOS
8
+ And Any version of Windows is really just DOS
9
+ Then Windows still sucks
@@ -0,0 +1,114 @@
1
+ Feature: DRb Server Integration
2
+ To prevent waiting for Rails and other large Ruby applications to load their environments
3
+ for each feature run Cucumber ships with a DRb client that can speak to a server which
4
+ loads up the environment only once.
5
+
6
+ Background: App with Spork support
7
+ Spork is a gem that has a DRb server and the scenarios below use illustarate how to use it.
8
+ However, any DRb server that adheres to the protocol that the client expects would work.
9
+
10
+ Given a standard Cucumber project directory structure
11
+ And a file named "features/support/env.rb" with:
12
+ """
13
+ require 'rubygems'
14
+ require 'spork'
15
+
16
+ Spork.prefork do
17
+ puts "I'm loading all the heavy stuff..."
18
+ end
19
+
20
+ Spork.each_run do
21
+ puts "I'm loading the stuff just for this run..."
22
+ end
23
+ """
24
+ And a file named "features/sample.feature" with:
25
+ """
26
+ Feature: Sample
27
+ Scenario: this is a test
28
+ Given I am just testing stuff
29
+ """
30
+ And a file named "features/step_definitions/all_your_steps_are_belong_to_us.rb" with:
31
+ """
32
+ Given /^I am just testing stuff$/ do
33
+ # no-op
34
+ end
35
+ """
36
+
37
+ Scenario: Feature Passing with --drb flag
38
+ Given I am running "spork cuc" in the background
39
+
40
+ When I run cucumber features/sample.feature --drb
41
+ Then it should pass
42
+ And the output should contain
43
+ """
44
+ 1 step (1 passed)
45
+ """
46
+ And the output should contain
47
+ """
48
+ I'm loading the stuff just for this run...
49
+ """
50
+ And the output should not contain
51
+ """
52
+ I'm loading all the heavy stuff...
53
+ """
54
+
55
+ Scenario: Feature Failing with --drb flag
56
+ Given a file named "features/step_definitions/all_your_steps_are_belong_to_us.rb" with:
57
+ """
58
+ Given /^I am just testing stuff$/ do
59
+ raise "Oh noes!"
60
+ end
61
+ """
62
+ And I am running "spork cuc" in the background
63
+
64
+ When I run cucumber features/sample.feature --drb
65
+ Then it should fail
66
+ And the output should contain
67
+ """
68
+ 1 step (1 failed)
69
+ """
70
+ And the output should contain
71
+ """
72
+ I'm loading the stuff just for this run...
73
+ """
74
+ And the output should not contain
75
+ """
76
+ I'm loading all the heavy stuff...
77
+ """
78
+
79
+ Scenario: Feature Run with --drb flag with no DRb server running
80
+ Cucumber will fall back on running the features locally in this case.
81
+
82
+ Given I am not running a DRb server in the background
83
+
84
+ When I run cucumber features/sample.feature --drb
85
+ Then it should pass
86
+ And STDERR should match
87
+ """
88
+ No DRb server is running. Running features locally:
89
+ """
90
+ And the output should contain
91
+ """
92
+ I'm loading all the heavy stuff...
93
+ I'm loading the stuff just for this run...
94
+ """
95
+
96
+ Scenario: Feature Run with --drb flag *defined in a profile* with no DRb server running
97
+
98
+ Given I am not running a DRb server in the background
99
+ And the following profile is defined:
100
+ """
101
+ server: --drb features
102
+ """
103
+
104
+ When I run cucumber --profile server
105
+ Then it should pass
106
+ And STDERR should match
107
+ """
108
+ No DRb server is running. Running features locally:
109
+ """
110
+ And the output should contain
111
+ """
112
+ I'm loading all the heavy stuff...
113
+ I'm loading the stuff just for this run...
114
+ """