evaluate_guardfile uses all groups if none specified #119

Merged
merged 2 commits into from Aug 14, 2011
View
@@ -104,7 +104,8 @@ def home_guardfile_path
end
def group(name, &guard_definition)
- guard_definition.call if guard_definition && (@@options[:group].empty? || @@options[:group].include?(name.to_s))
+ @groups = @@options[:group] || []
+ guard_definition.call if guard_definition && (@groups.empty? || @groups.include?(name.to_s))
end
def guard(name, options = {}, &watch_definition)
@@ -213,6 +213,11 @@
::Guard.should_receive(:add_guard).with('another', anything, {})
lambda { subject.evaluate_guardfile(:guardfile_contents => valid_guardfile_string, :group => ['x','y']) }.should_not raise_error
end
+ it "should evaluate all groups when no group option is specified" do
+ ::Guard.should_receive(:add_guard).with('test', anything, {}).twice
+ ::Guard.should_receive(:add_guard).with('another', anything, {}).twice
+ lambda { subject.evaluate_guardfile(:guardfile_contents => valid_guardfile_string) }.should_not raise_error
+ end
end
# TODO: not sure if each seperate quoting/call type needs its own test
@@ -8,9 +8,11 @@ def start
end
def record_results
+ noise = %r|\.sw.$| # don't fail specs due to editor swap files, etc.
+
@results = []
@listener.on_change do |files|
- @results += files
+ @results += files.reject { |f| f =~ noise }
end
end