require 'test/unit' require 'webget_ramp' class DateTest < Test::Unit::TestCase def test_weekday # Start on Monday, January 1, 2007 assert( Date.new(2007,1,1).weekday?) assert( Date.new(2007,1,2).weekday?) assert( Date.new(2007,1,3).weekday?) assert( Date.new(2007,1,4).weekday?) assert( Date.new(2007,1,5).weekday?) assert(!Date.new(2007,1,6).weekday?) assert(!Date.new(2007,1,7).weekday?) assert( Date.new(2007,1,8).weekday?) end def test_weekend # Start on Monday, January 1, 2007 assert(!Date.new(2007,1,1).weekend?) assert(!Date.new(2007,1,2).weekend?) assert(!Date.new(2007,1,3).weekend?) assert(!Date.new(2007,1,4).weekend?) assert(!Date.new(2007,1,5).weekend?) assert( Date.new(2007,1,6).weekend?) assert( Date.new(2007,1,7).weekend?) assert(!Date.new(2007,1,8).weekend?) end def test_to_sql assert('2007-12-31',Date.new(2008,12,31)) end # for test_age_years and test_age_days BIRTHDATE = Date.new(1980,10,31) VALENTINES = Date.new(2008,02,14) HALLOWEEN = Date.new(2008,10,31) NEW_YEARS_EVE = Date.new(2008,12,31) def test_age_years assert_equal(27,BIRTHDATE.age_years(VALENTINES), '< birthday') assert_equal(28,BIRTHDATE.age_years(HALLOWEEN), '= birthday') assert_equal(28,BIRTHDATE.age_years(NEW_YEARS_EVE), '> birthday') end def test_age_days assert_equal( 9967,BIRTHDATE.age_days(VALENTINES), '< birthday') assert_equal(10227,BIRTHDATE.age_days(HALLOWEEN), '= birthday') assert_equal(10288,BIRTHDATE.age_days(NEW_YEARS_EVE), '> birthday') end end