aslakhellesoy-cucumber 0.0.1 → 0.1.1

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 (70) hide show
  1. data/License.txt +1 -1
  2. data/Manifest.txt +38 -24
  3. data/README.textile +31 -0
  4. data/TODO.txt +30 -0
  5. data/config/hoe.rb +6 -7
  6. data/examples/java/README.textile +52 -0
  7. data/examples/java/Rakefile +12 -0
  8. data/examples/java/features/hello.feature +11 -0
  9. data/examples/java/features/steps/hello_steps.rb +25 -0
  10. data/examples/java/features/steps/tree_steps.rb +14 -0
  11. data/examples/java/features/tree.feature +9 -0
  12. data/examples/java/src/cucumber/demo/Hello.java +15 -0
  13. data/examples/pure_ruby/Rakefile +6 -0
  14. data/examples/pure_ruby/features/addition.rb +23 -0
  15. data/examples/pure_ruby/{steps → features/steps}/addition_steps.rb +0 -0
  16. data/examples/simple_norwegian/Rakefile +6 -0
  17. data/examples/simple_norwegian/{steg → features/steps}/matte_steg.rb.rb +0 -0
  18. data/examples/simple_norwegian/{summering.story → features/summering.feature} +4 -1
  19. data/examples/web/Rakefile +6 -0
  20. data/examples/web/features/search.feature +9 -0
  21. data/examples/web/features/steps/stories_steps.rb +51 -0
  22. data/gem_tasks/treetop.rake +8 -14
  23. data/lib/cucumber.rb +10 -3
  24. data/lib/cucumber/cli.rb +29 -19
  25. data/lib/cucumber/core_ext/proc.rb +13 -5
  26. data/lib/cucumber/executor.rb +8 -10
  27. data/lib/cucumber/formatters/ansicolor.rb +2 -2
  28. data/lib/cucumber/formatters/html_formatter.rb +6 -6
  29. data/lib/cucumber/formatters/pretty_formatter.rb +68 -15
  30. data/lib/cucumber/{parser/languages.yml → languages.yml} +0 -4
  31. data/lib/cucumber/rake/task.rb +24 -26
  32. data/lib/cucumber/step_mother.rb +3 -3
  33. data/lib/cucumber/tree.rb +8 -117
  34. data/lib/cucumber/tree/feature.rb +45 -0
  35. data/lib/cucumber/tree/features.rb +21 -0
  36. data/lib/cucumber/tree/scenario.rb +79 -0
  37. data/lib/cucumber/tree/step.rb +133 -0
  38. data/lib/cucumber/tree/table.rb +26 -0
  39. data/lib/cucumber/{parser → tree}/top_down_visitor.rb +5 -8
  40. data/lib/cucumber/treetop_parser/feature.treetop.erb +98 -0
  41. data/lib/cucumber/treetop_parser/feature_en.rb +923 -0
  42. data/lib/cucumber/treetop_parser/feature_fr.rb +923 -0
  43. data/lib/cucumber/treetop_parser/feature_no.rb +923 -0
  44. data/lib/cucumber/treetop_parser/feature_parser.rb +32 -0
  45. data/lib/cucumber/treetop_parser/feature_pt.rb +923 -0
  46. data/lib/cucumber/version.rb +2 -2
  47. data/script/console +1 -1
  48. data/spec/cucumber/executor_spec.rb +9 -9
  49. data/spec/cucumber/formatters/{stories.html → features.html} +9 -9
  50. data/spec/cucumber/formatters/html_formatter_spec.rb +11 -11
  51. data/spec/cucumber/{sell_cucumbers.story → sell_cucumbers.feature} +1 -1
  52. data/spec/spec_helper.rb +8 -1
  53. metadata +61 -30
  54. data/README.txt +0 -78
  55. data/examples/Rakefile +0 -7
  56. data/examples/pure_ruby/addition.rb +0 -16
  57. data/examples/simple/addition.story +0 -12
  58. data/examples/simple/division.story +0 -17
  59. data/examples/simple/steps/addition_steps.rb +0 -43
  60. data/examples/web/run_stories.story +0 -10
  61. data/examples/web/steps/stories_steps.rb +0 -39
  62. data/lib/cucumber/parser/nodes.rb +0 -88
  63. data/lib/cucumber/parser/story_parser.rb +0 -13
  64. data/lib/cucumber/parser/story_parser.treetop.erb +0 -41
  65. data/lib/cucumber/parser/story_parser_en.rb +0 -554
  66. data/lib/cucumber/parser/story_parser_fr.rb +0 -554
  67. data/lib/cucumber/parser/story_parser_no.rb +0 -554
  68. data/lib/cucumber/parser/story_parser_pt.rb +0 -554
  69. data/lib/cucumber/ruby_tree.rb +0 -14
  70. data/lib/cucumber/ruby_tree/nodes.rb +0 -68
@@ -1,14 +0,0 @@
1
- require 'cucumber/ruby_tree/nodes'
2
-
3
- module Cucumber
4
- # Classes in this module implement the pure ruby stories in Cucumber.
5
- module RubyTree
6
- def Story(header, narrative, &proc)
7
- stories << RubyStory.new(header, narrative, &proc)
8
- end
9
-
10
- def stories #:nodoc:
11
- @stories ||= Tree::Stories.new
12
- end
13
- end
14
- end
@@ -1,68 +0,0 @@
1
- require 'cucumber/tree'
2
-
3
- module Cucumber
4
- module RubyTree
5
- class RubyStory
6
- include Tree::Story
7
-
8
- def initialize(header, narrative, &proc)
9
- @header, @narrative = header, narrative
10
- @scenarios = []
11
- instance_eval(&proc)
12
- end
13
-
14
- def Scenario(name, &proc)
15
- @scenarios << RubyScenario.new(name, &proc)
16
- end
17
-
18
- protected
19
-
20
- attr_reader :header, :narrative, :scenarios
21
-
22
- end
23
-
24
- class RubyScenario
25
- include Tree::Scenario
26
-
27
- def initialize(name, &proc)
28
- @name = name
29
- @steps = []
30
- @line = *caller[2].split(':')[1].to_i
31
- instance_eval(&proc)
32
- end
33
-
34
- def Given(name)
35
- @steps << RubyStep.new('Given', name)
36
- end
37
-
38
- def When(name)
39
- @steps << RubyStep.new('When', name)
40
- end
41
-
42
- def Then(name)
43
- @steps << RubyStep.new('Then', name)
44
- end
45
-
46
- def And(name)
47
- @steps << RubyStep.new('And', name)
48
- end
49
-
50
- attr_reader :name, :steps, :line
51
-
52
- end
53
-
54
- class RubyStep
55
- include Tree::Step
56
- attr_accessor :error
57
-
58
- def initialize(keyword, name)
59
- @keyword, @name = keyword, name
60
- @file, @line, _ = *caller[2].split(':')
61
- end
62
-
63
- attr_reader :keyword, :name, :file, :line
64
-
65
- end
66
- end
67
- end
68
-