Changeset 3645
- Timestamp:
- 12/28/07 01:39:24 (11 months ago)
- Location:
- lang/ruby/date_time-duration
- Files:
-
- 2 modified
-
lib/date_time/duration.rb (modified) (2 diffs)
-
spec/date_time-duration_spec.rb (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/ruby/date_time-duration/lib/date_time/duration.rb
r3644 r3645 7 7 class DateTime::Duration 8 8 def initialize from, to 9 @f rom = from10 @ to = to9 @flag = ( from <= to ) ? 1 : -1 10 @from, @to = ( from <= to ) ? [from, to] : [ to, from ] 11 11 @duration = to - from 12 12 end … … 35 35 # This method return not Rational but Fixnum. 36 36 def months 37 i = 0 38 while ( ( @from >> i ) <= @to ) do 39 i += 1 37 if @months.nil? 38 i = 0 39 while ( ( @from >> i ) <= @to ) do 40 i += 1 41 end 42 43 @months = ( @flag * ( i - 1 ) ) 40 44 end 41 42 return i - 145 46 return @months 43 47 end 44 48 -
lang/ruby/date_time-duration/spec/date_time-duration_spec.rb
r3644 r3645 14 14 @dd3 = DateTime::Duration.new(@birth, @birth_after_a_year_before_one_day) 15 15 @dd4 = DateTime::Duration.new(@birth, @birth_after_a_year ) 16 @dd5 = DateTime::Duration.new(@birth_after_a_year, @birth) 16 17 end 17 18 … … 21 22 @dd3.days.to_i.should == 364 22 23 @dd4.days.to_i.should == 365 24 @dd5.days.to_i.should == -365 23 25 end 24 26 … … 28 30 @dd3.months.to_i.should == 11 29 31 @dd4.months.to_i.should == 12 32 @dd5.months.to_i.should == -12 30 33 end 31 34 … … 35 38 @dd3.years.to_i.should == 0 36 39 @dd4.years.to_i.should == 1 40 @dd5.years.to_i.should == -1 37 41 end 38 42
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)