From acedf071d1539b4524c82ddca9fc7a1e16671433 Mon Sep 17 00:00:00 2001 From: Jim Myhrberg Date: Sun, 13 Mar 2011 19:51:04 +0000 Subject: [PATCH] improved options passed into Finder object, :depth option is not needed if :interval is set to a depth value instead of true --- lib/redistat/finder/date_set.rb | 4 ++++ spec/finder/date_set_spec.rb | 2 ++ 2 files changed, 6 insertions(+) diff --git a/lib/redistat/finder/date_set.rb b/lib/redistat/finder/date_set.rb index 0bb805b..43bf961 100644 --- a/lib/redistat/finder/date_set.rb +++ b/lib/redistat/finder/date_set.rb @@ -9,6 +9,10 @@ module Redistat end def find_date_sets(start_date, end_date, depth = nil, interval = false) + if depth.nil? && interval.is_a?(Symbol) + depth = interval + interval = true + end start_date = start_date.to_time if start_date.is_a?(::Date) end_date = end_date.to_time if end_date.is_a?(::Date) if !interval diff --git a/spec/finder/date_set_spec.rb b/spec/finder/date_set_spec.rb index 0c1585c..2439e6b 100644 --- a/spec/finder/date_set_spec.rb +++ b/spec/finder/date_set_spec.rb @@ -28,11 +28,13 @@ describe Redistat::Finder::DateSet do result = Redistat::Finder::DateSet.new.find_date_sets(t_start, t_end, :hour, true) result[0][:add].should == ["2010082818", "2010082819", "2010082820", "2010082821", "2010082822"] result[0][:rem].should == [] + result.should == Redistat::Finder::DateSet.new(t_start, t_end, nil, :hour) t_end = t_start + 4.days result = Redistat::Finder::DateSet.new.find_date_sets(t_start, t_end, :day, true) result[0][:add].should == ["20100828", "20100829", "20100830", "20100831", "20100901"] result[0][:rem].should == [] + result.should == Redistat::Finder::DateSet.new(t_start, t_end, nil, :day) end it "should find start keys properly" do