Class: CukePages::FeatureParser

Inherits:
Object
  • Object
show all
Defined in:
lib/cukepages/feature_parser.rb

Instance Method Summary collapse

Constructor Details

#initialize(feature_path) ⇒ FeatureParser

Returns a new instance of FeatureParser.



23
24
25
26
27
28
29
# File 'lib/cukepages/feature_parser.rb', line 23

def initialize(feature_path)
	@path = feature_path
	@feature_text = File.open(@path) { |f|
		f.read 
	}
	self
end

Instance Method Details

#parseObject



31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/cukepages/feature_parser.rb', line 31

def parse
	feature = CukePages::Feature.new(filename, title)

	@feature_text.each_line { |line|
		if line_match = line.match(/^(\s*Scenario\s*:.*$)/)
			scenario_parts = @feature_text.partition(line_match[1])
			scenario = parse_scenario scenario_parts[1..-1]
			feature.scenarios << scenario 
		end
	}
	feature
end