Changeset 3658

Show
Ignore:
Timestamp:
12/28/07 09:20:50 (11 months ago)
Author:
walf443
Message:

lang/ruby/date_time-smart: support DateTime::Duration.new2 in #add, #subtract.

Location:
lang/ruby/date_time-smart
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • lang/ruby/date_time-smart/lib/date_time/smart.rb

    r3655 r3658  
    1414      end 
    1515 
     16      def add n 
     17        case n 
     18        when Hash 
     19          return self + DateTime::Duration.new2(self, n) 
     20        end 
     21        __send__ :+, n 
     22      end 
     23 
    1624      def -(n) 
    1725        case n 
     
    2230        end 
    2331        return super 
     32      end 
     33 
     34      def subtract n 
     35        case n 
     36        when Hash 
     37          return self - DateTime::Duration.new2(self, n) 
     38        end 
     39        __send__ :-, n 
    2440      end 
    2541    end 
  • lang/ruby/date_time-smart/spec/date_time-smart_spec.rb

    r3655 r3658  
    4848    ( @birth_after_a_year_before_a_day - @dd ).should == @birth 
    4949  end 
     50 
     51  it %{should add with DateTime::Duration.new2} do 
     52    @birth.add(:days => 364).should == @birth_after_a_year_before_a_day 
     53    @birth.add(:months => 11, :days => 30).should == @birth_after_a_year_before_a_day 
     54    @birth.add(:years => 1).subtract(:days => 1).should == @birth_after_a_year_before_a_day 
     55  end 
    5056end