Sha256: 3f42d840a91edac4727ffedfef5805f1831eace1d6069b7416cb08b8c9926449

Contents?: true

Size: 1.33 KB

Versions: 6

Compression:

Stored size: 1.33 KB

Contents

require(File.join(File.dirname(__FILE__), '..', 'date_spec_helper'))

describe "Date#commercial" do
  it "Creates a Date for the friday in the year and week given" do
    d = Date.commercial(2000, 1)
    d.year.should  == 2000
    d.month.should == 1
    d.day.should   == 7
    d.cwday.should == 5
  end

  it "Creates a Date for the correct day given the year, week and day number" do
    d = Date.commercial(2004, 1, 1)
    d.year.should   == 2003
    d.month.should  == 12
    d.day.should    == 29
    d.cwday.should  == 1
    d.cweek.should  == 1
    d.cwyear.should == 2004
  end

  it "creates only Date objects for valid weeks" do
    lambda { Date.commercial(2004, 53, 1) }.should_not raise_error(ArgumentError)
    lambda { Date.commercial(2004, 53, 0) }.should raise_error(ArgumentError)
    lambda { Date.commercial(2004, 53, 8) }.should raise_error(ArgumentError)
    lambda { Date.commercial(2004, 54, 1) }.should raise_error(ArgumentError)
    lambda { Date.commercial(2004,  0, 1) }.should raise_error(ArgumentError)

    lambda { Date.commercial(2003, 52, 1) }.should_not raise_error(ArgumentError)
    lambda { Date.commercial(2003, 53, 1) }.should raise_error(ArgumentError)
    lambda { Date.commercial(2003, 52, 0) }.should raise_error(ArgumentError)
    lambda { Date.commercial(2003, 52, 8) }.should raise_error(ArgumentError)
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
third_base-1.3.0 spec/date/commercial_spec.rb
third_base-1.2.0 spec/date/commercial_spec.rb
third_base-1.1.1 spec/date/commercial_spec.rb
third_base-1.1.0 spec/date/commercial_spec.rb
third_base-1.0.1 spec/date/commercial_spec.rb
third_base-1.0.0 spec/date/commercial_spec.rb