spec/wally/search_features_spec.rb in wally-0.0.33 vs spec/wally/search_features_spec.rb in wally-0.0.34
- old
+ new
@@ -1,46 +1,39 @@
require File.join(File.dirname(__FILE__), "..", "spec_helper")
module Wally
describe SearchFeatures do
after do
- Feature.delete_all
+ Project.delete_all
end
- def create_feature path, content
- feature = Feature.new
- feature.path = path
- feature.gherkin = ParsesFeatures.new.parse(content)
- feature.save
- end
-
it "finds features containing text" do
- create_feature("sample1.feature", "Feature: Bla")
- create_feature("sample2.feature", "Feature: Meh")
+ create_feature("project", "sample1.feature", "Feature: Bla")
+ create_feature("project", "sample2.feature", "Feature: Meh")
- results = SearchFeatures.new(Feature).find(:query => "Meh")
+ results = SearchFeatures.new(project("project")).find(:query => "Meh")
results.items.size.should == 1
results.items.first.object.feature["name"].should == "Meh"
end
it "finds features by narrative" do
- create_feature("sample1.feature", "Feature: bla\nIn order to bananas")
- results = SearchFeatures.new(Feature).find(:query => "bananas")
+ create_feature("project", "sample1.feature", "Feature: bla\nIn order to bananas")
+ results = SearchFeatures.new(project("project")).find(:query => "bananas")
results.items.size.should == 1
results.items.first.object.feature["name"].should == "bla"
end
it "has a suggestion" do
- create_feature("sample1.feature", "Feature: Monkeys")
- results = SearchFeatures.new(Feature).find(:query => "mnkeys")
+ create_feature("project", "sample1.feature", "Feature: Monkeys")
+ results = SearchFeatures.new(project("project")).find(:query => "mnkeys")
results.suggestion.should == "Monkeys"
end
it "has a suggestion only when it's different from the search query" do
- create_feature("sample1.feature", "Feature: monkeys\nScenario: feature")
- create_feature("sample2.feature", "Feature: dogs\nScenario: Sample scenario")
- results = SearchFeatures.new(Feature).find(:query => "feature")
+ create_feature("project", "sample1.feature", "Feature: monkeys\nScenario: feature")
+ create_feature("project", "sample2.feature", "Feature: dogs\nScenario: Sample scenario")
+ results = SearchFeatures.new(project("project")).find(:query => "feature")
results.suggestion.should be_nil
end
context "feature with multiple scenarios" do
before do
@@ -49,35 +42,35 @@
Scenario: Sample Scenario
Scenario: Matched Scenario
Given I eat some doughnuts
Scenario: Another Scenario
CONTENTS
- create_feature("sample1.feature", contents)
+ create_feature("project", "sample1.feature", contents)
end
it "finds scenarios containing text" do
- results = SearchFeatures.new(Feature).find(:query => "MATCHED")
+ results = SearchFeatures.new(project("project")).find(:query => "MATCHED")
results.items.size.should == 1
results.items.first.object.scenario["name"].should == "Matched Scenario"
end
it "finds scenario steps" do
- results = SearchFeatures.new(Feature).find(:query => "DOUGHNUTS")
+ results = SearchFeatures.new(project("project")).find(:query => "DOUGHNUTS")
results.items.size.should == 1
results.items.first.object.scenario["name"].should == "Matched Scenario"
end
end
context "feature with tags" do
it "finds features by tag" do
- create_feature("example-feature.feature", "@tag_name\nFeature: Example Feature")
- results = SearchFeatures.new(Feature).find(:query => "@tag_NAME")
+ create_feature("project", "example-feature.feature", "@tag_name\nFeature: Example Feature")
+ results = SearchFeatures.new(project("project")).find(:query => "@tag_NAME")
results.items.first.object.feature["name"].should == "Example Feature"
end
it "finds scenarios by tag" do
- create_feature("example-feature.feature", "Feature: Example Feature\n@scenario_tag\nScenario: Example Scenario")
- results = SearchFeatures.new(Feature).find(:query => "@scenario_TAG")
+ create_feature("project", "example-feature.feature", "Feature: Example Feature\n@scenario_tag\nScenario: Example Scenario")
+ results = SearchFeatures.new(project("project")).find(:query => "@scenario_TAG")
results.items.first.object.scenario["name"].should == "Example Scenario"
end
end
end
end